�b�ͧ��F�������w���[������A�o�ӳ��`�D�n�N�n�w��y������z�Ӷi�椶�ФF�I�ثe�����������D�n�O�H Linux Kernel 2.4 ���� iptables ���D���A�� iptables �i�H�ϥΫ��O�ӤU�F�A�]�i�H�z�L�s�g shell script �Ӷi����O����X�C�������H����ߺD�ϥ� scripts �Ӷi�� iptables ������W���O�I���F iptables ���~�A�ƹ�W�A���²�檺�٦� TCP Wrappers �o�Ӫ��N��A�L�h�D�n�O�w��Y�ǪA�ȨӶi��z���o�I���������e�D�n�N�O�b���гo��ӭ��n��������n��F�I |
[root@test
root]# lsmod
# �Y���o�{ ipchains ���r�ˡA���ܨt�Τ��p�߸��J�F ipchains �F�A�ШϥΡG [root@test root]# rmmod ipchains # �o�˴N������� ipchains �F�I�M����J iptables �a�I [root@test root]# modprobe ip_tables |
[root@test
root]# iptables [-t tables] [-L] [-n]
�Ѽƻ����G -t�G�᭱�� iptables �� table �A�Ҧp nat �� filter �A�p�G�S�� -t table �@�@���ܡA����w�]�N�O -t filter �o�� table ��I -L�G�C�X�ثe�� table ���W�h -n�G���i�� IP �P HOSTNAME ���ഫ�A�ù���ܰT�����t�|�֫ܦh�I �d�ҡG �@ [root@test root]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination �@ Chain FORWARD (policy ACCEPT) target prot opt source destination �@ Chain OUTPUT (policy ACCEPT) target prot opt source destination �@ # �J�Ӭݨ�W���A�]���S���[�W -t ���ѼơA�ҥH�w�]�N�O filter �o�Ӫ���A # �b�o�Ӫ���������T����A���O�O INPUT, OUTPUT �P FORWARD �A�ӥB�]�� # �S���W�h�A�ҥH�W�h�̭����O�Ū��I�P�ɪ`�N�@�U�A�b�C�� chain ���᭱ () # �̭��A�|�o�{�� policy ��a�I���N�O�y�w�]�ʧ@(�F��)�z���I�H�W���ӬݡA # ���M�ڭ̱ҰʤF iptables �A���O�ڭ̨S���]�w�W�h�A�M��F���S�O ACCEPT�A # �ҥH�y����ʥ]���|�����z���N���I �@ [root@test root]# iptables -t nat -L -n Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING
(policy ACCEPT)
Chain OUTPUT
(policy ACCEPT)
|
[root@test
root]# /sbin/iptables [-t tables] [-FXZ]
�Ѽƻ����G -F �G�M���Ҧ����w�q�w���W�h�F -X �G�����Ҧ��ϥΪ̫إߪ� chain (���ӻ����O tables �^�o�F -Z �G�N�Ҧ��� chain ���p�ƻP�y�q�έp���k�s �d�ҡG [root@test root]# /sbin/iptables -F [root@test root]# /sbin/iptables -X [root@test root]# /sbin/iptables -Z [root@test root]# /sbin/iptables -t nat -F # �Ъ`�N�A�p�G�b���ݳs�u���ɭԡA�y�o�T�ӫ��O�����n�� scripts �ӳs�����z�A # ���M�֩w�y�|���z�ۤv�Q�D���צb���~�I�z |
[root@test
root]# /sbin/iptables [-t tables] [-P] [INPUT,OUTPUT,FORWARD|
PREROUTING,OUTPUT,POSTROUTING] [ACCEPT,DROP]
�Ѽƻ����G -P �@�@�G�w�q�F��( Policy )�C�`�N�A�o�� P ���j�g�ڡI INPUT�@�G�ʥ]����J�D������V�F OUTPUT �G�ʥ]����X�D������V�F FORWARD�G�ʥ]�����i�J�D���ӦV�~�A�ǿ�X�h����V�F PREROUTING �G�b�i�J���Ѥ��e�i�檺�u�@�F OUTPUT�@ �@�G�ʥ]����X�D������V�F POSTROUTING�G�b�i�J���Ѥ���i�檺�u�@�C �d�ҡG [root@test root]# /sbin/iptables -P INPUT DROP [root@test root]# /sbin/iptables -P OUTPUT ACCEPT [root@test root]# /sbin/iptables -P FORWARD ACCEPT [root@test root]# /sbin/iptables -t nat -P PREROUTING ACCEPT [root@test root]# /sbin/iptables -t nat -P OUTPUT ACCEPT [root@test root]# /sbin/iptables -t nat -P POSTROUTING ACCEPT # ���F INPUT ���~�A��L�����L�]�w�������o�I�b�W�����]�w����A # �ڭ̪��D���o�X���ʥ]�i�H�X�h�A���O����ʥ]���L�k�i�J�A # �]�A�^�����ڭ̰e�X�ʥ]���^���ʥ](ACK)�]�L�k�i�J��I ^_^ |
[root@test
root]# iptables [-t filter] [-AI INPUT,OUTPUT,FORWARD]
\
> [-io interface] [-p tcp,udp,icmp,all] [-s IP/network] [--sport ports] \ > [-d IP/network] [--dport ports] -j [ACCEPT,DROP] �Ѽƻ����G -A �@�G�s�W�[�@���W�h�A�ӳW�h�W�[�b�̫᭱�A�Ҧp�쥻�w�g���|���W�h�A �@�@ �@�ϥ� -A �N�i�H�[�W�Ĥ����W�h�I -I�@ �G���J�@���W�h�A�p�G�S���]�w�W�h���ǡA�w�]�O���J�ܦ��Ĥ@���W�h�A �@�@ �@�Ҧp�쥻���|���W�h�A�ϥ� -I �h�ӳW�h�ܦ��Ĥ@���A�ӭ쥻�|���ܦ� 2~5 �@INPUT�@�G�W�h�]�w�� filter table �� INPUT �� �@OUTPUT �G�W�h�]�w�� filter table �� OUTPUT �� �@FORWARD�G�W�h�]�w�� filter table �� FORWARD �� �@ -i�@�@�@ �G�]�w�y�ʥ]�i�J�z�������d���� -o�@�@�@�@�G�]�w�y�ʥ]�y�X�z�������d���� �@interface �G�����d�����A�Ҧp ppp0, eth0, eth1.... �@ -p �@�G�Ъ`�N�A�o�O�p�g��I�ʥ]����w�աI �@tcp �G�ʥ]�� TCP ��w���ʥ]�F �@upd �G�ʥ]�� UDP ��w���ʥ]�F �@icmp�G�ʥ]�� ICMP ��w�B �@all �G���ܬ��Ҧ����ʥ]�I �@ -s �G�ӷ��ʥ]�� IP �Ϊ̬O Network ( ���� )�F --sport�G�ӷ��ʥ]�� port ���X�A�]�i�H�ϥ� port1:port2 �p 21:23 �@�@�@�@ �P�ɳq�L 21,22,23 ���N�� -d �G�ؼХD���� IP �Ϊ̬O Network ( ���� )�F --dport�G�ؼХD���� port ���X�F �@ -j �@�@�G�ʧ@�A�i�H�����U���ʧ@�F �@ACCEPT �G�����ӫʥ] �@DROP�@ �G���ʥ] �@LOG�@�@�G�N�ӫʥ]����T�O���U�� (�w�]�O���� /var/log/messages �ɮ�) �@ �d�ҡG �@ �d�Ҥ@�G�Ҧ����Ӧ� lo �o�Ӥ������ʥ]�A�����H���� [root@test root]# iptables -A INPUT -i lo -j ACCEPT # �`�N�@�U�A�]�� -d, --dport, -s, --sport �����ѼƳ��S���]�w�A�o���ܡG # ���ʥ]�Ӧۦ�B�Υh����̡A�u�n�O�Ӧ� lo �o�Ӥ����A�N���H�����I # �o���[�������n���A�N�O�y�S���]�w���W�w�A�h���ܸӳW�w���������z���N��I # �Ҧp�o�Ӯרҷ����A���� -s, -d...�������ѼƨS���W�w�ɡI �@ �d�ҤG�G�Ӧ� 192.168.0.1 �o�� IP ���ʥ]�����H�����G [root@test root]# iptables -A INPUT -i eth0 -p tcp -s 192.168.0.1 -j ACCEPT # �s�W�@���W�h�A�u�n�O�Ӧ۩� 192.168.0.1 ���ʥ]�A���ץL�n�h���̡A # �ϥΪ��O���Ө�w (port) �D�����|���H�������N��� �@ �d�ҤT�G�Ӧ� 192.168.1.0 �o�� C Class �����쪺����@���q���A�N���H�����I [root@test root]# iptables -A INPUT -i eth0 -p tcp -s 192.168.1.0/24 -j ACCEPT # �o�ӬO���쪺�g�k��I�y�L�`�N�@�U���O�A�b�d�ҤG�����ڭ̶Ȱw��@�� IP �A # �ܩ�o�ӽd�ҷ����A�h�O�w���Ӻ���Ӷ}��o�I�Ӻ��쪺�g�k�i�H�O�G # 192.168.1.0/24 �]�i�H�O 192.168.1.0/255.255.255.0 �����������I �@ �d�ҥ|�G�Ӧ� 192.168.1.25 ���ʥ]�����L���h�I [root@test root]# iptables -A INPUT -i eth0 -p tcp -s 192.168.1.25 -j DROP �@ �d�Ҥ��G�u�n�O�Q�i�J������ port 21 ���ʥ]�N���L��� [root@test root]# iptables -A INPUT -i eth0 -p tcp --dport 21 -j DROP �@ �d�Ҥ��G�Ӧ� 192.168.0.24 �o�� IP ���ʥ]�A�Q�n��ڪ� 137,138,139 ��f�ɡA������ [root@test root]# iptables -A INPUT -i eth0 -p tcp -s 192.168.0.24 \ > --dport 137:139 -j ACCEPT �@ �d�ҤC�G�u�n�O��IJ��ڥD���� port 25 �N�N�ӫʥ]�O�� (LOG) �U�� [root@test root]# iptables -A INPUT -p tcp --dport 25 -j LOG # �٬O�ЯS�O�`�N��y�W�h�����DZƦC�z�����D��I |
iptables ����L�����Ѽƻ����G
�@ [!] --syn �G�o�ӳ]�w�ȯ�Ω� -p tcp ���W�h���A�]�� TCP �ʥ]�� syn ���X�Цs �@�@�b�ڡI�� TCP �ʥ]�s�� syn �X�СA���ܳo�ӳs�u�O���y�D�ʡz�s�L�Ӫ��I �@�@�Y�� --syn ���e�[�W ! ���ܸӫʥ]���a�� syn ���N���(��n�ۤϤ��N�I) �@ �d�Ҥ@�G�N�Ӧ� 192.168.100.200 ���D�ʳs�u�ʥ]���G [root@test root]# iptables -A INPUT -p tcp -i eth0 -s 192.168.1.235 \ > --syn -j DROP �@ --icmp-type�G�i�H�ި� ICMP �ʥ]���Y�������I�ٰO�o�ڭ̦b ������¦ �̭� �@�@�ͨ쪺 ICMP ���Y�������a�I��աI�p�G�z���Q�n����� ping ��z�������A �@�@�N�O�Q�γo�Ӷ��ذաI �@ �d�ҤG�G�O���D�� ping �ڭ̥D���ɡA�ڭ̥D�������H�^�� [root@test root]# iptables -A INPUT -p icmp --icmp-type 8 -j DROP # ���z�U�F�o�˪����O��A�N���ܥ��ӧO�H��z�ϥ� ping ���ɭԡA # �ڭ̪��D���N���|�^���A�ҥH���D���N�|��ܧڭ̥D���y�L�k�s���z�����A�I �@ -m �G���ܫʥ]�����A�A���A�����U�ƺءG �@-m mac --mac-source aa:bb:cc:dd:ee:ff �@�@�@�o�ӴN�O�ڭ̤W�����쪺�i�H����y�����d�d��, MAC�z���]�w��k�o�I �@�@�@���� aa:bb:cc:dd:ee:ff �N�O�����d�� MAC �I �@-m state --state <���A> �@�@�@���ƺت��A�A���A���G �@�@�@INVALID�G�L�Ī��ʥ]�A�Ҧp��Ư}�l���ʥ]���A �@�@�@ESTABLISHED�G�w�g�s�u���\���s�u���A�F �@�@�@NEW�G�Q�n�s�إ߳s�u���ʥ]���A�F �@�@�@RELATED�G�o�ӳ̱`�ΡI���ܳo�ӫʥ]�O�P�ڭ̥D���o�e�X�h���ʥ]�����A �@�@�@�@�i��O�^���ʥ]�Ϊ̬O�s�u���\���᪺�ǰe�ʥ]�I�o�Ӫ��A�ܱ`�Q�]�w�A �@�@�@�@�]���]�w�F�L����A�u�n���ӥѥ����o�e�X�h���ʥ]�A�Y�ϧڭ̨S���]�w �@�@�@�@�ʥ]�� INPUT �W�h�A�Ӧ������ʥ]�٬O�i�H�i�J�ڭ̥D����I �@�@�@�@�i�H²�Ƭ۷��h���]�w�W�h�աI �@ �d�ҤT�G�� bb:cc:dd:aa:ee:ff �����d�L�k�ϥΧڭ̥D�����귽 [root@test root]# iptables -A INPUT -p all -m mac --mac-source \ > 01:01:01:01:02:01 -j DROP # �o�ؤ覡�i�H�ΨӺި�����d�d����I�N���ȧO�H�ϥ� IP �d�ǤF�I �@ �d�ҥ|�G���w�g�إߩΪ̬O�P�ڭ̥D���������^���ʥ]�q�L�A���O�����X�k���A �@�@�@�@�H�ηQ�n���շs�إߪ��ʥ]�Q��צb�~�I [root@test root]# iptables -A INPUT -p tcp -m state \ > --state ESTABLISHED,RELATED -j ACCEPT [root@test root]# iptables -A INPUT -p tcp -m state \ > --state INVALID,NEW -j DROP # �ݭn�]�w�����I�ܩ�ʥ]���A�h�i�H�ϥγr���j�}�I�r�����䤣�n���Ů� �@ -j <�ʧ@>�G���F����`���� ACCEPT �P DROP ���~�A�٦����ǰʧ@�H �@REDIRECT --to-ports <port number> �@�@�@�o�Ӥ]���`�����A�W�A�N�O�i�楻���W�� port ���ഫ�N�O�F�I �@�@�@���L�A�S�O�d�N���O�A�o�Ӱʧ@�ȯ���b nat table �� PREROUTING �H�� �@�@�@OUTPUT ��W�����Ӥw��I(����s�u�y�{�A�аѦ��ϤK) �@MASQUERADE�G�ʥ]���� �@�@�@�o�ӴN�O NAT �D���̭��n���@�Ӿ���աI�i��ʥ]�����ˡI �@ �d�Ҥ��G�N�n�D�P 80 �s�u���ʥ]��� 8080 �o�� port [root@test root]# iptables -t nat -A PREROUTING -p tcp --dport 80 \ > -j REDIRECT --to-ports 8080 # �o���N�̮e���b�z�ϥΤF�D���W�� port �Ӷi��Y�� well known ����w�A # �Ҧp�ϥ� 8080 �o�� port �ӱҰ� WWW �A���O�O�H���H port 80 �ӳs�u�A # �ҥH�A�z�N�i�H�ϥΤW�����覡�ӱN����z�D�����s�u�ǻ��� 8080 �o�I �@ �d�Ҥ��G�i��ʥ]�����ˡA�N�Ӧ� 192.168.0.0/24 ���ʥ]���ӷ� IP ���˦��� �@�@�@�@������ ppp0 ���Ӥ����� IP [root@test root]# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 \ > -o ppp0 -j MASQUERADE |
[root@test
root]# iptables-save > filename
# �N�ثe������������x�s�� filename �����ɮסI���ɮ� ASCII �榡�A # �z�i�H�i�J�d�\�@�U��I [root@test root]# iptables-restore < filename # �N filename ���Ө������ɮ� (�`�N�I�ä��O shell scripts ���榡) ���W�h # Ū�J�ثe�� Linux �D�����Ҥ��I |
[root@test
root]# mkdir -p /usr/local/virus/iptables
[root@test root]# cd /usr/local/virus/iptables [root@test iptables]# vi iptables.rule #!/bin/bash # # ======================================================== # �{�������G # �w��ϥ� iptables.rule �o�� script �ӫإ߱z��������I # �o�� script �ٻݭn�z���B�~�]�w��i�A�X�z���D�����ҡI # �W�h�w�q���y�ڵ��Ҧ��A�}��S�w�z���Ҧ��I # # �ϥλ����G # �Х��N�o�� scripts ���v����אּ�i����G # chmod 755 iptables.rule # �b�N�o�ӵ{����m�b /usr/local/virus/iptables �ؿ��U�G # mkdir -p /usr/local/virus/iptables # mv /���㪺���|/iptables.rule /usr/local/virus/iptables # ������աG # /usr/local/virus/iptables/iptables.rule # iptables -L -n (�o�Ӱʧ@�b�ˬd������W�h) # �N���U�o�@��[�J /etc/rc.d/rc.local ���� # /usr/local/virus/iptables/iptables.rule # ����������G # iptables -F # iptables -X # iptables -t nat -F # iptables -t nat -X # # ======================================================== # ���v�ŧi�G # �o��{���� GPL ���v�A����H�ҥi�ϥΡA # �M�A�Y�ϥΥ� scripts �o�Ͱ��D�ɡA # ���H���t����d�� # VBird <vbird@tsai.adsldns.org> # ======================================================== # ���v�����G # 2002/08/20 VBird �������X # 2003/04/26 VBird �[�J�寸�n�骺���������ɮסI # 2003/08/25 VBird �ק� INPUT �� Policy ���� DROP # ======================================================== # 0.0 Please
key in your parameters
# ���U�o�� INIF
���鷺�������d�����A
# 1.0 ���ձz���֤ߪ����P������Ҳ�
# 2.0 ���J�A�����Ҳ�
# 3.0 ���M���Ҧ���������W�h
# 4.0 �����\�H������A�o�]�t
lo �o�Ӥ����j�餶���A
# 5.0 �}�l���J�H���P�ڵ�������]�w���ɮסA
# 6.0 ���U�o���ɮY�s�b�A�h����I�Ъ`�N�A
# 7.0 ���\ ICMP
�ʥ]�P���\�w�إߪ��s�u�q�L�I
# 8.0 Allow
services�S�O�d�N���U���A�ȡA�N�z�D���S���}�A�������a�I
|
[root@test
iptables]# vi iptables.allow
#!/bin/bash # # This program is used to allow some IP or hosts to access your Server # # HISTORY # 2002/08/20 first release by VBird /sbin/iptables -A INPUT -i $EXTIF -s 140.116.44.0/24 -j ACCEPT [root@test iptables]#
vi
iptables.deny
/sbin/iptables
-A INPUT -i $EXTIF -s 140.115.236.8 -j DROP
|
[root@test
/root]# vi /etc/rc.d/rc.local
#!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local #1. adsl connectting.
2002/04/06 VBird
|
�W�����T���ɮץi�H�b���U�������W���o�U���G
http://linux.vbird.org/download/index.php#firewall_iptables
�ª����ϥ�
tcpd �{�����y�k
<�A�ȦW��> : <IP/network> : <action> # �S�O�`�N�A network �i�H�ϥ� 192.168.0.0/255.255.255.0 �A # �����i�ϥ� 192.168.0.0/24 �I �@ �d�Ҥ@�G [root@test root]# vi /etc/hosts.allow in.telnetd: 127.0.0.1 : allow in.telnetd: 192.168.1.0/255.255.255.0 : allow in.telnetd: .ncku.edu.tw : allow in.ftpd: 127.0.0.1 : allow # ���\�� 127.0.0.1 �o�� IP �ϥΥ����� telnet �� ftp �o��ӪA�ȡI # �ЯS�O�`�N�A���ӡy�A�ȦW�١z���N�O�y�{���ɦW�z��I �@ [root@test root]# vi /etc/hosts.deny in.telnetd: 192.168.2.3 : deny # �N�Ӧ� 192.168.2.3 ���ϥΥ��� telnet ���v�������I �@ # �S�O�`�N�A�o�ӻy�k�b xinetd �̭��ɡA<action> �w�g�Q�����F�I # �ҥH�A�ثe�z�i�H�ϥγo�˪��榡�G [root@test root]# vi /etc/hosts.allow in.telnetd: 127.0.0.1 in.telnetd: 192.168.1.0/255.255.255.0 in.telnetd: .ncku.edu.tw # �ƹ�W�A�o�]�O TCP Wrappers �䴩���榡�A�ҥH��ij�z�����ϥΦ��榡�Y�i�A # ��Y���ݭn�[�W allow �Ϊ̬O deny ���ʧ@�A�]���b hosts.allow �̭��� # �W�h�N�O allow �Ӧb hosts.deny �̭����W�h�N�O deny ���N��I |
[root@test
root]# vi /etc/hosts.allow
# ���g���� telnet, ftp �� sshd �}��� in.telnetd: 192.168.1.2, 192.168.1.10, 192.168.1.20 in.ftpd: 192.168.1.2, 192.168.1.10, 102.168.1.20 sshd: 192.168.1.0/255.255.255.0, xxx.yyy.zzz.qqq # �C�� IP �Ϊ̥D�������A�i�H�Q�γr���ΪŮ�ӹj�}�I �@ [root@test root]# vi /etc/hosts.deny # �N�W�����T�ӪA�ȳ������աI in.telnetd: ALL in.ftpd: ALL sshd: ALL �@ # �S�O�`�N�A�ܦh�B�ͳ��w�b /etc/hosts.deny �̭��[�J�o�@��G ALL: ALL # �ө�שҦ����A�ȻP�Ҧ����ӷ��I���L�A�ڭӤH�O���ӫ�ij�o�˰����I # �]���ܦh�ɭԡA���z�[�]�n��������A�o�o�{�ѬO�L�k�� Client �s�u���\�A # �ܦh�g��i�D�ڭ̡A�̤j�����D�N�O�X�{�b ALL : ALL �o�@��I |
[root@test
root]# vi /etc/hosts.deny
in.telnetd : ALL : spawn (/bin/echo Security notice from host `/bin/hostname`; \ /bin/echo; /usr/sbin/safe_finger @%h ) | \ /bin/mail -s "%d -%h security" root@localhost & \ : twist ( /bin/echo -e "\n\nWARNING connectin not allowed. Your attempt has been logged. \n\n\nĵ�i�z�|�����\�n�J�A�z���s�u�N�|�Q�����A�åB�@���H�᪺�Ѧ�\n\n ". ) in.ftpd : ALL
: spawn (/bin/echo Security notice from host `/bin/hostname`; \
sshd : ALL :
spawn (/bin/echo Security notice from host `/bin/hostname`; \
|
���M�o�ˤ@�ӴN�y�L�ظm�n�F�z��������F�I���O�ֳ������D�쩳�o�˪�������ĪG�p��H�ҥH�A�z�ݭn��O��h���ɶ��Ӷi����թO�I���ժ��B�J�i�H�O�G�@�B�@�B�@�U�ӡA�ݬݰ��D�X�b���̡A�M��h�h���h��i�B��}�I�I�W�A�����W�ثe�ܦh����ƥi�H���ѱz�������ѦҤF�I�o�@�g���]�w�g���O��²��A�j�������٦b���ж��q�Ӥw�I�Ʊ��j�a�����U�I�ڦb�ѦҸ�Ʒ����C�X�X�Ӧ��Ϊ�����������A�Ʊ�j�a���ůu���n�h�h���h�ݬݡI�|�ܦ����U���I
- ���ѥD���V�~���D�ʳs�u�լݬݡF
- �A�Ѩp�����줺�� PC �V�~���D�ʳs�u�լݬݡF
- �̫�A�� Internet �W�����D���A�D�ʳs�u��z�� Linux �D���լݬݡF
�ڭ̨ӦҼ{�@�Ӥ�����쪺���D�A���N�O�p�P�ϥ|�����p�A�ƹ�W�A�D���O�[�]�b�������ݪ��I�b�o�˪����p�U�A�ڭ̭n���N�Ӧ� Internet ���ʥ]�A�g�� firewall ����ݪ��D���W���O�H�I�ڭ̥i�H�ѦҤ@�U�ʥ]���y�{�A�p�P�W���ϤE�������A�]���Ӧ� Internet ���ʥ]�n�ᵹ�������ݪ��D���A�ҥH�b�y���Ѥ��e�N�ݭn���]�w�n�ഫ�����z�����A�F�I�]���b nat table �� PREROUTING ����W���Ӷi��ҿת��y Destination NAT, DNAT �z���ʧ@�~��աI�z�ݭn�b������ iptables ����W���A�b nat table �W���s�W�@���W�h�~��I�y�k�p�U�G
�@�@
iptables ����L�����Ѽƻ����G
�@
-j <�ʧ@>�G���F����`���� ACCEPT �P DROP ���~�A�٦����ǰʧ@�H
�@DNAT --to IP[:port]
�@�@�@�`�Φb�������ݪ��D�����ʥ]��W���I
�@
�d�ҡG�N�Ӧ� Internet �� port 80 �s�u���ʥ]��� 192.168.10.10 �o�ӥD���W
[root@test root]# iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 80 \
> -j DNAT --to 192.168.10.10:80
�W�����d�ҬO��²�檺�@�ӨҤl�A�b���²�������ҤU�O�i�H���\�����z�i�� WWW �Ϊ̬O Mail ���A�Ȫ��I���L�A�p�G�Φb FTP �W���i�N�ܳ·ФF��]�� FTP ���F���W�� 21 �o�өR�O�q�D��f�~�A�٦���ƶǰe���D�ʩʻP�Q�ʩʡI�]�w�W�ܬO�x�Z�㦳���쪺�ܡA�i�H�Ѧҩ��U�C�X���X�� iptables ��������I�o�̤��A�����F�I