因为历史原因,程序配置了ftp端口只使用66[windows],但当[linux]修改vsftp端口的时候,
是不允许非root用户使用小于1024的端口的。
兼容的方法:
要么使用root [不可选]
要么端口转发 [可选]# Generated by iptables-save v1.4.7 on Fri Jan 26 10:13:42 2018
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 66 -j REDIRECT --to-ports 1024
#要使本机127.0.0.1也支持,则需要增加一条
-A OUTPUT -p tcp --dport 66 -j REDIRECT --to-ports 1024
COMMIT
# Completed on Fri Jan 26 10:13:42 2018
以上是本地转发,如果需要远程转发。
环境:
服务器A 公网IP XXX 内网IP 192.168.10.11
服务器B 内网IP 192.168.10.15
服务器C 内网IP 192.168.10.6 *windows
效果:
在其它电脑访问 XXX:12059 显示 服务器B的WEB页面内容
在其它电脑远程桌面 XXX:12058 能够连接到 服务器C的远程桌面
在服务器A 本机通过nc -v 或 curl没用,其它机器OK#附加操作:
echo 1 > /proc/sys/net/ipv4/ip_forward ##开启端口转发功能,临时生效。
#永久生效: vim /etc/sysctl.conf ##修改net.ipv4.ip_forward = 1
sysctl -p ##生效配置文件。
#转发到40的WEB测试
-I PREROUTING -m tcp -p tcp --dport 12059 -j DNAT --to-destination 192.168.10.15:80
-I POSTROUTING -m tcp -p tcp --dport 80 -d 192.168.10.15 -j SNAT --to-source 192.168.10.11
#转发到10.6的远程
-I PREROUTING -m tcp -p tcp --dport 12058 -j DNAT --to-destination 192.168.10.6:12058
-I POSTROUTING -m tcp -p tcp --dport 12058 -d 192.168.10.6 -j SNAT --to-source 192.168.10.11
#本地FTP转发
-A PREROUTING -p tcp -m tcp --dport 66 -j REDIRECT --to-ports 1024
-A OUTPUT -p tcp --dport 66 -j REDIRECT --to-ports 1024
COMMIT
# Completed on Mon Feb 26 11:21:52 2018
# Generated by iptables-save v1.4.7 on Mon Feb 26 11:21:52 2018
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [333811:81462762]
#远程转发必须配置
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -d 192.168.10.15 -p tcp --dport 80 -j ACCEPT
-A FORWARD -d 192.168.10.6 -p tcp --dport 12058 -j ACCEPT
#----------
非特殊说明,本博所有文章均为博主原创。
最新文章