在一个无力的时刻,我怯懦地跟着tutorial关于如何连接到我的Amazon EC2远程服务器绕过公共图书馆的Wifi ssh限制。
所以我做的第一件事就是将以下(最后一行)添加到我的远程EC2 AMazon服务器中的/ etc / ssh / sshd_config文件中:
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
ListenAddress 443
然后我重新启动了ssh服务器,并且在天才移动中,从我的远程服务器注销。所以当我在我的本地机器上时,我这样做......
$ ssh -i /path/to/key.pem xxx@xx.xx.xxx.xx -p 443 -v
......我明白了:
$ ssh -i /path/to/key.pem xxx@xx.xx.xxx.xx -v -p 443
OpenSSH_6.0p1 Debian-4+deb7u2, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to xx.xx.xxx.xx [xx.xx.xxx.xx] port 443.
debug1: connect to address xx.xx.xxx.xx port 443: Connection timed out
ssh: connect to host xx.xx.xxx.xx port 443: Connection timed out
如果我尝试ssh到默认的端口22,我会得到这个:
OpenSSH_6.0p1 Debian-4+deb7u2, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to xx.xx.xxx.xx [xx.xx.xxx.xx] port 22.
debug1: connect to address xx.xx.xxx.xx port 22: Connection refused
ssh: connect to host xx.xx.xxx.xx port 22: Connection refused
我还在亚马逊的EC2'安全组中添加了以下内容' ...
Custom TCP port 443
......无济于事。
我是否有效地将我锁定在远程服务器之外?我正在关注如何隧道的教程然后发生这种情况。不应该刚刚添加到/ etc / ssh / sshd_config ...
Port 443
...而不是' ListenAddress 443' ?
我以前从未遇到过ssh&到我的远程服务器的问题(这是Debian Wheezy)。
据我所知,我仍然可以分离我的卷,将它重新附加到一个新实例,修复sshd_config文件等等。我希望有一个替代方案。
所以我的问题是:考虑到线路' ListenAddress 443'可以连接到我的远程服务器。在ssh_config中?如果是这样,怎么样?也许更重要的是,如果除了ListenAddress 443之外我没有触及或更改任何sshd_config,为什么我无法在端口22上连接?
提前致谢!
修改
telnet xx.xx.xxx.xx 22
Trying xx.xx.xxx.xx...
telnet: Unable to connect to remote host: Connection refused
答案 0 :(得分:1)
由于以下三个原因之一,您无法连接:
sshd
已关闭,因为它无法解析ListenAddress 443
。
sshd
将ListenAddress 443
解析为IP地址(' 443'可以解释为IP地址 - IPv4地址以低级别表示为32-位无符号整数)但无法绑定到' 443'所代表的IP地址并且已经失败了。
sshd
将ListenAddress 443
解析为IP地址,成功绑定到该IP地址,现在正在运行并监听" 0.0.1.187"或者对'443'作为IP地址。