我正在努力这和这按照 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。
参考: