溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LINUX中IPTABLES防火墻的基本使用教程

發布時間:2020-09-14 10:20:05 來源:腳本之家 閱讀:239 作者:王文剛 欄目:服務器

前言

對于有公網IP的生產環境VPS,僅僅開放需要的端口,即采用ACL來控制IP和端口(Access Control List).

這里可以使用Linux防火墻netfilter的用戶態工具

iptables有4種表:raw–>mangle(修改報文原數據)–>nat(定義地址轉換)–>filter(定義允許或者不允許的規則)

每個表可以配置多個鏈:

* 對于filter來講一般只能做在3個鏈上:INPUT ,FORWARD ,OUTPUT

* 對于nat來講一般也只能做在3個鏈上:PREROUTING ,OUTPUT ,POSTROUTING

* 對于mangle是5個鏈都可以做:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING

filter表的三個鏈詳解:

* INPUT鏈: 過濾所有目標地址是本地的數據包

* FORWARD鏈: 過濾所有路過本機的數據包

* OUTPUT鏈: 過濾所有由本機產生的數據包

舉一反三學習:

【例】:過濾所有的訪問:
iptables -t filter -A INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -j DROP

【例】:對SSH的22端口開放
iptables -I INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -p tcp --dport 22 -j ACCEPT

【例】:開放80端口
iptables -A INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -p tcp --dport 80 -j ACCEPT


【例】:來自124的數據禁止通過174 IP
iptables -A OUTPUT -p tcp -s 45.32.102.124 -d 157.240.22.174 -j REJECT 

【例】打印當前生效的iptables規則(-n顯示IP地址)
iptables -L -n 

Linux中iptables防火墻指定端口范圍

iptables -I INPUT -p tcp --dport 700:800 -j DROP 
iptables -I INPUT -s 11.129.35.45 -p tcp --dport 700:800 -j ACCEPT

一、 700:800 表示700到800之間的所有端口

二、 :800 表示800及以下所有端口

三、 700: 表示700以及以上所有端口

這個例子作用是,700-800端口,僅僅對 11.129.35.45 IP開放,白名單機制。

Snat、Dnat的iptables用途:

源地址轉換(Snat): iptables -t nat -A -s 私IP -j Snat –to-source 公IP

目的地址轉換(Dnat): iptables -t nat -A -PREROUTING -d 公IP -j Dnat –to-destination 私IP

iptables命令詳解

iptables常用的命令選項有:

-P:設置默認策略的(設定默認門是關著的還是開著的)如:iptables -P INPUT (DROP|ACCEPT)
-F: FLASH,清空規則鏈的(注意每個鏈的管理權限)
-N:NEW 支持用戶新建一個鏈,比如:iptables -N inbound_tcp_web 表示附在tcp表上用于檢查web的。
-X:用于刪除用戶自定義的空鏈
-Z:清空鏈
-A:追加
-I num : 插入,把當前規則插入為第幾條
-R num:Replays替換/修改第幾條規則
-D num:刪除,明確指定刪除第幾條規則
-L:查看規則詳細信息,比如"iptables -L -n -v"
-s 表示源地址IP
-d 表示目標地址IP
DROP 表示丟棄(拒絕)
ACCEPT 表示接受
-p 表示適用協議,如tcp

其他更多例子:

【例】添加iptables規則禁止用戶訪問域名為www.sexy.com的網站。

iptables -I FORWARD -d www.sexy.com -j DROP

【例】添加iptables規則禁止用戶訪問IP地址為20.20.20.20的網站。

iptables -I FORWARD -d 20.20.20.20 -j DROP

【例】添加iptables規則禁止IP地址為192.168.1.X的客戶機上網。

iptables -I FORWARD -s 192.168.1.X -j DROP

【例】添加iptables規則禁止192.168.1.0子網里所有的客戶機上網。

iptables -I FORWARD -s 192.168.1.0/24 -j DROP

【例】禁止192.168.1.0子網里所有的客戶機使用FTP協議下載。

iptables -I FORWARD -s 192.168.1.0/24 -p tcp –dport 21 -j DROP

【例】強制所有的客戶機訪問192.168.1.x這臺Web服務器。

iptables -t nat -I PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to-destination 192.168.1.x:80

【例】禁止使用ICMP協議。

iptables -I INPUT -i ppp0 -p icmp -j DROP

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女