ssh 端口更改或ssh 远程接不上的问题(尤其是国外服务器)
问题:
Connecting to 149.*.*.*:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
把访问数给设置一下 /etc/ssh/sshd_config
将#UseDNS yes改为 UseDNS no
使用了dns反查,这样的话当ssh某个IP时,系统会试图通过DNS反查相对应的域名,
如果DNS中没有这个IP的域名解析,则会等到DNS查询超时才会进行下一步,消耗很长时间
该参数似乎是在做图形方面的认证
修改GSSAPIAuthentication参数为 no,默认是yes
#MaxStartups 10,输入/MaxStartups 定位到如下并修改
#去掉,修改10为1000,MaxStartups 1000
重启SSH服务,/etc/rc.d/init.d/sshd restart
xshell 报错时:WARNING! The remote SSH server rejected X11 forwarding request.
问题现象
用 ssh 命令连接服务器之后,如果一段时间不操作,再次进入 Terminal 时会有一段时间没有响应,然后就出现错误提示:
Write failed: Broken pipe
只能重新用 ssh 命令进行连接。
解决方法
方法一:如果您有多台服务器,不想在每台服务器上设置,只需在客户端的 ~/.ssh/ 文件夹中添加 config 文件,并添加下面的配置:
ServerAliveInterval 60
方法二:如果您有多台个人管理服务器,不想在每个客户端进行设置,只需在服务器的 /etc/ssh/sshd_config 中添加如下的配置:
ClientAliveInterval 60
方法三:如果您只想让当前的 ssh 保持连接,可以使用以下的命令:
$ ssh -o ServerAliveInterval=60 user@sshserver