Iptables防火牆(三)
重點:
備份及恢復規則
防火牆腳本的使用
8.1規則的導入和導出
8.1.1 規則的備份及還原
防火牆規則的批量備份和還原用到兩個命令iptables-save iptables-restore,分別用來保存(save)和恢復(restore)
v導出(備份)規則
§iptables-save工具
iptables-save命令用來批量導出linux防火牆規則
直接執行iptables-save,將顯示出當前啓用的所有規則,按照raw manglenat filter 表的順序依次列出;若只希望列出某一個表,應添加”-t 表名” 作爲命令選項
列:iptables-save –tnat //輸出nat表的規則信息
iptables-save–t filter //輸出filter表的規則信息
注:在iptables-save命令輸出信息中,以”#”開頭內容表示註釋,以”*表名”表示所在的表,”:鏈名默認策略”表示相應的鏈及默認策略,具體規則部分省略了命令名”iptables”,後面的”COMMIT”表示提交前面的規則設置
§可結合重定向輸出保存到指定文件
Iptables-save命令只是把規則內容輸出到屏幕上,還應結合重定向輸出的操作已完成備份
列:iptables-save >/opt/iprules_all.txt //備份所有表的規則
Iptables-save–t filter > /opt/iprules_filter.txt //只備份filter標的規則
v導入(還原)規則
§iptables-restore工具
§可結合重定向輸入指定規則來源
iptables-restore命令用來批量導出linux防火牆規則
iptables-restore命令應結合重定向輸入來指定備份文件的位置
列:iptables –F //清空filter表
Iptables –nL
Iptables-restore < /opt/iprules_filter.txt //從備份文件恢復規則
Iptables -nL FORWARD
8.1.2iptables服務
§腳本位置:/etc/init.d/iptables
§規則文件位置:/etc/sysconfig/iptables
自動啓用防火牆規則:
方法一:iptables-save > /etc/sysconfig/iptables //使用iptables-save備份爲默認規則配置文件後可通過iptables服務來調用
Chkconfig –level 2345 iptables on
Chkconfig –list iptables
方法二:service iptables start //啓動防火牆服務
當需要啓用/etc/sysconfig/iptables 文件中的規則設置時,只需要啓動iptables服務即可
如此前已經設置有防火牆規則,則start 操作將會先檢查並清空所有規則,卸載部分模塊後再重新構建( 相當於restart)建議開機後自動執行(而不是手動執行)
清空所有防火牆規則:
當需要一次清空所有規則時,停用iptables服務是最快捷的方法,也是最徹底的方法
列 : service iptables stop //停止防火牆服務
8.2 使用防火牆腳本
防火牆規則的批量設置
v批量設置方法
§方法1:編寫規則à導出à使用iptables服務
§方法2:編寫防火牆腳本à開機時自動執行腳本
•/etc/rc.d/rc.local
8.2.1 防火牆腳本的構成4-1
常見的linux防火牆腳本中,通常包括變量定義模塊加載 /proc調整規則設置等
v. 定義基本變量
v2. 加載必要的內核模塊
§將頻繁用到的模塊載入內核
ip_tables //iptables基本模塊
ip_conntrack //連接跟蹤模塊
ipt_REJECT //拒絕操作模塊
ipt-LOG //日日誌記錄模塊
ipt_iprange //支持IP範圍匹配
Xt_tcpudp //支持tcp udp 協議
Xt_state //支持狀態匹配
Xt_multiport //支持多端口匹配
Xt_mac //支持MAC地址匹配
ip_nat_ftp支持FTP訪問的地址轉換、ip_conntrack_ftp支持ftp連接狀態跟蹤(手動加載)
v. 調整/proc參數
lLinux內核控制及調優
Net.ipv4.ip_forward=1 //打開路由轉發功能
Net.ipv4.ip_default_ttl=128 //修改ICMP響應超時
Net.ipv4.icmp_echo_ignore_all=1 //拒絕響應icmp包請求
Net.ipv4.icmp_echo_ignore_broadcasts //拒絕icmp廣播
Net.ipv4.tcp_syncookise=1 //啓用syn cookies機制
Net.ipv4.tcp-syn_retries=3 //最大syn請求重試次數
Net.ipv4.tcp_synack_retries=3 //最大ACK確認重試次數
Net.ipv4.tcp_fin_timeout=60 //tcp連接等待超時
Net.ipv4.tcp_max_syn_backlog=3200 //syn請求的隊列長度
4. 具體的防火牆規則
§按表、鏈分別設置規則,包括默
8.2.2使用IP地址黑、白名單2-1
v建立IP地址列表文件
§黑名單、白名單分開保存
§每行一個IP地址,或網段地址
v在腳本中調用黑、白名單
§使用for循環
§封鎖黑名單地址、放開對白名單地址的限制
8.2.3“主機型”防火牆腳本
§針對本機進行保護
§filter表中的INPUT、OUTPUT鏈
v“網絡型”防火牆腳本
§針對網絡互訪進行保護
§filter表中的FORWARD鏈,以及nat表