大家好,欢迎来到IT知识分享网。
nftables是用于替换iptables的数据包过滤框架,目前已在Centos、Debian等最新Linux系统发行版作为生产工具提供。相比较iptables,nftables优势更明显、支持对动态IP进行转发、端口段转发、自动检测本机IP等,以配置文件保存转发规则、对其设置更轻松。
前言:适用于centos8、redhat8、fedora31和支持nftables的debian系linux发行版如debian10,项目地址:https://github.com/arloor/nftables-nat-rust
1、一般情况下,Linux最新发行版会默认安装nftables,使用以下命令关闭firewalld、关闭selinux、开启内核端口转发、安装nftables;
service firewalld stop systemctl disable firewalld setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config sed -n '/^net.ipv4.ip_forward=1/'p /etc/sysctl.conf | grep -q "net.ipv4.ip_forward=1" echo 1 > /proc/sys/net/ipv4/ip_forward if [ $? -ne 0 ]; then echo -e "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p fi yum install -y nftables
2、下载可执行文件并赋予执行权限;
wget -O /usr/local/bin/nat https://zhujiget.com/wp-content/uploads/sh/dnat chmod +x /usr/local/bin/nat
3、创建systemd服务;
cat > /lib/systemd/system/nat.service <
Description=dnat-service
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/usr/local/bin/nat /etc/nat.conf
LimitNOFILE=
Restart=always
RestartSec=60
[Install]
WantedBy=multi-user.target
EOF
4、设置为开机启动,并启动该服务;
systemctl daemon-reload systemctl enable nat systemctl start nat
5、生成配置文件,也可以使用 vi /etc/nat.conf 命令添加删除修改转发规则;
- cat > /etc/nat.conf <
- SINGLE,22222,6666,zhujiget.com
- RANGE,10000,20000,zhujiget.com
- EOF
注释:
- 每行代表1个规则,行内以英文逗号分隔为4段内容
- SINGLE:代表单端口转发:本机22222端口转发到远程zhujiget.com域名或IP的6666端口
- SINGLE:代表端口段转发:本机10000-20000转发到远程zhujiget.com域名或IP的10000-20000端口
6、停止以及卸载命令
停止定时监听域名解析地任务 service nat stop 清空nat规则 nft add table ip nat nft delete table ip nat 禁止开机启动 systemctl disable nat
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/89448.html