通过端口 443 的 SSH 连接失败

通过端口 443 的 SSH 连接失败

我正在努力按照 DigitalOcean 的教程,尝试按照步骤 5 在端口 443 上设置 ssh 连接。我已经能够在端口 22 上工作(步骤 1-4)。我检查了防火墙,发现端口 443 已打开。我将文件更改/etc/ssh/sshd_config为:

 # What ports, IPs and protocols we listen for
 Port 22
 Port 443

我已重新启动该服务:

sudo service ssh restart
sudo service sshd restart

当我使用 putty 在端口 443 上登录时,我得到空白屏幕。它在端口 22 上运行。我还能做些什么让它在端口 443 上运行?

编辑:

  $ sudo lsof -i -n -P +c 0 | grep ':80\|:443'

  COMMAND   PID     USER   FD   TYPE     DEVICE SIZE/OFF NODE NAME
  nginx   26964     root    6u  IPv4 2603510992      0t0  TCP *:80 (LISTEN)
  nginx   26964     root    7u  IPv6 2603510993      0t0  TCP *:80 (LISTEN)
  nginx   26964     root    8u  IPv4 2603510994      0t0  TCP *:443 (LISTEN)
  nginx   26965 www-data    6u  IPv4 2603510992      0t0  TCP *:80 (LISTEN)
  nginx   26965 www-data    7u  IPv6 2603510993      0t0  TCP *:80 (LISTEN)
  nginx   26965 www-data    8u  IPv4 2603510994      0t0  TCP *:443 (LISTEN)

编辑:

  $ sudo systemctl status sshd

  ● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2017-09-07 16:04:13 EDT; 1min 19s ago
   Main PID: 22845 (sshd)
     CGroup: /system.slice/ssh.service
             ├─22103 sshd: deploy [priv]
             ├─...
             └─22853 pager

  Sep 07 16:04:13 server sshd[22845]: error: Bind to port 443 on 0.0.0.0 failed: Address already in use.
  Sep 07 16:04:13 server sshd[22845]: Server listening on 0.0.0.0 port 22.

答案1

请仔细阅读上述手册。步骤 5 下写道:

如果您的连接正常,那么您就可以停止阅读。...

经常开放的端口包括 80(一般网络流量)和 443(SSL 网络流量)。

如果你的SSH服务器不提供 Web 内容,我们可以告诉 SSH 使用其中一个 Web 端口进行通信,而不是使用默认端口 22。443 是最好的选择……

就您而言,该命令的输出sudo lsof -i -n -P | grep www-data是:

nginx   26965 www-data    6u  IPv4 2603510992      0t0  TCP *:80 (LISTEN)
nginx   26965 www-data    7u  IPv6 2603510993      0t0  TCP *:80 (LISTEN)
nginx   26965 www-data    8u  IPv4 2603510994      0t0  TCP *:443 (LISTEN)

这意味着 Nginx 网络服务器正在提供网络内容,并且它使用端口80和端口443

输出还sudo systemctl status sshd报告以下错误:

error: Bind to port 443 on 0.0.0.0 failed: Address already in use.

一切正常,只有 Web 服务器 Nginx 监听Port 443。如果您想在此端口上使用 SSH 连接,则应禁用或重新配置 Web 服务器。


一个端口只能被一个服务用作服务器端口。两个服务可以通过公共端口进行通信,在这种关系中,一个服务充当服务器角色,另一个充当客户端角色。


如果您想使用不同的 SSH 端口,请选择 10 000 以上的端口,通常扫描大范围的端口需要很长时间,因此黑客机器人通常会扫描 1-1000 的范围,或者一些特定的端口,如 22、25、80、443。不要忘记在防火墙中打开这个端口,如果您的连接在新端口上运行,您可以禁用默认端口 - 22。


参考:

相关内容