Iptables SNAT

       

                                                        Iptables SNAT

使內網的客戶端XP能正常的訪問公網上的web server。

RHEL5-1 公網web服務器
RHEL5-2 網關服務器
1臺XP內網客戶端

公網:VMnet2:172.16.1.0/255.255.0.0
私網:VMnet4:192.168.1.0/255.255.255.0

web server:
eth0:VMnet2
IP:  172.16.1.100
Mask:255.255.0.0

Iptables:
eth0:VMnet2
IP:  172.16.1.200
Mask:255.255.0.0

eth1:VMnet4
IP:  192.168.1.254
Mask:255.255.255.0

xp:
本地連接: VMnet4
IP:  192.168.1.100
Mask:255.255.255.0
GW:   192.168.1.254
===========================================================
web server   iptables     XP
172.16.1.100<------>eth0:172.16.1.200
     eth1:192.168.1.254<----->192.168.1.100
===========================================================

     
web server:
# mount /dev/cdrom /mnt
# rpm -ivh /mnt/Server/httpd-2.2.3-43-el5.i386.rpm
# echo "<h1>www.crushlinux</h1>" > /var/www/html/index.html
# service httpd start
# tail -f /var/log/httpd/access_log


Iptables:
永久開啓路由轉發:
----------------------------------------------------------
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p

臨時開啓路由轉發:
----------------------------------------------------------
echo 1 > /proc/sys/net/ipv4/ip_forward 或者
sysctl -w net.ipv4.ip_forward=1

公網地址固定:
# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to-source 172.16.1.200

公網地址通過ADSL撥號獲取:
# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE


XP:
ping 測試 172.16.1.100 外網服務器
瀏覽器訪問 172.16.1.100 web server

 

==============================================================================================
Iptables DNAT

1,在Internet中發佈企業內部的服務器

RHEL5-1 內網web服務器
RHEL5-2 網關服務器
1臺XP公網客戶端

公網:VMnet2:172.16.1.0/255.255.0.0
私網:VMnet4:192.168.1.0/255.255.255.0

web server:
eth0:VMnet4
IP:  192.168.1.100
Mask:255.255.255.0
GW:   192.168.1.254

Iptables:
eth0:VMnet2
IP:  172.16.1.200
Mask:255.255.0.0

eth1:VMnet4
IP:  192.168.1.254
Mask:255.255.255.0

xp:
本地連接: VMnet2
IP:  172.16.1.100
Mask:255.255.0.0
===========================================================
web server   iptables     XP
     eth0:172.16.1.200<----->172.16.1.100
192.168.1.100<------>eth1:192.168.1.254
===========================================================

web server:
# mount /dev/cdrom /mnt
# rpm -ivh /mnt/Server/httpd-2.2.3-43-el5.i386.rpm
# echo "<h1>www.crushlinux</h1>" > /var/www/html/index.html
# service httpd start
# tail -f /var/log/httpd/access_log


Iptables:
永久開啓路由轉發:
----------------------------------------------------------
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p

臨時開啓路由轉發:
----------------------------------------------------------
echo 1 > /proc/sys/net/ipv4/ip_forward 或者
sysctl -w net.ipv4.ip_forward=1

公網地址固定:
# iptables -t nat -F
# iptables -t nat -A PREROUTING -i eth0 -d 172.16.1.200 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100


XP:
瀏覽器訪問 172.16.1.200 web server

==========================================================
2,發佈內部的OpenSSH服務器

網關服務器(iptables)的公網ip:172.16.1.200 在2345端口啓用ssh
內網網站服務器的私網ip:192.168.1.100 在22端口啓用ssh
需求:可以通過Internet中的客戶端遠程管理網關及網站服務器
訪問:172.16.1.200 在2345端口連接iptables服務器
訪問:172.16.1.200 在2346端口連接web服務器

Iptables:
永久開啓路由轉發:
----------------------------------------------------------
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
# sysctl -p

臨時開啓路由轉發:
----------------------------------------------------------
echo 1 > /proc/sys/net/ipv4/ip_forward 或者
sysctl -w net.ipv4.ip_forward=1

# iptables -t nat -A PREROUTING -i eth0 -d 172.16.1.200 -p tcp --dport 2346 -j DNAT --to-destination 192.168.1.100:22


# vim /etc/ssh/sshd_config
Port 2345
# service sshd restart


XP:
通過Putty訪問172.16.1.200的2345 2346端口進行測試。

==============================================================================================

加載模塊
# modprobe 模塊名稱

# modeprobe ip_nat_ftp
# modeprobe ip_conntrack_ftp

# lsmod |grep "ftp"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章