如何用iptables保护centos服务器

273
2025/3/15 12:32:52
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

使用iptables保护CentOS服务器是一个复杂的过程,需要根据你的具体需求来配置规则。以下是一些基本的步骤和示例,帮助你开始使用iptables来增强服务器的安全性。

1. 清空现有规则

首先,清空现有的iptables规则,以确保你从一个干净的状态开始。

sudo iptables -F
sudo iptables -X

2. 设置默认策略

设置默认策略为DROP,这意味着任何未明确允许的流量都将被丢弃。

sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT

3. 允许本地回环接口的流量

确保本地回环接口(lo)的流量被允许。

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT

4. 允许已建立的连接

允许已建立的连接和相关的流量。

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

5. 允许SSH连接

如果你需要通过SSH访问服务器,允许SSH连接。假设SSH运行在默认端口22上。

sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

6. 允许HTTP和HTTPS连接

如果你需要通过HTTP(端口80)和HTTPS(端口443)访问服务器,允许这些连接。

sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT

7. 允许DNS查询

允许DNS查询(端口53)。

sudo iptables -A INPUT -p udp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p udp --sport 53 -m conntrack --ctstate ESTABLISHED -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 53 -m conntrack --ctstate ESTABLISHED -j ACCEPT

8. 允许特定IP地址访问

如果你只想允许特定IP地址访问服务器,可以添加相应的规则。

sudo iptables -A INPUT -s 192.168.1.1 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.2 -j ACCEPT

9. 保存规则

保存iptables规则,以便在系统重启后仍然有效。

sudo service iptables save

10. 启动iptables服务

确保iptables服务在系统启动时自动启动。

sudo systemctl enable iptables
sudo systemctl start iptables

注意事项

  • 备份规则:在修改iptables规则之前,建议备份当前的规则。
    sudo iptables-save > /etc/iptables/rules.v4
    
  • 测试规则:在生产环境中应用规则之前,先在测试环境中测试规则。
  • 监控和日志:定期监控和记录iptables日志,以便及时发现和响应潜在的安全威胁。

通过以上步骤,你可以使用iptables为你的CentOS服务器提供基本的安全保护。根据你的具体需求,可能需要添加更多的规则和配置。

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

推荐阅读: centos查看进程的方法有哪些