1. 使用密钥对进行身份验证,避免密码输入。,2. 配置SSH配置文件(~/.ssh/config),简化连接命令。,3. 使用端口转发功能,安全访问内网服务。,4. 利用SSH代理转发,实现多级跳板机登录。,5. 开启SSH压缩选项,减少数据传输量。,6. 使用SSH隧道技术,穿透防火墙限制。,7. 定期更新SSH客户端和服务器软件,保持安全性。,8. 限制SSH登录IP地址,防止恶意攻击。,9. 使用SSH公钥认证,提高安全性。,10. 配置SSH超时时间,避免长时间空闲连接。,11. 使用SSH脚本自动化重复任务。,12. 利用SSH多路复用,提高连接效率。,13. 配置SSH日志记录,便于故障排查。,14. 使用SSH证书认证,简化管理流程。,15. 开启SSH双因素认证,增强安全性。,16. 定期检查SSH配置文件,确保安全设置正确。
技巧编号 | 技巧描述 | 详细内容 |
1 | 多条连接共享 | 通过配置SSH的连接共享选项,在本地打开SSH配置文件(通常位于~/.ssh/config),并添加以下两行代码: ControlMaster auto ControlPath /tmp/ssh_mux_%h_%p_%r,这样,在多个窗口中打开到同一个服务器的连接时,可以瞬间建立第二条连接。 |
2 | 长连接 | 如果你需要频繁地连接到同一个服务器,可以配置长连接选项,在SSH配置文件中添加以下代码: ControlPersist 4h,这样,每次与服务器建立连接后,这条连接将被保持4个小时,即使你退出服务器,这条连接依然可以重用。 |
3 | 别再输入密码 | 使用SSH Keys来避免每次都输入密码,首先使用OpenSSH为自己生成一对密钥: $ sshkeygen,然后将公钥拷贝到服务器上,如果系统有sshcopyid命令,可以使用该命令进行拷贝;否则,手动将公钥拷贝到服务器上的~/.ssh/authorized_keys文件中。 |
4 | 连接中转 | 当你需要从一个服务器连接到另一个服务器时,可以使用agent forwarding,在SSH配置文件中加入以下代码: ForwardAgent yes,或者在Putty中勾上“Allow agent forwarding”选项。 |
5 | 省略主机名 | 如果输入服务器的完整主机名来建立一个新的SSH连接太乏味,可以通过修改操作系统的网络配置来使用短域名,在Ubuntu系统中,可以编辑网络配置文件,添加domainsearch指令,然后重启网络服务。 |
6 | 主机别名 | 可以在SSH配置文件中定义主机别名,以便简化连接过程。 Host dev HostName dev.internal.example.com,还可以使用通配符进行分组。 |
7 | 省去用户名 | 如果远程服务器上的用户名和本地用户名不同,可以在SSH配置文件中设置User选项。 Host www* mail HostName %h.example.com User simon,这样,即使本地用户名是smylers,也可以使用simon账户连接服务器。 |
8 | 在服务器间跳转 | 有时你可能无法直接连接到某台服务器,而需要使用一台中间服务器进行中转,确保已经为服务器配置了公钥访问,并开启了agent forwarding,现在你可以通过两条命令来连接目标服务器,不会有任何提示输入。 |
FAQs
Q1:如何配置SSH的连接共享选项?
A1:在本地打开SSH配置文件(通常位于~/.ssh/config),并添加以下两行代码:
ControlMaster auto ControlPath /tmp/ssh_mux_%h_%p_%r
这样,在多个窗口中打开到同一个服务器的连接时,可以瞬间建立第二条连接。
Q2:如何使用SSH Keys避免每次都输入密码?
A2:首先使用OpenSSH为自己生成一对密钥:
$ sshkeygen
然后将公钥拷贝到服务器上,如果系统有sshcopyid命令,可以使用该命令进行拷贝;否则,手动将公钥拷贝到服务器上的~/.ssh/authorized_keys文件中:
$ < ~/.ssh/id_rsa.pub ssh clegg.example.org 'mkdir p .ssh; cat >> .ssh/authorized_keys; chmod gow .ssh .ssh/authorized_keys'
现在试试重新连接到SSH服务器,或是拷贝文件,是不是已经不需要再输入密码了。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1094926.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复