我正在尝试使用 22 以外的端口连接到我的 Redhat AWS 实例。
该命令有效: 但该命令无效:ssh -i my.pem -p 22 [email protected]
ssh -i my.pem -p 8157 -vvv [email protected]
第二个命令输出:
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to X.X.X.X port 8157.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file my.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file my.pem-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6
但然后就挂起了。在我尝试连接的服务器上,但是,当我运行时nc -l 8157
我可以看到
SSH-2.0-OpenSSH_7.6
如果我取出该-vvv
部件,我只会收到一个快速的“连接被拒绝”错误。
当我登录机器并运行时ssh -p 8157 -vvv ec2-user@localhost
我得到以下输出:
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 58: Applying options for *
debug2: resolving "localhost" port 8157
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to localhost [127.0.0.1] port 8157.
debug1: connect to address 127.0.0.1 port 8157: Connection refused
ssh: connect to host localhost port 8157: Connection refused
知道发生了什么事吗?
答案1
该命令的工作原理:
ssh -i my.pem -p 22 [email protected]
但该命令不会:
ssh -i my.pem -p 8157 -vvv [email protected]
你的另一端可能在防火墙中打开了端口,但是......
由于端口 22 有效,因此您的服务器会侦听该端口。
重新配置您的服务器以侦听您想要的任何端口。
您可以在文件中执行此操作:
/etc/ssh/sshd_config
通过以下设置:
Port 8157
之后不要忘记重新启动 SSH 守护进程。
答案2
就我而言,我发现本地计算机上的 ssh 守护进程 (sshd.service) 已关闭。检查是否是这种情况:
sudo systemctl status sshd.service
如果它返回“非活动状态”:
sudo systemctl start sshd.service