一、基本环境
主机 | MacOs Sonoma 14.7 |
虚拟机 | Parallels Desktop 20 for Mac Pro Edition 版本 20.0.1 (55659) |
虚拟机-操作系统 | Ubuntu 22.04 最小安装 |
二、安装
apt-get install iptables -y
三、配置
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 1314 -j ACCEPT
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 1315 -j ACCEPT
具体什么端口看各自需要进行配置了
四、保存策略
mkdir /etc/iptables
# 后续持久化策略用到的路径
iptables-save > /etc/iptables/rules.v4
五、常用指令
# 列举所有策略
iptables -L -n --line-number
# 删除对应序号的策略
iptables -D INPUT 序号=
# 查看规则是否生效
iptables -L -n
六、规则持久化
以下内容转载:Ubuntu20自动开机加载/关机保存iptables配置_cerana的技术博客_51CTO博客
1.安装工具
apt install networkd-dispatcher
2.在routeable.d创建50-ifup-hooks
vim /etc/networkd-dispatcher/routable.d/50-ifup-hooks
脚本
#!/bin/sh
for d in up post-up; do
hookdir=/etc/network/if-${d}.d
[ -e $hookdir ] && /bin/run-parts $hookdir
done
exit 0
修改权限
chmod +x /etc/networkd-dispatcher/routable.d/50-ifup-hooks
3.在off.d创建50-ifup-hooks
vim /etc/networkd-dispatcher/off.d/50-ifdown-hooks
脚本
#!/bin/sh
for d in down post-down; do
hookdir=/etc/network/if-${d}.d
[ -e $hookdir ] && /bin/run-parts $hookdir
done
exit 0
修改权限
chmod +x /etc/networkd-dispatcher/off.d/50-ifdown-hooks
4.建立脚本,启动时加载规则
mkdir /etc/network
mkdir /etc/network/if-up.d
vim /etc/network/if-up.d/iptables-restore
#!/bin/bash
iptables-restore < /etc/iptables/rules.v4
权限修改
chmod +x /etc/network/if-up.d/iptables-restore
5.测试一下
# 测试脚本
/bin/run-parts /etc/network/if-up.d/ --test
# 执行后输出以下内容,表示成功,再次重启电脑后会自动加载iptables的规则
/etc/network/if-up.d//iptables-restore