iptables

来自Gea-Suan Lin's Wiki
Gslin讨论 | 贡献2021年5月6日 (四) 07:29的版本 →‎快速設定
跳到导航 跳到搜索

iptables是一套在Linux上常见的防火墙软件。

简介

iptables是一套Linux上常见的防火墙软件,可以安装iptables-persistent确保在开机时生效。

范例

一般

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -p icmp -j ACCEPT
sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -P INPUT DROP

有IPv6的机器要另外加上IPv6相关的设定:

sudo ip6tables -A INPUT -i lo -j ACCEPT
sudo ip6tables -A INPUT -p ipv6-icmp -j ACCEPT
sudo ip6tables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo ip6tables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo ip6tables -P INPUT DROP

NAT

sudo iptables -t nat -A POSTROUTING -s 192.168.254.0/24 -o ens5 -j MASQUERADE

快速设定

给我自己用的:

sudo iptables -A INPUT -i lo -j ACCEPT; sudo iptables -A INPUT -p icmp -j ACCEPT; sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT; sudo iptables -A INPUT -s 114.34.121.114 -j ACCEPT; sudo iptables -A INPUT -s 35.234.52.75 -j ACCEPT; sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT; sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT; sudo iptables -P INPUT DROP; sudo ip6tables -A INPUT -i lo -j ACCEPT; sudo ip6tables -A INPUT -p ipv6-icmp -j ACCEPT; sudo ip6tables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT; sudo ip6tables -A INPUT -p tcp --dport 80 -j ACCEPT; sudo ip6tables -A INPUT -p tcp --dport 443 -j ACCEPT; sudo ip6tables -P INPUT DROP; sudo apt install -y iptables-persistent

相关连结

外部链接