本文最后编辑于 前,其中的内容可能需要更新。
之前使用privoxy用于分流代理,之后替换了方案,但是没有access-permit
同等的功能。
调查后发现使用iptables
可以实现访问控制的功能。
环境准备
设备: Raspberry Pi 3B+
OS: Debian 10 (buster) aarch64
1
| sudo apt install iptables
|
由于debian系默认不实用配置文件的方式持久化,因此补充安装以下包
1
| sudo apt install iptables-persistent netfilter-persistent
|
生成/应用配置文件
1 2 3 4 5 6 7 8 9 10 11
| netfilter-persistent save netfilter-persistent start
iptables-save > /etc/iptables/rules.v4 ip6tables-save > /etc/iptables/rules.v6
iptables-restore < /etc/iptables/rules.v4 ip6tables-restore < /etc/iptables/rules.v6
iptables -nL --line-numbers
|
规则配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| iptables -A INPUT -s 192.168.1.100 -p tcp -m tcp --dport 8080 -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p tcp -m tcp --dport 8080 -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p tcp -m multiport --dports 22,80:88 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 8080 -j DROP
iptables -A INPUT -p tcp -m tcp --dport 8080 -j REJECT
|