IT��ά������������ҵ��ֵ��
�й�IT��ά����ҳ | ��Ѷ���� | ��ά���� | ��Ϣ��ȫ | CIO�ӽ� | �Ƽ��� | ��Ѱ��� | ��ά��Դ | ר��߻� | ֪ʶ�� | ��̳

iptables���ù��߱Ƚ�

2005��12��14��
/

�ڹ�ȥ�����У�linux��Ϊ����ǽƽ̨��Ӧ������������������1.2���ں˵�ipfwadm��ʼ��Linux�ķ���ǽ����Ҳ�߹��˺ܳ�һ��·���ˡ���2.4���Linux�ں��У�ʹ����netfilter��ϵ�������µ�2.4���У�Linux����ǿ�˰�ȫ�ԣ����磺���õļ���֧�ֺ� netfilter��ϵ��ʹ�á�netfilter������ȫ���������ԡ�

���Ľ���iptables��������һ�����������ص����һЩiptables�����ù��ߡ����ĵ����۽�������linux�ں˵�IP����ǽ�Լ�����ֽ�������ù��ߣ����磺GUI���߽ű�(shell��Perl�����ض�����������)��ʹ����Щ�����ܹ���iptables�����ü������õĴ��󡣹��� iptables��֪ʶ��ο�Rusty Russellд��Linux iptables HOWTO��

ʹ������������iptables������

ʹ��iptables�������нӿ�������iptables����ǽ��һ������˵��һ����ս���û�����ָ������IP���ĵ���Ϊ���û���Ҫ��TCP/IP ��Ӧ�ò�Э���н�����˽⡣����ǰ��ipchainsһ����iptables��IP���˹���鲢�����У�IP���ı������������ܴ������������͵�����������ܴ��������������Ĭ�ϲ���(ACCEPT��DROP��REJECT)��������Щ����Ӧ�ó��������һЩ��������״�������ǽ�������Ҫ�����������ӵĽ����ͶϿ���

���ǿ�һ��POP3Э�飬������򵥵�Э��֮һ��������������Ŀ��˿���110�ı���ͨ��ͨ���޷�������еĹ������⣬��Ϊ����ֻ��ʹ�ͻ����򷢳����룬��������ȴ�޷�Ӧ�����⣬���ʹ�������ַת��(NAT)��������ʽ�ı���ת����Ҳ�����������⡣��Ϊ����ǽ�����ý�Ӱ�쵽������ҵ�İ�ȫ������Ӧ���ر�С�ġ����潫��ŵ�����iptables�����ã�Ҫ��ø���ϸ����ο�linux iptables HOWTO

iptables��������ѡ��

�ڽ�����ʱ������֮ǰ�����ǿ�һ��iptables������ѡ���һ���ܽᡣ

������ά��ѡ��

1.�����µĹ�����(-N)
2.ɾ��һ���յĹ�����(-X)
3.�ı�һ�����ù������IJ���(-P)
4.�г�һ���������еĹ���(-L)
5.��дһ���������еĹ���(-F)

������

1.��һ���������м���һ���µĹ���(-A)
2.ɾ��һ����������ij��λ�õĹ���(-D)

iptables���ŵ�

�����۸���iptables���ù���֮ǰ�������ǿ�һ��iptables���ŵ㣬������netfilter��ipchains���е����ơ�

iptables��������״̬(stateful)����ǽ���������ڴ��б��洩������ǽ��ÿ�����ӡ�����ģʽ������Ч������FTP��DNS�Լ�������������DZ�Ҫ�ġ�

iptables�ܹ�����TCP��־������ϱ��ģ����ܹ�����MAC��ַ��

ϵͳ��־��ipchains���������ã���չ��Ҳ���á�

���������ַת��(Network Address Translation)��͸��������֧�֣�netfilter��Ϊǿ�������ʹ�á�

iptable�ܹ���ֹijЩDOS����������SYS�鷺������

iptables���ù���

���ڣ����ǿ�һ��linux iptables��һЩ���ù��ߡ�����Ҫ��עÿ�����ߵ����������Ժ������ԡ����ǽ��������µĹ��ߣ�

MonMotha's Firewall 2.3.5 ���ߣ�MonMotha
Firewallscript (iptables 4.4c-3 devel) ���ߣ�Patrik Hildingsson
Ferm-0.0.18 ���ߣ�Auke Kok
AGT-0.83 ���ߣ�Andy Gilligan
Knetfilter-1.2.4 ���ߣ�Luigi Genoni
gShield-2.0.2 ���ߣ�R. Gregory

MonMotha��Firewall 2.3.5
MonMothaд��Firewall 2.3.5��һ����Լ30K��shell�ű���Ŀǰ����Ҫ�����ڻ��������ı�������ΪһЩ���������ѡ�����ڿ����С�����ű��Ľ���(���磺�� iptables��������ѡ��ķ���)�е���ҡ�������������Ҫ�����ļ����Ұ�װ���ף�ֱ�Ӹ��Ƶ��κεط������ԡ�Ĭ������£�����������ʲô��ʵ���ϸ����Ͳ�ִ�У�Ҳȱ���ĵ�������ű����ڲ����û������е��ô���

Firewallscript
Firewallscript(IFS 4.4d)Ҳ��һ��bash�ű�����Լ��85K������ű��������ڻ�������������ķ������״�����ʱ������ֱ�Ӳ���һ�������ļ�����������Ĭ������£�����ļ�����ʲô���ã�ֻ�в������á�����ű���������NAT�͵�ַαװ������ű��dz����ӣ�����ȱ���ĵ����������ܹ���ϸ�Ķ����Ĵ��룬ʹ�� iptables -L�����ĸ����Ѿ���Ч��ʲô������/�ܾ�������ű���IP����׷�ٹ��ܻ�����Ϊ���ṩ���֡����⣬�������Զ�̽�⡢����iptables��Ҫ���ں�ģ�顣����ű�����һ���ű�������ȡ��(undo)���ܣ��ܹ��ָ�iptablesԭ���������ļ���

