温馨提示×

CentOS SSH密钥认证步骤

小樊
49
2025-08-10 10:11:30
栏目: 智能运维

CentOS SSH密钥认证步骤如下:

  1. 生成密钥对
    在本地终端执行:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    (默认生成私钥~/.ssh/id_rsa和公钥~/.ssh/id_rsa.pub,可按需设置密码短语)

  2. 上传公钥到服务器

    • 推荐方式:使用ssh-copy-id命令:
      ssh-copy-id user@remote_host
      (首次需输入服务器密码,自动将公钥追加到~/.ssh/authorized_keys
    • 手动方式
      cat ~/.ssh/id_rsa.pub | ssh user@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
  3. 配置服务器SSH服务
    编辑/etc/ssh/sshd_config

    PubkeyAuthentication yes  
    AuthorizedKeysFile .ssh/authorized_keys  
    PasswordAuthentication no  # 可选:禁用密码登录(需确保密钥配置正确)  
    

    重启服务:sudo systemctl restart sshd

  4. 测试密钥认证
    执行ssh user@remote_host,若配置正确可直接登录,无需输入密码

可选优化

  • 简化登录命令:在本地~/.ssh/config中添加:
    Host remote_host  
        HostName remote_host_ip  
        User user  
        IdentityFile ~/.ssh/id_rsa  
    
    之后可直接用ssh remote_host登录。

安全提示

  • 确保~/.ssh目录权限为700authorized_keys文件权限为600
  • 禁用密码登录前,务必确认密钥可正常使用,避免被锁服务器。

0