云主机SSH端口修改与安全加固配置
云主机SSH端口修改与安全加固配置指南一、SSH端口修改
1. 修改SSH配置文件
sudo vim /etc/ssh/sshd_config
找到 #Port 22 这行,修改为:
Port 你的新端口号# 如2222、2200等非标准端口
2. 重启SSH服务
sudo systemctl restart sshd
# 或
sudo service sshd restart
3. 防火墙放行新端口
# 对于firewalld
sudo firewall-cmd --permanent --add-port=新端口号/tcp
sudo firewall-cmd --reload
# 对于ufw
sudo ufw allow 新端口号/tcp
sudo ufw reload
4. 云平台安全组配置
[*]登录云控制台,在安全组规则中添加新端口的入站规则
[*]通常建议只允许特定IP或IP段访问SSH端口
二、SSH安全加固配置
1. 禁用root登录
在 /etc/ssh/sshd_config 中设置:
PermitRootLogin no
2. 限制用户登录
AllowUsers 用户名1 用户名2# 只允许特定用户
# 或
DenyUsers 用户名3 用户名4 # 禁止特定用户
3. 禁用密码认证,使用密钥认证
PasswordAuthentication no
PubkeyAuthentication yes
4. 限制登录尝试次数
MaxAuthTries 3
LoginGraceTime 60# 登录超时时间(秒)
5. 启用SSH协议版本2
Protocol 2
6. 禁用空密码
PermitEmptyPasswords no
7. 配置空闲超时
ClientAliveInterval 300# 每300秒检查一次客户端活动
ClientAliveCountMax 3 # 最大允许3次无响应后断开
8. 使用非标准SSH目录(可选)
修改 /etc/passwd 中SSH用户的Shell路径为自定义安全Shell
三、其他安全措施
[*]定期更新系统:
sudo apt update && sudo apt upgrade -y# Ubuntu/Debian
sudo yum update -y # CentOS/RHEL
[*]安装并配置fail2ban:
sudo apt install fail2ban# Ubuntu/Debian
sudo yum install fail2ban# CentOS/RHEL
[*]使用强密码策略:
[*]配置密码复杂度要求
[*]定期更换密码
[*]日志监控:
[*]定期检查 /var/log/auth.log 或 /var/log/secure
[*]设置日志轮转和告警
四、配置后验证
[*]从本地测试新端口连接:
ssh -p 新端口号 用户名@服务器IP
[*]确认旧端口22已无法连接(如果已禁用)
[*]检查SSH服务状态:
sudo systemctl status sshd
注意事项
[*]修改配置前建议备份原配置文件
[*]确保至少有一个活跃会话保持连接,避免配置错误导致无法连接
[*]在生产环境实施前,建议先在测试环境验证
[*]修改端口后,记得更新本地SSH配置(如果使用SSH客户端配置)
通过以上配置,可以显著提高云主机SSH服务的安全性,减少被暴力破解和自动化攻击的风险。
页:
[1]