首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >云服务器养龙虾Openclaw安全第一步:更换SSH端口(Ubuntu 20.04+篇)

云服务器养龙虾Openclaw安全第一步:更换SSH端口(Ubuntu 20.04+篇)

作者头像
用户6948990
发布2026-03-13 12:53:30
发布2026-03-13 12:53:30
3700
举报
文章被收录于专栏:wuterwuter

不要再使用下面的命令更换SSH端口了

代码语言:javascript
复制
sudo vim /etc/ssh/sshd_config

Ubuntu 目前已经在20.10及以后的版本默认启用`systemd socket`机制,`ssh.socket`会提前监听 SSH 端口,即使改了`sshd_config`,它仍会完全覆盖`sshd_config`的端口配置。

第一步:在防火墙中放行新端口(假设为8888)

在更改端口之前,务必先在防火墙中允许新端口通过,否则你可能会被锁在服务器外面。

如果你使用的是 UFW 防火墙,请运行:

代码语言:javascript
复制
sudo ufw allow 8888/tcp
sudo ufw reload

第二步:修改 systemd ssh.socket 配置

使用 systemctl edit命令来创建一个覆盖默认配置的 drop-in 文件:

代码语言:javascript
复制
sudo systemctl edit ssh.socket

这会打开一个文本编辑器。在顶部的空白区域(位于 ### Lines below this comment will be discarded 注释之上),添加以下内容:

代码语言:javascript
复制
[Socket]
ListenStream=
ListenStream=0.0.0.0:8888
ListenStream=[::]:8888

原理解释:第一行空的ListenStream=是必须的,它用于清除系统默认的 22 端口配置。第二行 则是绑定新端口。如果不加第一行,SSH 将同时监听 22 和 8888 端口。

保存并退出编辑器(Ctrl+O 保存,Enter 确认,Ctrl+X 退出)。

第三步:重载 systemd 并重启 SSH Socket

应用刚刚的修改:

代码语言:javascript
复制
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket

可以通过以下命令检查 socket 是否已经在监听新端口:

代码语言:javascript
复制
sudo systemctl status ssh.socket

在输出信息中,你应该能看到 Listen: [::]:8888(Stream) 类似字样。

第四步:测试新端口连接

⚠️ 警告:请千万不要关闭当前的 SSH 终端窗口!

打开一个全新的终端窗口,尝试使用新端口连接你的服务器

第五步:清理收尾工作(可选)

如果你的新端口测试连接完全正常,你可以回到旧终端,将防火墙中原本的 22 端口关闭,以提高安全性:

代码语言:javascript
复制
sudo ufw delete allow 22/tcp
sudo ufw reload

如果新的8888连接不上:

如果是阿里云/腾讯云,需要在安全组放行相应端口

在iptables检查底层防火墙

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-03-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一步:在防火墙中放行新端口(假设为8888)
  • 第二步:修改 systemd ssh.socket 配置
  • 第三步:重载 systemd 并重启 SSH Socket
  • 第四步:测试新端口连接
  • 第五步:清理收尾工作(可选)
  • 如果新的8888连接不上:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档