在 Linux 主机上配置 SSH 密钥身份验证可提高系统的安全性,并且无需使用密码登录。
检查SSH密钥对是否已生成:
在终端中输入以下命令,检查是否已存在。
ls -al ~/.ssh
id_rsa (私钥)和
id_rsa.pub
(公钥)文件,您已经有了密钥对,可以跳到步骤 3。 如果这些文件不可用,请继续执行下一步。 。
生成新的 SSH 密钥对:
在终端中键入以下命令,然后按 Enter。 当提示输入文件名时,只需按 Enter 接受默认值。
ssh-keygen -t rsa
系统然后进入I Ask。 可选密码。 这提高了密钥安全性,但不是必需的。 输入密码后,再次输入以确认。
将公钥添加到远程主机:
首先,在文本编辑器中打开公钥文件(例如: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
All If OK ,您无需输入密码即可登录。
评论前必须登录!
注册