防火牆網絡
主機型防火牆(本身保護本身)ssh
網絡型防禦牆(保護某個網絡)tcp
實現方式分 硬件防火牆 軟件防火牆ide
iptables工具
172.40.55.10 (要使用iptables保護本身)接口
[root@ca ~]# rpm -q iptablesip
iptables-1.4.7-16.el6.x86_64路由
[root@ca ~]#get
內核態 filter (功能)it
用戶態 iptables (管理工具)
4張表(功能)
raw 作狀態跟蹤
mangle 打標籤
nat 作地址或端口轉換
filter 默認表, 對ip包作過濾 (3條鏈 INPUT OUTPUT FORWARD)
5條鏈(ip包傳輸的方向)
INPUT 處理進入防火牆本機的ip包
OUTPUT 處理從防火牆本機出去的ip包
FORWARD 處理從防火牆本機通過的ip包
POSTROUTING 路由後處理
PREROUTING 路由前處理
管理選項
查看 -L
清空全部規則 -F
給表中的鏈設置默認規則 -P
給表中的鏈添加新規則
-A 新規則在已有規則的末尾
-I 新規則添加在已有規則的上方
-I 編號 新規則添加指定規則的上方
-D 刪除某條規則
匹配條件
-s 指定ip包中的源地址 172.40.55.10 172.40.55.0/24
-d 指定ip包中的目標地址 172.40.55.10 172.40.55.0/24
-p 數據傳輸協議 tcp udp icmp
--dport 目標端口
--sport 源端口
-i 指定ip包進入的網絡接口
-o 指定ip包出去的網絡接口
處理動做
ACCEPT
DROP
REJECT
編寫防火牆規則
iptables -t 表名 管理選項 鏈名 匹配條件 -j 處理動做
iptables -t filter -P INPUT DROP
iptables -t filter -A INPUT -s 172.40.55.10 -j ACCEPT
iptables -t filter -L INPUT
[root@ca ~]# iptables -t filter --line-numbers -nL INPUT
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 172.40.55.10 0.0.0.0/0
[root@ca ~]#
iptables -I INPUT -s 172.40.55.190 -p tcp --dport 22 -j ACCEPT
iptables -I INPUT 2 -s 172.40.55.103 -p tcp --dport 22 -j ACCEPT
iptables -t filter -D INPUT 2
iptables -F INPUT
iptables -F
只容許本身Ping別人 不容許ping本身
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -F
iptables -t filter -A OUTPUT -p icmp --help
iptables -t filter -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -t filter -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
++++++++++++++++++++++++++++++
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P OUTPUT ACCEPT
iptables -F
iptables -t filter -A INPUT -p icmp --icmp-type echo-request -j REJECT
iptables -t filter -A OUTPUT -d 172.40.55.10 -p tcp --dport 22 -j DROP
ssh root@172.40.55.10
++++++++++++++++++++++++++++++++++++++++
[root@svr5 ~]# iptables -A INPUT -s 192.168.4.120 -j DROP
[root@svr5 ~]# iptables -A INPUT -s 10.0.10.0/24 -j DROP
[root@svr5 ~]# iptables -A FORWARD -s 192.168.0.0/16 -i eth1 -j DROP
[root@svr5 ~]# iptables -A FORWARD -s 172.16.0.0/16 -i eth1 -j DROP
iptables -t filter -P INPUT DROP
iptables -t filter -A INPUT -s 172.40.55.0/24 -j ACCEPT
iptables -t filter -I INPUT -s 172.40.55.10 -j DROP
[root@svr5 ~]# iptables -A FORWARD -s 192.168.0.0/16 -i eth1 -j DROP
[root@svr5 ~]# iptables -A FORWARD -s 172.16.0.0/16 -i eth1 -j DROP
[root@svr5 ~]# iptables -A INPUT -s 192.168.168.0/24 \
-p tcp --dport 22 -j ACCEPT
[root@svr5 ~]# iptables -A INPUT -s 220.181.78.0/24 -p tcp --dport 22 -j ACCEPT
[root@svr5 ~]# iptables -A INPUT -p tcp --dport 22 -j DROP
[root@svr5 ~]# iptables -A INPUT ! -s 192.168.168.0/24 -p tcp --dport 20:21 -j DROP
[root@svr5 ~]# iptables -A INPUT -p icmp --icmp-type \
echo-request -j DROP
[root@svr5 ~]# iptables -A INPUT -p icmp ! --icmp-type \
echo-request -j ACCEPT
[root@svr5 ~]# iptables -A OUTPUT -p icmp --icmp-type \
echo-request -j ACCEPT
[root@svr5 ~]# iptables -A OUTPUT -p icmp ! --icmp-type \
echo-request -j DROP
擴展匹配條件