SSH连接在AWS EC2上使用的是TCP协议的22端口。如果该端口没有打开,那么就会出现连接失败的情况。但是有时候,即使端口被关闭,ssh连接仍然保持活动状态,这是因为连接并不是立即中止的。以下是几种
方法1:手动终止ssh进程
可以在EC2实例上手动终止ssh进程。可以使用以下命令终止该进程:
sudo killall sshd
方法2:修改ssh keepalive间隔
通过修改ssh keepalive间隔的方式,可以让ssh连接在特定时间间隔内发送信号以保持活动状态。可以使用以下命令查看当前的keepalive设置:
sudo cat /etc/ssh/sshd_config | grep KeepAlive
可以通过修改/etc/ssh/sshd_config文件中的ClientAliveInterval和ClientAliveCountMax配置来调整keepalive间隔。例如,将ClientAliveInterval设置为60(秒)和ClientAliveCountMax设置为3,可以在3分钟内向EC2实例发送keepalive信号。可以使用以下命令编辑sshd_config文件:
sudo vi /etc/ssh/sshd_config
修改ClientAliveInterval和ClientAliveCountMax的值:
ClientAliveInterval 60 ClientAliveCountMax 3
保存文件并重启ssh服务以使配置生效:
sudo service sshd restart