如何在Linux系统中设置SSH密钥身份验证(5)
如何在Linux系统中设置SSH密钥身份验证
sshd_config 文件:
sudo nano /etc/ssh/sshd_config
找到并修改以下行:
PasswordAuthentication no
保存文件并重新启动 SSH 服务:
sudo service ssh restart
此时,只有拥有合法私钥的用户才能成功进行 SSH 登录。
使用sshd_config文件设置访问限制
sshd_config 文件包含了配置 SSH 服务器行为的各种选项。通过修改这个文件,可以实现对访问的更精确控制。
sudo nano /etc/ssh/sshd_config
限制用户和IP地址
AllowUsers username@your_ip
这个配置将只允许指定用户从指定 IP 地址进行 SSH 登录。
修改SSH端口
默认情况下,SSH 服务使用 22 端口。为了提高安全性,可以修改为其他非常用端口,比如 2222:
Port 2222
确保保存修改并重新启动 SSH 服务。
使用SSH Agent Forwarding
什么是SSH Agent Forwarding
SSH Agent Forwarding 是一种机制,允许你在本地系统上解锁私钥,然后通过安全地转发到远程主机,以在远程主机上进行身份验证。
这意味着,如果你已经通过密钥身份验证登录到本地机器,你可以使用相同的身份验证在远程主机上执行操作,而无需再次输入密码或私钥。
配置和使用SSH Agent Forwarding
1、在本地机器上启动 SSH Agent:
eval "$(ssh-agent -s)"
2、添加私钥到代理:
ssh-add ~/.ssh/id_rsa
3、在连接到远程主机时启用 Agent Forwarding:
ssh -A username@your_server_ip
确保替换username为你的用户名,your_server_ip 为目标服务器的 IP 地址。
现在,你可以在远程主机上执行需要私钥身份验证的操作,而无需再次输入密码或私钥。
安全注意事项
尽管 SSH Agent Forwarding 提供了便利,但也需要注意一些安全性问题。确保遵循以下最佳实践:
- 只允许受信任的主机使用 Agent Forwarding。如果你连接到了不受信任的主机,可以通过使用
-A参数禁用 Agent Forwarding。 - 定期检查代理并清除不再需要的密钥。使用
ssh-add -L命令查看当前加载的密钥列表,并使用ssh-add -D清除不再需要的密钥。 - 在不需要 Agent Forwarding 的情况下禁用它。只有在确实需要在远程主机上执行私钥身份验证的操作时才启用 Agent Forwarding。
通过理解和正确配置 SSH Agent Forwarding,你可以在保持安全性的同时提高 SSH 的便利性。
相关阅读
-
电脑自动休眠取消教程 电脑取消自动休眠状态
今日重点为您介绍电脑自动休眠取消教程的话题,关于电脑自动休眠取消教程 电脑取消自动休眠状态,如有不对的地方欢迎指正! 不少的电脑用户都会设置自动休眠功能但是想要取消的时候就
-
电脑虚拟机安装教程 在电脑上开一个虚拟机详细步骤
对于许多网友来说电脑虚拟机安装教程和在电脑上开一个虚拟机详细步骤的IT知识,接下来分享详细内容。 VMware Workstation是一款虚拟机软件,允许用户将Linux、Windows等多个操作系统作为虚拟机
-
笔记本恢复出厂设置方法 笔记本电脑恢复出厂设置方法
全面为您解析笔记本恢复出厂设置方法方面的知识,关于笔记本恢复出厂设置方法 或者 笔记本电脑恢复出厂设置方法,接下来一起来看看吧。 在电脑出现问题的时候基本上大家都会去选择恢
-
win10缺失dll文件一键修复 免费的dll修复工具推荐
今天小编介绍win10缺失dll文件一键修复和免费的dll修复工具推荐的相关话题,接下来分享详细内容。 本期Eleght科技给大家分享一下有关DLL方面的知识,不仅仅只是来分享工具的,以用来解决很


