我正在尝试在 Ubuntu Server 16.04 上设置非标准 SSH 端口(例如:53425)而不是默认端口 22。出于某种原因,我无法通过 Putty 通过 SSH 进入服务器。以下是我所做的:
- 我编辑了 /etc/ssh/sshd_config 文件并将端口更改为 53425。
- 我重新启动了 sshd 服务来更新更改。
- 我安装了 UFW 并允许端口 53425。
- 我重新加载了 UFW 并重新启动了计算机。
- 我查看了日志 /var/log/auth.log 并确认“服务器正在监听 0.0.0.0 端口 53425。
- 我更新了 Putty 以连接到端口 53425,而不是 22。
- 什么都没有发生,没有登录提示,并且出现超时连接错误。
看起来应该很简单,但不知为何却不起作用。我是不是做错了什么?
谢谢 诚挚的问候
答案1
我猜是因为当你重启服务器时,ssh 会重置为端口 22,直到你使用 再次重启 ssh 服务器sudo systemctl restart sshd
。阻止重置的方法是修改 systemd 目录中的 ssh 套接字文件。请尝试以下操作:
类似案例请参阅此帖子: SSH 在重启时重置为默认端口
mkdir /lib/systemd/system/ssh.socket.d
sudo nano /lib/systemd/system/ssh.socket.d/port.conf
粘贴(将 54747 替换为自定义端口:
[Socket]
ListenStream=
ListenStream=54747
进行更改后重新启动服务器或运行以下命令:
sudo systemctl daemon-reload
sudo systemctl restart ssh
sudo systemctl restart sshd