阅读量:0
在Linux系统中设置SSH密钥身份验证,首先在本地生成SSH密钥对,然后将公钥复制到远程服务器的~/.ssh/authorized_keys文件中。具体操作如下:,,1. 在本地生成SSH密钥对:ssh-keygen -t rsa
,2. 将公钥复制到远程服务器:ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@远程服务器IP
,3. 修改远程服务器的SSH配置文件:vim /etc/ssh/sshd_config
,确保以下内容为yes或uncommented:PubkeyAuthentication
,AuthorizedKeysFile
,4. 重启SSH服务:service ssh restart
或systemctl restart ssh
,5. 测试SSH密钥身份验证是否成功。

在Linux系统中设置SSH密钥身份验证,可以按照以下步骤进行操作:
1. 生成 SSH 密钥对
你需要在本地计算机上生成一对 SSH 密钥,包括公钥和私钥,可以使用以下命令生成密钥对:
ssh-keygen -t rsa
运行上述命令后,会提示你选择保存密钥文件的路径和输入密码(可选),按照提示操作即可。
2. 将公钥上传到远程服务器
生成密钥对后,你需要将公钥上传到远程服务器,可以使用以下命令将公钥复制到远程服务器的用户主目录下:
ssh-copy-id username@remote_host
username
是远程服务器上的用户名,remote_host
是远程服务器的主机名或 IP 地址,执行该命令后,会要求输入远程服务器的密码。
3. 登录远程服务器

完成上述步骤后,你可以使用 SSH 密钥进行身份验证并登录远程服务器,使用以下命令登录:
ssh username@remote_host
如果一切配置正确,你应该能够成功登录远程服务器而无需输入密码。
4. 禁用密码身份验证(可选)
为了提高安全性,你可以选择禁用密码身份验证,只允许使用 SSH 密钥进行身份验证,可以通过编辑 SSH 配置文件来实现。
打开远程服务器上的 SSH 配置文件,通常位于 /etc/ssh/sshd_config
,找到以下行并进行相应的修改:
PasswordAuthentication no
保存文件并退出编辑器,然后重启 SSH 服务,以使更改生效:
sudo service ssh restart
现在,只有使用 SSH 密钥进行身份验证才能登录远程服务器。
请注意,禁用密码身份验证可能会增加系统的安全性,但也可能导致在特定情况下无法使用密码进行紧急访问,在禁用密码身份验证之前,请确保你了解可能的风险,并采取适当的备份和恢复措施。

希望以上步骤对你有所帮助!