首先,需要在本地机器上生成SSH密钥对。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 默认情况下,密钥会保存在 ~/.ssh/id_rsa(私钥)和 ~/.ssh/id_rsa.pub (公钥)。
将生成的公钥复制到远程服务器的 ~/.ssh/authorized_keys 文件中。
ssh-copy-id 命令ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote_host~/.ssh/authorized_keys 文件中:
mkdir -p ~/.ssh chmod 700 ~/.ssh echo "公钥内容" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys确保远程服务器上的SSH服务配置允许密钥登录。
/etc/ssh/sshd_config 文件尝试使用SSH密钥登录到远程服务器。
ssh user@remote_host如果一切配置正确,你应该能够无密码登录到远程服务器。
解决方法:
解决方法:
~/.ssh 目录和 ~/.ssh/authorized_keys 文件的权限正确:chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys解决方法:
~/.ssh/authorized_keys 文件中。~/.ssh/authorized_keys 文件中是否有多余的空行或格式错误。sshd_config 文件中的 PubkeyAuthentication 和 AuthorizedKeysFile 设置正确。解决方法:
sshd_config 文件中的 PasswordAuthentication 设置为 no。sshd_config 文件中的 ChallengeResponseAuthentication 设置为 no。原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。