ssh如何免密码登录?

169 阅读1分钟

实现 SSH 免密码登录通常使用 SSH 密钥对,以下是一般的步骤:

  1. 生成密钥对: 在本地机器上打开终端,执行以下命令生成密钥对:

    ssh-keygen -t rsa -b 4096
    

    这将生成一对公钥和私钥,默认情况下保存在 ~/.ssh/id_rsa~/.ssh/id_rsa.pub

  2. 将公钥复制到远程服务器: 使用以下命令将本地生成的公钥复制到远程服务器上:

    ssh-copy-id user@remote_server
    

    如果 ssh-copy-id 不可用,你可以手动将公钥内容追加到远程服务器的 ~/.ssh/authorized_keys 文件中。

  3. 测试免密码登录: 现在你应该能够通过以下命令无密码登录到远程服务器:

    ssh user@remote_server
    

    如果一切设置正确,你将无需输入密码即可登录。

请确保你的本地机器和远程服务器上的 ~/.ssh 文件夹权限设置正确(权限为 700),并且 ~/.ssh/authorized_keys 文件的权限为 600。这有助于确保密钥文件的安全性。

如果你使用不同的密钥文件名,需要使用 -i 参数指定私钥文件的路径,例如:

ssh -i /path/to/private/key user@remote_server