温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux下如何更改SSH端口号

发布时间:2022-02-10 15:31:38 阅读:180 作者:iii 栏目:开发技术
Linux服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>
# Linux下如何更改SSH端口号

## 前言

SSH(Secure Shell)是Linux系统中常用的远程管理协议,默认使用22端口。由于该端口广为人知,容易成为攻击目标。本文将详细介绍如何通过修改SSH端口号来提升系统安全性,涵盖配置修改、防火墙调整及SELinux设置等关键步骤。

---

## 一、为什么需要修改SSH端口?

### 1. 安全风险
- **暴力破解攻击**:22端口是默认目标,攻击者常通过自动化工具尝试破解。
- **减少扫描流量**:修改端口可降低服务器被随机扫描的概率。

### 2. 注意事项
- 避免使用常见端口(如80、443)。
- 确保新端口未被其他服务占用(可通过`netstat -tuln`或`ss -tuln`检查)。

---

## 二、修改SSH端口详细步骤

### 1. 备份配置文件
```bash
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

2. 编辑SSH配置文件

使用文本编辑器(如nano或vim)打开配置文件:

sudo nano /etc/ssh/sshd_config

找到以下行(若被注释则取消注释):

#Port 22

修改为(例如改为2222):

Port 2222

3. 多端口监听(可选)

如需同时监听多个端口,可添加多行:

Port 22
Port 2222

三、防火墙配置

1. 开放新端口

根据系统防火墙工具选择对应命令:

UFW(Ubuntu/Debian)

sudo ufw allow 2222/tcp
sudo ufw reload

FirewallD(RHEL/CentOS)

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload

iptables(传统系统)

sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
sudo service iptables save  # 保存规则

2. 验证防火墙规则

sudo ufw status          # UFW
sudo firewall-cmd --list-ports  # FirewallD
sudo iptables -L -n     # iptables

四、SELinux配置(仅限RHEL/CentOS)

若系统启用SELinux,需更新策略以允许新端口:

1. 检查当前SELinux允许的SSH端口

sudo semanage port -l | grep ssh

2. 添加新端口

sudo semanage port -a -t ssh_port_t -p tcp 2222

3. 验证更改

sudo semanage port -l | grep ssh

五、重启SSH服务并测试

1. 重启服务

sudo systemctl restart sshd  # 或 sudo service ssh restart

2. 测试连接

保留当前会话,新开终端测试:

ssh -p 2222 username@server_ip

确认连接成功后,再关闭旧会话。

3. 关闭旧端口(可选)

在配置文件中删除Port 22并重启SSH服务。


六、常见问题排查

1. 连接失败

  • 检查服务状态sudo systemctl status sshd
  • 查看日志journalctl -u sshd -f
  • 确认端口监听ss -tuln | grep 2222

2. SELinux相关错误

若出现权限问题,可临时禁用SELinux测试:

sudo setenforce 0

(生产环境不建议长期禁用)


七、高级安全建议

  1. 禁用root登录
    sshd_config中添加:

    PermitRootLogin no
    
  2. 密钥认证替代密码
    使用ssh-keygen生成密钥对,并配置:

    PasswordAuthentication no
    
  3. Fail2Ban防护
    安装Fail2Ban自动封禁暴力破解IP:

    sudo apt install fail2ban  # Debian/Ubuntu
    sudo yum install fail2ban  # RHEL/CentOS
    

结语

通过修改SSH默认端口,结合防火墙和SELinux的配置,可显著提升系统安全性。建议定期审查日志并更新安全策略,以应对不断变化的威胁环境。

注意:操作前请确保有其他访问途径(如控制台),避免配置错误导致无法连接。 “`

本文共约1200字,涵盖从基础配置到高级安全的完整流程,适合不同水平的Linux用户参考。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×