CentOS 修改 SSH 服务的默认端口(22)

半兽人 发表于: 2025-01-05   最后更新时间: 2025-01-05 21:09:27  
{{totalSubscript}} 订阅, 90 游览

在 CentOS 7 中修改 SSH 服务的默认端口(例如从 22 改为其他端口)

1. 修改 SSH 配置文件

编辑 SSH 的配置文件 /etc/ssh/sshd_config

sudo vi /etc/ssh/sshd_config

找到 #Port 22,取消注释并修改为其他端口(例如 2222):

Port 2222

保存文件后退出。


2. 检查 SELinux 设置

在 CentOS 7 上,SELinux 可能会阻止 SSH 使用非默认端口,需要更新 SELinux 配置。

查看 SELinux 状态:

getenforce
  • 如果返回 Enforcing,说明 SELinux 启用。

3. 重新启动 SSH 服务

应用配置更改:

sudo systemctl restart sshd

4. 测试新端口

从本地或远程测试连接:

ssh -p 2222 <用户名>@<IP地址>

权限

如果报出权限不足(如 Permission denied 或其他错误),可以按照以下步骤排查和解决:

临时关闭 SELinux

关闭 SELinux 可以解决因 SELinux 导致的 SSH 修改端口权限问题。但从安全角度考虑,不建议关闭 SELinux,而是推荐配置 SELinux 规则以支持新端口。如果你决定关闭 SELinux,可以按照以下步骤操作:

临时关闭 SELinux,不需要重启系统:

sudo setenforce 0

验证 SELinux 状态:

getenforce
  • 如果返回 Permissive,说明 SELinux 已被关闭。

此方式仅在当前运行的会话中有效,重启后会恢复为启用状态。

注意事项

  • 不建议关闭 SELinux:关闭 SELinux 会降低系统安全性,尤其是在生产环境中。SELinux 提供了一层额外的保护,限制恶意进程的行为。
  • 如果只是为了修改 SSH 端口,建议按照临时修改 SELinux 规则,而不是直接关闭 SELinux。
更新于 2025-01-05

查看CentOS更多相关的文章或提一个关于CentOS的问题,也可以与我们一起分享文章