iptables 是 Linux 系统中用于配置内核防火墙的一个命令行工具。它允许系统管理员定义规则,这些规则决定了数据包是否被接受、拒绝或丢弃。以下是一些基本的 iptables 使用方法:
查看规则:
iptables -Liptables -L INPUT(查看 INPUT 链的规则)iptables -L INPUT --line-numbers清空规则:
iptables -Fiptables -F INPUT允许规则:
iptables -A INPUT -s 192.168.1.100 -j ACCEPTiptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT拒绝规则:
iptables -A INPUT -s 192.168.1.100 -j DROPiptables -A INPUT -p tcp --dport 22 -j DROP保存规则:
iptables-save > /etc/iptables/rules.v4iptables-restore < /etc/iptables/rules.v4默认策略:
iptables -P INPUT DROPiptables -P INPUT ACCEPT删除规则:
iptables -D INPUT 3iptables -D INPUT -s 192.168.1.100 -j DROP插入规则:
iptables -I INPUT 1 -s 192.168.1.100 -j ACCEPT修改规则:
iptables -R INPUT 3 -s 192.168.1.100 -j DROP假设你想允许来自特定 IP 地址的 SSH 连接,并拒绝所有其他 IP 地址的 SSH 连接,可以这样做:
# 允许特定 IP 的 SSH 连接
iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT
# 拒绝所有其他 IP 的 SSH 连接
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables 规则时要小心,错误的规则可能导致系统无法访问。iptables 时,最好使用 -I 和 -D 选项来插入和删除规则,而不是 -A 和 -R,以避免意外覆盖现有规则。通过这些基本命令,你可以开始配置和管理 Linux 系统的防火墙规则。