温馨提示×

怎样配置CentOS的SSH自动登录

小樊
49
2025-03-03 08:37:07
栏目: 智能运维

要配置CentOS的SSH自动登录,你需要编辑SSH配置文件sshd_config和客户端的SSH配置文件ssh_config。以下是详细步骤:

服务器端配置

  1. 编辑服务器端的SSH配置文件: 打开终端,使用文本编辑器(如vinano)编辑/etc/ssh/sshd_config文件。

    sudo vi /etc/ssh/sshd_config
    
  2. 修改以下配置项

    • PermitRootLogin:允许root用户通过SSH登录。如果你不希望root用户直接登录,可以设置为no,并使用普通用户登录后再切换到root用户。
      PermitRootLogin no
      
    • PasswordAuthentication:允许密码认证。如果你希望使用密钥认证,可以设置为no
      PasswordAuthentication yes
      
    • ChallengeResponseAuthentication:允许挑战响应认证。如果你希望使用密钥认证,可以设置为no
      ChallengeResponseAuthentication no
      
  3. 保存并退出编辑器: 按Esc键,然后输入:wq保存并退出。

  4. 重启SSH服务: 使配置生效,需要重启SSH服务。

    sudo systemctl restart sshd
    

客户端配置

  1. 编辑客户端的SSH配置文件: 打开终端,使用文本编辑器(如vinano)编辑~/.ssh/config文件。如果文件不存在,可以创建一个。

    vi ~/.ssh/config
    
  2. 添加以下配置项

    • HostName:指定服务器的主机名或IP地址。
    • User:指定登录的用户名。
    • IdentityFile:指定私钥文件的路径(如果你使用密钥认证)。
    Host your_server_ip_or_hostname
        User your_username
        IdentityFile ~/.ssh/your_private_key
    
  3. 保存并退出编辑器: 按Esc键,然后输入:wq保存并退出。

测试自动登录

  1. 从客户端连接到服务器: 使用以下命令测试自动登录配置是否生效。
    ssh your_server_ip_or_hostname
    

如果一切配置正确,你应该能够自动登录到服务器,而无需每次都输入密码或进行其他身份验证。

注意事项

  • 确保私钥文件的权限设置正确,通常应该是600
    chmod 600 ~/.ssh/your_private_key
    
  • 如果你使用的是密钥认证,确保公钥已经添加到服务器的~/.ssh/authorized_keys文件中。
  • 自动登录配置可能会带来安全风险,特别是使用root用户登录时。请根据实际情况谨慎配置。

0