您好,登錄后才能下訂單哦!
這篇文章主要介紹linux中iptables常用方法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
iptables其實是一個命令行工具,可以把它理解成一個客戶端代理,用戶通過iptables這個代理,將用戶的安全設定執行到對應的”安全框架”中,這個”安全框架”才是真正的防火墻,這個框架的名字叫netfilter。
使用下面幾個命令可以清空iptables表:
# 使用-t選項選擇哪個表,表有filter, nat , mangle三個表iptables -t filter -F iptables -t filter -X iptables -t filter -Z
-F
清空所有鏈的規則,-X
刪除自定義的鏈,-Z
清空數據包流量。
默認鏈策略是ACCEPT。對于所有INPUT,FORWARD和OUTPUT鏈,將其更改為DROP,如下所示:
iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARDING DROP
將INPUT和OUTPUT鏈的默認策略都設置為DROP時,對每個防火墻規則要求,都應定義兩個規則,一個用于INPUT,一個用于OUTPUT。
如果信任內部用戶,則可以省略上面的OUTPUT。即默認情況下不丟棄所有OUTPUT數據包。在這種情況下,對于擁有的每個防火墻規則要求,只需定義一個規則即可。即只為INPUT定義規則,因為所有數據包的傳出都是ACCEPT。
BLOCK_THIS_IP="x.x.x.x" iptables -A INPUT -s "$BLOCK_THIS_IP" -j DROP 或者 iptables -A INPUT -i ens160 -s "$BLOCK_THIS_IP" -j DROP 或者 iptables -A INPUT -i ens160 -p tcp -s "$BLOCK_THIS_IP" -j DROP
定義一個變量,值寫入要阻止的ip地址。上面第一條規則的意思是從某個ip進入的流量拒絕掉。第二條規則是阻止某個ip地址從eth0進入的流量。第三條規則指的是拒絕某個ip地址從eth0進入訪問tcp協議的流量。
以下規則允許ens160接口上的所有傳入的ssh連接。
iptables -A INPUT -i ens160 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o ens160 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
下面是允許指定網段的ip地址連接本機的ssh服務:
iptables -A INPUT -i ens160 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o ens160 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
以下規則允許傳出ssh連接。當從內部ssh連接到外部服務器時可以使用:
iptables -A OUTPUT -o ens160 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i ens160 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
下面使用multiport
模塊,可以減少寫入規則條數。下面實例允許外部訪問本機的http,https服務。
iptables -A INPUT -i ens160 -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o ens160 -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
下面命令允許本機訪問外面的http,https服務:
iptables -A OUTPUT -o ens160 -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i ens160 -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
以下規則允許外部用戶能夠ping你的服務器:
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPTiptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
以下規則允許從內部ping到任何外部服務器:
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
下面規則將幫助你預防Web服務器上的拒絕服務(DoS)攻擊:
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
以上是“linux中iptables常用方法有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。