歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> iptables學習01

iptables學習01

日期:2017/3/1 15:21:02   编辑:關於Linux
iptables學習01 1.開啟路由轉發功能 臨時開啟 [plain] echo 1 > /proc/sys/net/ipv4/ip_forward 默認ip_forward值為零, 不允許轉發,改為1就可以轉發了。修改過後就馬上生效,即內核已經打開ip轉發功能。 永久開啟 [plain] sudo vim /etc/sysctl.conf #永久開啟路由轉發功能 net.ipv4.ip_forward=1 sudo sysctl -p sudo /etc/init.d/procpsrestart #重啟procps服務 (# sysctl –p) iptables [-t 表名] 操作符 [規則鏈名] [規則] 對鏈的操作就那麼幾種, -I 插入 -A 追加 -R 替換 -D 刪除 -L 列表顯示 -F 清除鏈中的所有規則 -P 設置鏈的默認動作ACCEPT REJECT DROP -Z 計數器清零 -N 定義一個新的規則鏈 -X 刪除定義的規則鏈 -I 將會把規則放在第一行,-A將會放在最後一行 針對規則的操作: -A 追加 -I 插入 -D 刪除 例子 [plain] iptables -t filter -A FORWARD -s 10.1.1.11 -d 202.1.1.1 -j ACCEPT 上面的命令意思為:追加一個規則至filter表中的FORWARD鏈尾,允許(-j ACCEPT)源地址為10.1.1.11目的地址為202.1.1.1的數據包通過。其中-t後面跟的是表名,在-A後面跟Chain名,後面的小寫的 -s為源地址,-d為目的地址,-j為處理方向。 在iptables中,默認的表名就是filter,所以這裡可以省略-t filter直接寫成: [plain] iptables -A FORWARD -s 10.1.1.11 -d 202.1.1.1 -j ACCEPT -s 匹配源地址 -d 匹配目的地址 -i 入接口匹配 -o 出接口匹配 --sport 源端口匹配 --dport 目的端口匹配 - j 跳轉,也就是包的方向 其中還有一個!參數,使用!就是取反的意思。 -s這個參數呢就是指定源地址的,如果使用這個參數也就是告訴netfilter,對於符合這樣一個源地址的包怎麼去處理,可以指定某一個單播ip地址,也可以指定一個網絡,如果單個的ip地址其實隱含了一個32位的子網掩碼,比如-s 10.1.1.11 其實就是-s 10.1.1.11/32 同樣我們可以指定不同的掩碼用以實現源網絡地址的規則,比如一個C類地址我們可以用-s 10.1.1.0/24來指定。 -d參數與-s格式一樣。 -i參數是指定入接口的網絡接口,比如我僅僅允許從eth3接口過來的包通過FORWARD鏈,就可以這樣指定 iptables -A FORWARD -i eth3 -j ACCEPT -o是出接口,與上同 iptables -A INPUT -i lo -j ACCEPT
Copyright © Linux教程網 All Rights Reserved