Linux下使用iptables配置防火墙端口转发
Posted passedbylove
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下使用iptables配置防火墙端口转发相关的知识,希望对你有一定的参考价值。
1、背景
一些情况下,在linux上面我们想使用80-1024之间的端口,这个时候需要root权限。
当时root权限容易被提权,特别是早起那些Struct2,漏洞爆出的时候,一抓一个准-root权限,然后系统沦陷,被黑客控制住了。
开启端口转发:
vim /etc/sysctl.conf
#前面的#注释去掉
net.ipv4.ip_forward=1
当然不使用root,低权限账号也是可以使用80-1024之间端口的,我们需要在防火墙配置nat规则。
例如把外网访问来的TCP 80端口重定向到8080
iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -I OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8080
注意:一定要把ssh端口添加到防火墙放行规则里,否则生效后无法登录
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22
iptables -t nat -L
然后用以下命令查看配置结果(笔者还配置了443转发8443)
编辑网卡信息的启动关闭脚本
在/etc/network/interfaces的末尾添加如下一行:
pre-up iptables-restore < /etc/iptables.rules
如果想在关机的时候自动保存修改过的iptables规则,可添加如下行
post-down iptables-save > /etc/iptables.rules
以上是关于Linux下使用iptables配置防火墙端口转发的主要内容,如果未能解决你的问题,请参考以下文章