Ubuntu服务器安全加固:通过内核参数防御拒绝服务攻击
在Linux服务器环境中,拒绝服务攻击(DoS)是常见的安全威胁之一。本文将结合实际案例,介绍如何通过配置内核参数来增强Ubuntu服务器的抗DoS能力。
问题背景
近期某金融公司运维团队发现其Ubuntu 20.04服务器频繁出现网络连接异常和系统响应缓慢的问题。通过tcpdump抓包分析和系统日志排查,初步判断是遭受了SYN Flood攻击。
安全加固方案
1. 配置TCP SYN Cookie保护
# 查看当前设置
sysctl net.ipv4.tcp_syncookies
# 启用SYN Cookie(临时)
sudo sysctl -w net.ipv4.tcp_syncookies=1
# 永久生效,编辑/etc/sysctl.conf
echo 'net.ipv4.tcp_syncookies = 1' >> /etc/sysctl.conf
2. 限制连接队列长度
# 设置半连接队列大小
sudo sysctl -w net.core.somaxconn=1024
sudo sysctl -w net.ipv4.tcp_max_syn_backlog=2048
# 永久配置
echo 'net.core.somaxconn = 1024' >> /etc/sysctl.conf
echo 'net.ipv4.tcp_max_syn_backlog = 2048' >> /etc/sysctl.conf
3. 防止ICMP洪水攻击
# 限制ICMP请求频率
sudo sysctl -w net.ipv4.icmp_ratelimit=100
sudo sysctl -w net.ipv4.icmp_ratemask=88089
# 永久配置
echo 'net.ipv4.icmp_ratelimit = 100' >> /etc/sysctl.conf
验证效果
重启后使用以下命令验证配置是否生效:
sysctl -p
sysctl net.ipv4.tcp_syncookies
sysctl net.core.somaxconn
通过上述配置,该服务器的SYN Flood攻击防护能力得到显著提升,系统稳定性明显改善。
注意事项
- 所有参数调整均需在测试环境验证后方可上线
- 建议定期审查和更新安全策略
- 配置修改需考虑业务实际需求,避免影响正常服务

讨论