Ubuntu 22.10及以上版本修改SSH端口

310次阅读
没有评论

共计 879 个字符,预计需要花费 3 分钟才能阅读完成。

从Ubuntu 22.10开始,sshd的监听任务由systemd socket管理,直接修改sshd_config中的Port并不会生效。因此,需要同时修改socket配置和sshd配置。

一、修改SSH Socket端口

编辑systemd的SSH socket文件:

vim /usr/lib/systemd/system/ssh.socket

找到[Socket]部分,将ListenStream修改为所需端口,例如 8888:

...
[Socket]
ListenStream=0.0.0.0:8888
ListenStream=[::]:8888
BindIPv6Only=ipv6-only
Accept=no
FreeBind=yes
...

注意:

  • ListenStream=0.0.0.0:8888:表示监听所有IPv4地址
  • ListenStream=[::]:8888:表示监听所有IPv6地址
  • BindIPv6Only=ipv6-only:确保IPv6仅绑定IPv6,不影响IPv4

二、修改SSH配置文件(可选但推荐)

编辑sshd_config,确保端口与socket配置一致:

vim /etc/ssh/sshd_config

修改或添加:

Port 8888

三、重载systemd并重启服务

执行以下命令,使配置生效:

systemctl daemon-reload
systemctl restart ssh.socket
systemctl restart sshd.service

四、 验证

使用以下命令检查SSH是否在新端口监听

ss -tlnp | grep ssh

输出中应显示新端口(如8888)正在监听

参考

正文完
 0
honeok
版权声明:本站原创文章,由 honeok 于2025-11-16发表,共计879字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码