體驗iptables 企業級的防火牆實戰
iptables最佳化案例
[root@ghzz ~]# vi /root/shell/iptables.sh #!/bin/bash #by qiuyuetao #-------------------------------------------------------------------------- IPTAB=/sbin/iptables #定義環境變數 $IPTAB -X #清空自定義鏈 $IPTAB -Z #清空計數器 $IPTAB -F #清空當前表的所有規則 $IPTAB -t nat -F #清空nat表的所有規則 $IPTAB -t mangle -F #清空mangel 表規則 $IPTAB -t raw -F #清空raw表規則 $IPTAB -X -t nat #清空自定義鏈 $IPTAB -X -t raw $IPTAB -X -t mangle #-------------------------------------------------------------------------- $IPTAB -A INPUT -i lo -j ACCEPT #允許迴環地址訪問 $IPTAB -A INPUT -s 127.0.0.1 -j ACCEPT #允許自己訪問 $IPTAB -A INPUT -s 192.168.0.0/22 -j ACCEPT# 允許內網訪問 $IPTAB -A INPUT -s 119.161.189.1 -j ACCEPT #允許跳板機訪問 #-------------------------------------------------------------------------- $IPTAB -A INPUT -p icmp -j ACCEPT #允許icmp 也就是ping $IPTAB -A INPUT -p tcp -m multiport --dport 80,22,3306,2188 -j ACCEPT #對外開放的埠 $IPTAB -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #對進來的包的狀態進行檢測。已經建立tcp連線的包以及該連線相關的包允許透過! $IPTAB -P INPUT DROP #除了上面的fiter表input鏈 $IPTAB -P FORWARD DROP $IPTAB -P OUTPUT ACCEPT #-------------------------------------------------------------------------- $IPTAB-save > /etc/sysconfig/iptables ##修改iptables -F -X -Z 都需要 /etc/init.d/iptables save ## -t:指定要儲存的表的名稱。 # iptables-save -t filter > iptables.bak
恢復備份的iptables配置:
iptables-restor < /etc/sysconfig/iptables
iptables日常配置
防火牆是否開啟
[root@m01 ~] /etc/init.d/iptables status 開啟iptables iptables -F #清空當前表規則 iptables -X #清空自定義鏈 iptables -Z #清空計數器
開啟核心轉發
將net.ipv4.ip_forward = 1 由0改為1 sed -i 'snet.ipv4.ip_forward = 0net.ipv4.ip_forward = 1g' sysctl -p 生效
新增iptables模組
lsmod 顯示已經載入到核心中的模組的狀態資訊 lsmod|egrep "nat|filter" 檢視nat 與filter表載入的模組資訊 modprobe ip_tables modprobe ip_conntrack modprobe iptable_filter modprobe iptable_nat modprobe ip_conntrack_ftp 連線跟蹤 modprobe ip_nat_ftp nat模組 modprobe ipt_state 狀態模組
企業級的防火牆模式選擇
"兩種思想:"
逛公園:
1、預設規則預設是允許的狀態。
看電影:
2、預設規則預設是不允許的狀態。更安全。
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #允許內網IP地址段訪問 iptables -A INPUT -d 172.16.1.0/24 -j ACCEPT #允許迴環地址可以進出 iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
修改預設規則
iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT
新增允許的服務及埠
#允許訪問http服務80 443 iptables -A INPUT -p tcp -m multiport --dport 80,443 -j ACCEPT #只允許內網ping iptables -A INPUT -p icmp -m icmp --icmp-type 8 -s 172.16.1.0/24 -j ACCEPT #允許ftp請求 #iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #允許某埠對映 iptables -A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT iptables -A INPUT -p udp -m udp --sport 53 -j ACCEPT iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT iptables -A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
NAT 共享上網
/proc/sys/net/ipv4/ip_forward 開啟核心轉發 iptables -t filter -A FORWARD -j ACCEPT iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 -j SNAT --to-source 10.0.0.61 #所有內網172.16.1.0網段地址,都透過10.0.0.61這個IP 轉發上外網 iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j MASQUERADE #MASQUERADE 自動獲取服務端IP,做IP地址轉發(例如:openvpn)
其他應用服務規則案例
"1)http服務" iptables -A INPUT -s 192.168.1.0/24 -p tcp -m multiport --dport 8080,8081,8082 -j ACCEPT iptables -A INPUT -p tcp --dport 22000:22030 -j ACCEPT #:冒號代表一段埠從22000-22030所有埠都允許 "2) db資料服務" iptables -A INPUT -s 10.1.8.0/24 -p tcp --dport 3306 -j ACCEPT "3) snmp 網路管理" iptables -A INPUT -s 10.1.8.0/24 -p UDP --dport 161 -j ACCEPT "4) rsync 實時同步" iptables -A INPUT -s 10.1.8.0/24 -p tcp -m tcp --dport 873 -j ACCEPT " 5) nfs 2049,rpc 111 (NFS網路檔案共享、rpc)" iptables -A INPUT -s 10.1.8.0/24 -p udp -m multiport --dport 111,892,2049 -j ACCEPT iptables -A INPUT -s 10.1.8.0/24 -p tcp -m multiport --dport 111,892,2049 -j ACCEPT " 6) 允許所有ping" iptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT " 7)允許內網172.16.1.0 網段ping" iptables -A INPUT -p icmp -m icmp --icmp-type 8 -s 172.16.1.0/24 -j ACCEP "8) keepalived vrr" -A INPUT -d 172.16.1.0/24 -j ACCEPT -A INPUT -p vrrp -j ACCEPT "9) zabbix埠開放" -A INPUT -p tcp -m tcp --dport 10050:10051 -j ACCEPT -A INPUT -p tcp -m udp --dport 10050:10051 -j ACCEPT
iptable安全配置
1)限速 iptables -A INPUT -p tcp --syn -m limit --limit 100/s --limit-burst 100 -j ACCEPT 2)沒秒ping不超過10個 iptables -A FORWAD -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 10 -j ACCPET 3)將SYN及ACK SYN限制為每秒不超過200 iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 20/sec --limit-burst 200 -j ACCEPT 4)防範 SYN-Flood 碎片*** iptables -N syn-flood iptables -A INPUT -syn -j syn-flood iptables -A syn-flood -m limit -limit 5000/s -limit-burst 200 -j RETURN iptables -A syn-flood -j DROP prevent all Stealth Scans and TCP State Flags iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP All of the bits are cleared iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP SYN and RST are both set iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP SYN and FIN are both set iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP FIN and RST are both set iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP FIN is the only bit set, without the expected accompanying ACK iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP PSH is the only bit set, without the expected accompanying ACK iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP URG is the only bit set, without the expected accompanying ACK iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
原文地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2670863/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 超級實用的 iptables 防火牆指令碼防火牆指令碼
- iptables防火牆防火牆
- 防火牆iptables防火牆
- Iptables防火牆應用防火牆
- iptables防火牆規則防火牆
- 基於iptables防火牆堵漏防火牆
- Linux設定防火牆iptablesLinux防火牆
- Linux基礎命令---iptables防火牆Linux防火牆
- linux iptables安全技術與防火牆Linux防火牆
- Linux IPTables:如何新增防火牆規則Linux防火牆
- 20條IPTables防火牆規則用法!防火牆
- iptables防火牆如何記錄日誌防火牆
- iptables配置-Linux系統安全防火牆Linux防火牆
- CentOS 中 iptables 和 firewall 防火牆的相關命令CentOS防火牆
- Linux 防火牆:關於 iptables 和 firewalld 的那些事Linux防火牆
- Linux 防火牆配置(iptables和firewalld)詳細教程。Linux防火牆
- Linux系統iptables與Firewalld防火牆區別?Linux防火牆
- iptables實用知識 ,一文學會配置linux防火牆Linux防火牆
- Linux防火牆介紹和iptables常用命令Linux防火牆
- 1、iptables-基礎-包過濾防火牆-四層防火牆(只支援4層協議)防火牆協議
- 騰訊雲防火牆全新升級,“三道牆”助力企業雲安全防控更高效防火牆
- 超級好用的mac防火牆軟體:Little Snitch for MacMac防火牆
- 嵌入式Linux可用的防火牆——iptables:實現ip白名單、mac地址白名單Linux防火牆Mac
- iptables防火牆簡介,原理,規則編寫,常見案例防火牆
- 伺服器安全設定Centos7 防火牆firewall與iptables伺服器CentOS防火牆
- 高 級防火牆軟體 Vallum啟用最新版防火牆
- 防火牆軟體:Snail for mac防火牆AIMac
- 防火牆企業面試題iptalbes Linux面試題分享防火牆面試題Linux
- WAb防火牆與傳統防火牆防火牆
- 防火牆防火牆
- 分享:有關Linux伺服器(在防火牆iptables)開放埠的操作總結Linux伺服器防火牆
- Linux的銅牆鐵壁iptablesLinux
- OpenAI Assistants API 企業級應用實戰OpenAIAPI
- 防火牆的分類防火牆
- 防火牆入侵於檢測——————3、思科 PIX 防火牆和 ASA 防火牆產品線防火牆
- 雲防火牆:防禦企業上雲“億”點網路攻擊防火牆
- 防火牆配置防火牆
- 防火牆(firewall)防火牆