在Ubuntu系统中,配置SSH安全策略可以通过修改SSH配置文件/etc/ssh/sshd_config
来实现。以下是一些常见的安全策略配置建议:
将SSH的默认端口从22改为其他端口,可以减少自动化攻击的风险。
Port 2222
禁止直接使用root用户登录,可以通过SSH密钥认证来提高安全性。
PermitRootLogin no
禁用密码认证,强制使用SSH密钥进行身份验证。
PasswordAuthentication no
PubkeyAuthentication yes
只允许特定用户通过SSH登录。
AllowUsers user1 user2 user3
防止暴力破解攻击,可以限制SSH连接的速率。
MaxAuthTries 3
LoginGraceTime 15
确保使用强加密算法。
Ciphers aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-512,hmac-sha2-256
禁用SSH服务中的不必要功能,如X11转发、TCP/IP端口转发等。
X11Forwarding no
AllowTcpForwarding no
使用ufw
或iptables
配置防火墙规则,只允许特定IP地址访问SSH端口。
# 使用ufw
sudo ufw allow 2222/tcp
sudo ufw enable
# 使用iptables
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP
确保SSH服务及其依赖项保持最新,以防止已知的安全漏洞。
sudo apt update
sudo apt upgrade openssh-server
启用详细的日志记录,并定期检查SSH日志文件以发现异常活动。
LogLevel VERBOSE
SyslogFacility AUTH
修改完/etc/ssh/sshd_config
文件后,需要重启SSH服务以使更改生效。
sudo systemctl restart sshd
通过以上步骤,可以显著提高Ubuntu系统中SSH服务的安全性。请根据实际需求和环境调整配置。