标签归档:linux端口转发

linux下端口转发映射的两种办法

最近抢到了2欧,不过可能是各位mjj天天下载国内资源,导致根本无法远程连接,只好用香港vps做个端口转发,速度现在刷刷的

iptable端口转发

iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A PREROUTING -d 本机IP -p tcp –dport 3389 -j DNAT –to-destination 目的端口IP:3389
service iptables save
service iptables restart

rinetd端口映射转发工具

1、下载wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
版本号rinetd 0.62

2、安装
tar zxvf rinetd.tar.gz
cd rinetd

3、运行make #可能会出现错误,需如下修改:
vi rinetd.c
输入/bindPort >= 65536 查询
输入/connectPort >= 65536查询

将查询到的65536修改为65535 不然在make的时候会提示超出系统最大定义端口

4、手动建目录/usr/man/man8

5、make install
成功后会提示文件路径install -m 700 rinetd /usr/sbin,即程序放在此位置

6、建立配置文件
/etc/rinetd.conf
内容格式:源IP 源端口 要跳转的IP 要跳转的端口

0.0.0.0 8080 172.19.94.3 8080
0.0.0.0 2222 192.168.0.103 3389
1.2.3.4 80     192.168.0.10 80

说明一下(0.0.0.0表示本机绑定所有可用地址)
将所有发往本机8080端口的请求转发到172.19.94.3的8080端口
将所有发往本机2222端口的请求转发到192.168.0.103的3389端口
将所有发往1.2.3.4的80端口请求转发到192.168.0.10的80端口

7、启动程序:rinetd

8、查看是否启动成功:netstat -tanulp|grep rinetd

9、加入开机启动:
vi /etc/rc.d/rc.local
加入/usr/sbin/rinetd

10、其他注意:
不支持FTP的跳转
要停掉程序:pkill rinetd

需要注意
1.rinetd.conf中绑定的本机端口必须没有被其它程序占用
2.运行rinetd的系统防火墙应该打开绑定的本机端口
例如:
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 1111 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 2222 -j ACCEPT