配置Linux主机上的SSH密钥认证可以提高系统安全性,避免使用密码进行登录
检查是否已生成SSH密钥对: 在终端中输入以下命令,查看是否已存在公钥和私钥文件。
ls -al ~/.ssh
如果你看到id_rsa
(私钥)和id_rsa.pub
(公钥)文件,那么你已经有一个密钥对,可以跳到步骤3。如果没有这些文件,请继续下一步。
生成新的SSH密钥对: 在终端中输入以下命令,然后按回车。当提示输入文件名时,可以直接按回车使用默认值。
ssh-keygen -t rsa
接下来,系统会要求你输入一个可选的密码短语。这可以增加密钥的安全性,但不是必需的。输入一个密码短语后,再次输入以确认。
将公钥添加到远程主机:
首先,用文本编辑器打开公钥文件(例如id_rsa.pub
):
nano ~/.ssh/id_rsa.pub
然后,将文件中的内容复制到远程主机的~/.ssh/authorized_keys
文件中。你可以使用ssh-copy-id
命令来完成这个操作:
ssh-copy-id user@remote_host
其中,user
是远程主机上的用户名,remote_host
是远程主机的地址。输入密码后,你的公钥将被添加到远程主机的授权密钥列表中。
禁用密码登录:
为了确保使用SSH密钥认证,需要禁用密码登录。在远程主机上,编辑/etc/ssh/sshd_config
文件:
sudo nano /etc/ssh/sshd_config
找到并注释掉或删除以下行:
PasswordAuthentication yes
然后保存并退出编辑器。重启SSH服务以使更改生效:
sudo systemctl restart ssh
现在,你应该可以使用SSH密钥认证登录远程主机了。在终端中输入以下命令:
ssh user@remote_host
如果一切正常,你将无需输入密码即可登录。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。