为了简化ssh命令,我们可以在 ~/.ssh/config文件中设置别名。例如,我们可以为经常访问的服务器设置一个别名:
Host myserver
HostName example.com
User username
Port 22
然后,我们可以使用别名来连接服务器:
ssh myserver
设置ssh超时时间
我们可以设置ssh连接超时时间,以防止长时间的连接尝试。在 ~/.ssh/config文件中添加以下行:
ServerAliveInterval 300
这将每300秒向服务器发送一次保持活动的数据包。如果服务器没有在300秒内响应,则ssh连接将断开。
启用ssh密钥转发
ssh密钥转发允许我们通过跳板机连接到其他服务器,而无需在跳板机上输入密码。在 ~/.ssh/config文件中添加以下行:
ForwardAgent yes
然后,我们可以使用 ssh -A 命令连接到跳板机,然后使用 ssh连接到目标服务器:
ssh -A jumphost
ssh otherhost
限制ssh访问
我们可以通过设置允许访问ssh服务器的主机或用户列表来限制ssh访问。在 /etc/ssh/sshd_config文件中添加以下行:
AllowUsers user1 user2
AllowHosts host1 host2
这将只允许user1和user2用户以及host1和host2主机连接到ssh服务器。
启用ssh端口敲门
ssh端口敲门是一种安全措施,它要求在允许ssh连接之前先向特定端口发送特定的数据包序列。在 /etc/ssh/sshd_config文件中添加以下行:
PortKnock *:[port1]:[sequence]
例如,我们可以要求在允许ssh连接之前先向端口12345发送一个数据包:
PortKnock *:[12345]:1