Ferm
Ferm��һ��Perl�ű���ʹ��һ����C����д�ɵ������ļ����������Էdz������Ķ������⡣����ű��кܺõ��ĵ��ͷḻ��ʾ����Ϊ�ο���

����һ�����ӣ�

-----------------------------------------------------------------------------
# simple workstation example for ferm
chain input {
if ppp0 # put your outside interface here
{
proto tcp goto fw_tcp;
proto udp goto fw_udp;
proto icmp goto fw_icmp;
}
}
chain fw_tcp proto tcp {
dport ssh ACCEPT;
syn DENY log;
dport domain ACCEPT;
dport 0:1023 DENY log;
}
chain fw_udp proto udp {
DENY log;
}
chain fw_icmp proto icmp {
icmptype (
destination-unreachable time-exceeded
) ACCEPT;
DENY log;
}

-----------------------------------------------------------------------------

��������ļ���ʹferm����iptables���¹������������ssh��DNS����ͨ�����������е�UDP���ģ�ֻ�����������͵�ICMP��Ϣͨ����Ŀ�IJ��ɴ�ͳ�ʱ�������ܾ�����־�������͵�ICMP��Ϣ��

AGT

AGT��һ��ʹ��C���Ա�д�ij��򡣴����Ĵ���������Ŀǰ�����ڿ����׶Ρ���֧��automake����Ҫ�ֹ��༭Makefile�ļ����ĵ�Ҳ���Ǻܷḻ�������������ļ��dz��򵥡��������һ�������ļ���

NEW | FROM-INT
NEW | RESET

|| FROM-INT | icmp | ACCEPT |||||
|| FROM-INT | tcp | ACCEPT ||||| pop3
|| FROM-INT | tcp | ACCEPT ||||| imap

|| RESET | tcp | REJECT --reject-with tcp-reset |||||


�������ļ���ʽ������ȱ����Ҫ���ĵ�����ʹ������˵��һ���ܴ����ս��������ö໨Щʱ��ѧѧiptables��

knetfilter
knetfilter��һ���dz�����ͼ�λ�iptables���ù��ߣ����ǻ���KDE��(��KDE1��KDE2�����汾)��knetfilter�dz��������֣�����Ժ����׵�ʹ���������û������������Ĺ���͹����б�������ͻָ�����Щ����͹����б������Թ���͹����б�(��ͬһ����������� tcpdump������̽��)����һ��ֻҪ�㼸�����Ϳ����ˡ���Ҳ֧��NAT�������ַαװ�����á����ǣ����ڲ��Ź���վ��knetfilter�����IJ�̫�ã���Ϊ����Ҫ����IP������ֻ̽��eth0����ӿڣ�������PPP̽�⡣������̵��ĵ�Ҳ���٣�������Ϊ�ǻ���ͼ�ν��棬���Լ�ʹ�����ֲ�Ҳ���Ժܺõ�ʹ�á�

gShield
gShield��һ��bash shell�ű��������ǵ�ǰ������һ�����ߡ������ĵ��dz��ḻ�������ļ�Ҳ�ȽϺ���ֱ�ۣ����ܹ�����NAT���������ܹ�����̬IP��ַ�����ܹ�������̬IP��ַ(���磺PPP)��

gShield����ͼ�ν��棬Ŀǰ��Ȼ�������ڿ����׶Σ����Դ�http://members.home.com/vhodges/gshieldconf.html���ء����������ƺ�ֻ����gShield�����ڰ汾(1.x)��

������һ��ʾ�������ļ���

FW_ROOT="/etc/firewall"
IPTABLES=`which iptables`
LOCALIF="eth0"
DNS="24.31.195.65"
LTIME="20/m"
ALLOW_DHCP_LEASES="YES"
...

gShieldʹ�õ�Ĭ�����÷dz���ȫ���ر��ʺϲ�Ը���Ū�����ļ����û������������ı��߽����û�����ܹ�ͨ�����������ļ�����README�ļ�����gShieldʵ����"��tcpwrapper���ķ�����ʿ��ƹ���"��ʹ����������û����Ժ����׵�����/����ij����񣬶����ؿ��DZ��ķ���֮������⣬ֻҪ����ʲô�ͻ����ӵ��������Ϳ����ˡ�

����

��Ȼ���Ľ�����һЩ����ǽ���ù��ߣ�����ʵ����Ŀǰ��û����������ù��ߡ���õ����ù��߻���iptables���������ܵ���Щ���ߣ�ֻ�����ڶ���ʹ��iptables�����ио����ѵ��û���


���������뵽��http://bbs.cnitom.com

����Ķ�

ͼ���ȵ�

Power�ܹ���Ʒ���� IBM�ƶ��䱾������չ
Power�ܹ���Ʒ���� IBM�ƶ��䱾������չ�Դ�1990�꣬IBM�Ƴ�����RISCϵͳ���²�Ʒ��RS/6000���ֳ�eServer pϵ�У�֮��...
WAF����УWebӦ�ð�ȫ�ػ���
WAF����УWebӦ�ð�ȫ�ػ�����������У��վ���������¼�ʱ�з���������˲���Ӱ�죬���Խ��Խ��ĸ�У��ʼ...

�����ȵ