1 ubuntu
1.1 规则
sudo iptables -A INPUT -p tcp --dport 3006 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 3306 -j REJECT
1.2 保存到/etc/iptables.rules文件中
sudo iptables-save > /etc/iptables.rules
1.3 自启动脚本
1.3.1 方式一
在 /etc/network/if-pre-up.d/中创建ip_rules.sh,权限为755
在其中添加:
#!/bin/bash
iptables-restore < /etc/iptables.rules
1.3.2 方式二
在/etc/rc.local里添加上面这段文件。权限为755。重启测试。
#!/bin/bash
iptables-restore < /etc/iptables.rules
2 centos
2.1 禁用防火墙
# 停止 firewalld
systemctl stop firewalld
# 禁用 firewalld
systemctl disable firewalld
2.2 安装 iptables
# 安装iptables
yum -y install iptables
# 安装iptables-services
yum -y install iptables-services
# 设置 iptables 开机启动
systemctl enable iptables
2.3 保存配置
# 开放 22 端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# 开放 21 端口(FTP)
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
# 开放 80 端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 开放 443 端口(HTTPS)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# 允许 ping
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# 允许接受本机请求之后的返回数据 RELATED,为 FTP 设置的
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 其他入站一律丢弃
iptables -P INPUT DROP
# 设置路由转发
# 10.8.1.0/24 网段可访问所有
iptables -t nat -A POSTROUTING -s 10.8.1.0/24 -j MASQUERADE
# 只允许 10.8.2.0/24 网段访问 192.168.2.66
iptables -t nat -A POSTROUTING -s 10.8.2.0/24 -d 192.168.2.66/32 -j MASQUERADE
2.4 保存上述所有配置
service iptables save
注意:iptables 安装后会生成 /etc/sysconfig/iptables 文件,我们修改的配置会保存到该文件中。
# Generated by iptables-save v1.4.21 on Thu Jun 23 22:29:50 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.1.0/24 -j MASQUERADE
-A POSTROUTING -s 10.8.2.0/24 -d 192.168.2.66/32 -j MASQUERADE
COMMIT
# Completed on Thu Jun 23 22:29:50 2022
# Generated by iptables-save v1.4.21 on Thu Jun 23 22:29:50 2022
*filter
:INPUT DROP [10:2341]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [54:7208]
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 7000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Thu Jun 23 22:29:50 2022
注意:所有转发需保持 ACCEPT 状态,否则会出现 openvpn* 能够正常连接,但是无法 ping 通内网其他机器的问题**
iptables -nL # 确保以下状态
Chain FORWARD (policy ACCEPT)
target prot opt source destination
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/79891.html