centos7怎么修改ssh默认端口

SSH(Secure Shell)是管理Linux服务器的核心工具,但其默认端口22常成为恶意扫描和攻击的目标。通过修改默认端口,可显著提升服务器安全性,减少自动化攻击风险。本文将以CentOS 7为例,分步详解端口修改流程,涵盖配置调整、SELinux与防火墙设置、服务重启及故障排查,确保操作零遗漏。

一、修改前的准备工作

1. 备份配置文件:为防止误操作导致无法登录,建议先备份SSH配置文件:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

2. 选择新端口号:端口号需在10000~65535之间,避免与系统服务冲突。例如,选用端口5002610086

二、分步修改SSH端口

1. 编辑SSH配置文件

  • 使用root权限打开文件:vi /etc/ssh/sshd_config
  • 找到#Port 22行,取消注释并新增端口(如50026),保留22端口作为应急:
    Port 22
    Port 50026
  • 保存并退出编辑器。

2. 配置SELinux允许新端口

SELinux默认仅放行22端口,需手动添加新端口:

  • 安装管理工具(如未安装):
    yum -y install policycoreutils-python
  • 添加端口到SELinux策略:
    semanage port -a -t ssh_port_t -p tcp 50026
  • 验证是否添加成功:
    semanage port -l | grep ssh

3. 放行防火墙端口

  • 添加新端口到防火墙规则:
    firewall-cmd --zone=public --add-port=50026/tcp --permanent
  • 重载防火墙生效:
    firewall-cmd --reload
  • 确认端口已开放:
    firewall-cmd --zone=public --query-port=50026/tcp

4. 重启SSH服务并验证

  • 重启服务:systemctl restart sshd.service
  • 检查服务状态:systemctl status sshd
  • 使用新端口登录测试:
    ssh username@服务器IP -p 50026

三、进阶配置与安全优化

1. 关闭旧端口(22):确认新端口可用后,编辑sshd_config删除Port 22行,再次重启SSH服务。

2. 安全增强措施

  • 使用密钥认证替代密码登录,防范暴力破解
  • 限制IP白名单访问,结合防火墙规则缩小攻击面

四、常见问题与解决方案

  • 问题1:semanage命令未找到。
    解决:执行yum provides semanage安装依赖包
  • 问题2:SELinux报错“Could not get direct transaction lock”。
    解决:重命名锁文件:
    mv /etc/selinux/targeted/modules/semanage.trans.LOCK /etc/selinux/targeted/modules/semanage.trans.LOCK.back
  • 问题3:云服务器端口未通(如阿里云)。
    解决:检查安全组规则,手动添加新端口到入站规则

五、结语:安全升级与优惠指引

修改SSH端口是服务器安全的基础防线,可有效阻断80%的自动化攻击。结合密钥认证与防火墙策略,能构建多层防护体系。若您计划部署云服务,推荐在购买阿里云产品前,通过云小站平台领取满减代金券,享受优惠的同时保障业务安全。

内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。

本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/15076.html

(0)
上一篇 2025年11月4日 上午5:08
下一篇 2025年11月4日 上午5:09
联系我们
关注微信
关注微信
分享本页
返回顶部