阅读量:269
如果你需要允许Web服务器接收HTTP(80)和HTTPS(443)请求,可以添加以下规则:
sudo iptables -A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
3. 允许DNS查询
允许服务器进行DNS查询(默认端口53):
sudo iptables -A INPUT -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 53 -m state --state ESTABLISHED -j ACCEPT
4. 阻止所有其他入站连接
默认情况下,阻止所有入站连接,只允许已经建立的连接和上述特定端口的连接:
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
5. 允许特定IP地址访问所有端口
如果你需要允许某个特定IP地址访问服务器的所有端口,可以使用以下规则:
sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
6. 保存iptables规则
为了确保重启后规则仍然有效,可以使用iptables-persistent工具保存规则:
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
7. 查看当前iptables规则
你可以使用以下命令查看当前的iptables规则:
sudo iptables -L -v -n
注意事项
通过以上步骤,你可以使用iptables在Ubuntu系统上实现基本的安全策略。根据具体需求,你可以进一步调整和扩展这些规则。