服务器租用密钥登录设置

服务器租用密钥登录设置主要通过SSH密钥对实现安全访问,用户需先在本地生成SSH密钥对(公钥与私钥),将公钥添加到服务器的~/.ssh/authorized_keys文件中,随后,需禁用服务器SSH服务的密码登录功能,在/etc/ssh/sshd_config中设置PasswordAuthentication no并重启服务,配置完成后,使用私钥通过SSH客户端登录服务器,可避免密码泄露风险,建议设置私钥权限为600,禁用root直接登录,并定期更新密钥以增强安全性,此方法兼顾便捷性与安全性,适合长期服务器管理。

安全高效管理你的云端资源

在云计算时代,服务器租用已成为企业和个人部署网站、应用和服务的重要方式,服务器的安全管理始终是用户关注的核心问题,传统的密码登录方式存在易泄露、易被暴力破解的风险,而密钥登录(SSH密钥认证)因其高强度加密和便捷性,逐渐成为服务器安全管理的标配,本文将手把手教你如何通过密钥登录设置,为服务器构建更安全的访问通道。


为什么选择密钥登录?

  1. 安全性更高
    密钥登录通过非对称加密技术(如RSA、ECDSA算法),使用一对密钥(公钥和私钥)验证身份,私钥由用户本地保存,公钥则部署在服务器上,与密码相比,密钥的长度和复杂度远超普通密码,破解难度呈指数级上升。

  2. 防止暴力破解
    启用密钥登录后,可直接关闭服务器的密码登录功能,彻底杜绝因弱密码或自动化攻击导致的入侵风险。

  3. 自动化运维更便捷
    密钥登录支持无交互式认证,便于实现脚本自动化部署、远程命令执行等场景,减少人工操作的繁琐性。


生成SSH密钥对

SSH密钥对由公钥私钥组成,生成过程只需在本地计算机操作:

  1. 生成密钥对
    打开终端(Windows用户可使用Git Bash或PowerShell),输入以下命令:

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    • -t rsa:指定RSA算法(也可选择更安全的Ed25519算法)。
    • -b 4096:密钥长度(推荐4096位以上)。
    • -C:添加注释(如邮箱,便于管理多对密钥)。
  2. 保存密钥文件
    按回车确认默认路径(~/.ssh/id_rsa),可设置密钥短语(passphrase)保护私钥,若担心输入短语影响体验,可留空直接回车。


将公钥部署到服务器

  1. 上传公钥到服务器
    使用以下命令将本地生成的公钥(id_rsa.pub)自动复制到服务器:

    ssh-copy-id user@server_ip

    user是服务器用户名,server_ip是服务器IP地址,系统会提示输入当前用户的密码(若已配置密钥则跳过),成功后公钥将被添加到服务器的~/.ssh/authorized_keys文件中。

  2. 手动部署(备用方案)
    ssh-copy-id不可用,可手动操作:

    • 复制到剪贴板:cat ~/.ssh/id_rsa.pub
    • 登录服务器后,在~/.ssh目录下编辑authorized_keys文件:
      mkdir -p ~/.ssh
      nano ~/.ssh/authorized_keys

      粘贴到文件末尾,保存并退出。


配置服务器SSH服务

  1. 编辑SSH配置文件
    通过SSH登录服务器后,编辑/etc/ssh/sshd_config文件(需管理员权限):

    sudo nano /etc/ssh/sshd_config
  2. 修改关键参数
    找到以下配置项并调整:

    # 禁用密码登录
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    # 启用公钥认证
    PubkeyAuthentication yes
    # 限制SSH端口(可选,增强安全)
    Port 2222  # 将默认22端口改为其他端口
  3. 重启SSH服务
    保存配置后重启SSH服务使更改生效:

    sudo systemctl restart ssh    # Debian/Ubuntu
    sudo systemctl restart sshd  # CentOS/RHEL

测试并验证配置

  1. 断开当前连接
    关闭当前SSH会话,确保配置无误后再尝试重新连接。

  2. 使用密钥登录
    在本地终端输入:

    ssh -i /path/to/private_key user@server_ip -p 2222

    若配置正确,系统将直接登录服务器而无需输入密码,若遇到问题,可通过-v参数查看详细日志排查:

    ssh -v -i /path/to/private_key user@server_ip -p 2222

注意事项:安全加固与维护

  1. 私钥的严格保护

    • 禁止共享私钥:私钥等同于服务器的“钥匙”,泄露可能导致服务器被入侵。
    • 离线存储备份:将私钥文件加密后存放在安全介质(如加密U盘或云端保险箱)中。
    • 定期轮换密钥:建议每6-12个月更换一次密钥对,降低长期风险。
  2. 服务器权限最小化

    • 为不同用户分配独立密钥,并通过authorized_keys文件的注释区分用途。
    • 限制SSH登录用户的权限(如使用chrootsudo规则)。
  3. 监控与告警
    启用SSH登录日志审计,设置异常登录提醒(如Fail2Ban工具),及时发现可疑行为。