使用 VPS 和 Ubuntu(最新版本)。当我通过进入 sudo nano /etc/ssh/sshd_config 更改 ssh 端口时,它不起作用。当通过 sudo lsof -i -n -P | grep LISTEN 检查时,它显示它仍在监听端口 22。然后当我再次尝试登录时,控制台显示 SSH 连接丢失。
然后发现这个帖子:SSH 默认端口未改变(Ubuntu 22.10) 我输入的命令如下:
mkdir -p /etc/systemd/system/ssh.socket.d
猫> /etc/systemd/system/ssh.socket.d/listen.conf <<EOF
[插座]
监听流=
收听流=46876
末梢血
sudo systemctl 守护进程重新加载
sudo systemctl 重新启动 ssh
检查 systemctl status ssh 时显示失败。为什么有两次 ListenStream ?
已经这样做太久了。有人能帮我使用更改端口的命令吗?
谢谢。
答案1
似乎您在进行更改后仅尝试重新启动 ssh 客户端而不是服务器。尝试以下操作重新启动 ssh 服务器,sshd 配置中配置的新端口应该会生效:
sudo systemctl restart sshd
此外,编辑 systemd 目录还适用于您希望自定义端口在重启后保持不变的情况。一旦您重启,您的 ssh 服务器将重置为 22,直到您在启动后再次重新启动它,但修改该目录将阻止这种情况。
另一个关键点是您正在使用 listen.conf,我认为应该将其更改为端口配置文件,请尝试以下操作:
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
答案2
sshd 配置文件位于/etc/ssh/sshd_config
只需更改端口并重新启动 sshdsystemctl restart sshd