Ubuntu系统遇见修改sshd服务监听22端口不生效处理办法
请查看这个是否开启在使用:
ssh.socket 是 systemd 的 socket 激活(Socket Activation)配置,它在传统 [email protected] 的基础上,按需启动 SSH 服务(仅在连接请求到达时才激活)。
通常 Ubuntu 22.04/24.04 默认不启用此配置,SSH 仍通过 sshd.service 长期运行。若该文件存在,修改它会影响 SSH 的端口监听方式。
ls /usr/lib/systemd/system/ssh.socket # 查看文件是否存在
systemctl list-unit-files | grep ssh # 检查是否启用了 ssh.socket
如下图:如果启用了,请执行下面命令进行更新:
# systemctl list-unit-files | grep ssh
ssh.service disabled enabled
ssh.socket enabled enabled
rescue-ssh.target static -
vi /etc/ssh/sshd_config
# 执行下面的命令,修改 ListenStream= 后面的端口号。
vi /usr/lib/systemd/system/ssh.socket
# 重载配置
systemctl daemon-reload
# 重启 socket
systemctl restart ssh.socket
# 测试
ssh $USER@localhost -p 22666