日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

什么是防火墻?

防火墻是一種網絡安全系統,它根據預定的一組規則過濾和控制通信量。這是一個介于設備和互聯網之間的中介系統。

注:如果您已經了解linux中防火墻的工作,并且只想知道命令,那么請進入教程的末尾。

Linux的防火墻是如何工作的:

Linux發行版的大多數附帶默認防火墻工具,可以用來配置它們。我們將使用Linux中提供的默認工具“iptablees”來建立防火墻。Iptable用于在Linux內核中設置、維護和檢查IPv 4和IPv 6數據包過濾規則的表。

-以下所有命令都需要sudo特權。

鏈是為特定任務定義的一組規則。我們有三條用于處理流量的鏈:輸入鏈,輸出鏈,前向鏈

1.輸入鏈

從互聯網(網絡)到本地機器的任何流量都必須通過輸入鏈。這意味著它們必須遍歷輸入鏈中設置的所有規則。

2.輸出鏈

從本地機器到互聯網的任何流量都需要通過輸出鏈。

3.前向鏈

從外部網絡到另一個網絡的任何流量都需要通過前向鏈。當兩臺或兩臺以上的計算機連接在一起,并且我們希望在它們之間發送數據時,就使用它。

Iptable可以對流量執行三個操作:接受,下降,拒絕

1.接受

當流量傳遞其指定鏈中的規則時,iptable將接受該通信量。

這意味著它打開了大門,允許這個人進入王國。

2.下降

當流量無法傳遞其指定鏈中的規則時,iptable將阻塞該通信量。

這意味著防火墻關閉了。

3.拒絕

此類型的操作類似于DROP操作,但它向通信量的發送方發送一條消息,說明數據傳輸失敗。

通常情況下,當您希望另一端知道端口是不可訪問的時,請使用拒絕。‘使用DROP連接到您不希望別人看到的主機。

注:你需要記住一個簡單的規則:您在iptable中設置的規則將從最上面的規則到底部進行檢查。無論何時數據包通過任何頂級規則,它都可以通過防火墻。不檢查較低的規則。所以在制定規則時要小心。

基本iptables命令:.列出iptable的現行規則:列出當前iptable的規則:

sudo iptables -L

這個輸出量將是:

正如您所看到的,我們有三條鏈(輸入、向前、輸出)。我們也可以看到列標題,但它們不是實際的規則。這是因為大多數Linux都沒有預定義的規則。

讓我們看看每一列的含義。

Target:這定義了需要對數據包執行哪些操作(接受、丟棄等)

Prot:這定義了數據包的協議(TCP,IP)。

source:這將告訴包的源地址。

destination:這定義了數據包的目標地址。

2.明確規則:

如果您想清除/清除所有現有規則。運行以下命令:

sudo iptables -F

這將重置iptables。

3.改變鏈條的默認政策:

sudo iptables -P Chain_name Action_to_be_taken

正如您在上面的圖片中所看到的,每個鏈的默認策略是接受。

例如:

如果您看到前向鏈,您將看到“鏈式轉發(策略接受)”,這意味著您的計算機允許將任何通信量轉發到另一臺計算機。

為了改變轉發的政策以減少:

sudo iptables -P FORWARD DROP

上述命令將停止通過系統轉發的任何通信量。這意味著沒有其他系統可以作為中介傳遞數據。

制定你的第一條規則:

1.執行一項中止規則:

現在我們將開始構建防火墻策略,我們將首先在輸入鏈上工作,因為輸入的流量將通過輸入鏈。

語法:-

sudo iptables -A/-I chain_name -s source_ip -j action_to_take

我們要來理解這個話題。

假設我們想阻止來自IP地址192.168.1.3的通信量。可以使用以下命令:

sudo iptables -A INPUT -s 192.168.1.3 -j DROP

這可能看上去很復雜,但當我們仔細研究組件時,大部分內容都是有意義的:-

A INPUT

標志-A用于將規則附加到鏈的末尾。命令的這一部分告訴iptable,我們希望在輸入鏈的末尾添加一個規則。

I INPUT

在此標志中,規則被添加到鏈的頂部。

-S192.168.1.3:-

標志-s用于指定數據包的源。這告訴iptable查找來自源192.168.1.3的數據包。

-j Drop

這指定了iptable應該如何處理數據包。

簡而言之,上面的命令在輸入鏈中添加了一條規則,即如果任何數據包到達其源地址為192.168.1.3,則丟棄該數據包,這意味著不允許數據包到達計算機。

執行上述命令后,可以使用以下命令查看更改:-

sudo iptables -L

這個輸出量將是:-

2.執行接受規則:

如果要向網絡的特定端口添加規則,則可以使用以下命令。

語法:

sudo iptables -A/-I chain_name -s source_ip -p protocol_name --dport port_number -j Action_to_take

-p協議名稱:-

此選項用于匹配遵循協議名稱的數據包。

-p protocol_name

只有當您給出-p protocol_name選項時,才能使用此選項。它指定查找到端口“port_number”的數據包。

例子:

假設我們希望保持SSH端口打開(在本指南中假設默認SSH端口是22),在上述情況下,我們阻止了192.168.1.3網絡。也就是說,我們只想允許那些來自192.168.1.3的數據包,而這些包想進入端口22。

我們該怎么辦:

讓我們試試下面的命令:

sudo iptables -A INPUT -s 192.168.1.3 -p tcp --dport 22 -j ACCEPT

上面的命令表示查找來自IP地址192.168.1.3的數據包,該數據包具有TCP協議,并且誰想在我的計算機的端口22上傳遞一些東西。如果你找到了這些包,然后接受它們。

這個輸出量命令是:-

但是,上面的命令有一個問題。它實際上不允許數據包。你能猜到是什么嗎?

提示:-它與訪問規則的方式有關。

請記住,正如我們前面所討論的,您在iptables中設置的規則是從上到下檢查的。無論何時將數據包處理到頂級規則之一,都不會使用較低的規則進行檢查。

好吧!答案是:

在我們的例子中,數據包是用最上面的規則檢查的,該規則規定,iptable必須丟棄192.168.1.3中的任何數據包。因此,一旦通過這個規則訪問了數據包,它就不會進入允許分組到端口22的下一個規則。因此失敗了。

又能做些什么呢?

最簡單的答案是,將規則添加到鏈的頂部。你要做的就是把-A選項改為-I選項。

這樣做的命令是:-

sudo iptables -I INPUT -s 192.168.1.3 -p tcp --dport 22 -j ACCEPT

現在使用-L命令檢查iptable配置。產出如下:

因此,來自192.168.1.3的任何數據包都會首先檢查是否到達端口22,如果不是,則檢查

在鏈中的下一個規則中運行。否則它可以通過防火墻。

現在您已經了解了如何阻止和接受傳入的通信量,下面讓我們看看如何刪除規則:

3.從iptable中刪除一條規則:

語法:

sudo iptables -D chain_name rule_number

例子:

如果我們要刪除接受到端口22的通信并在前一節中添加的規則,那么:-

sudo iptables -D INPUT 1

記住規則號從1開始

這個輸出量 :

4.保存配置:

如果要在不是服務器的個人計算機上實現此部分,則此部分是不必要的,但如果您正在服務器上實現防火墻,那么您的服務器很可能會損壞,并且你可能會丟失你所有的數據。所以,保存配置總是更好的。

有很多方法可以做到這一點,但我發現的最簡單的方法是Iptable-持久性包裹。您可以從Ubuntu的默認存儲庫下載該包:

sudo apt-get update

sudo apt-get install iptables-persistent

安裝完成后,可以使用以下命令保存配置:-

sudo invoke-rc.d iptables-persistent save

本教程到此結束。

讓我們簡要介紹到目前為止學到的所有命令:-

1.列出國際表的現行規則:sudo iptables -L

2.若要更改默認策略,請執行以下操作:sudo iptables -P Chain_name Action_to_be_taken

例子:

sudo iptables -P FORWARD DROP

3.清除/沖洗所有規則sudo iptables -F

4.在鏈尾附加一條規則:sudo iptables -A

5.在鏈的開頭附加一條規則:sudo iptables -I

6.執行一項接受規則:sudo iptables -A/-I chain_name -s source_ip -j action_to_take

例子:

iptables -A INPUT -s 192.168.1.3 -j ACCEPT

7.執行一項中止規則:sudo iptables -A/-I chain_name -s source_ip -j action_to_take

例子:-

iptables -A INPUT -s 192.168.1.3 -j DROP

8.關于具體港口/議定書的執行規則:sudo iptables -A/-I chain_name -s source_ip -p protocol_name --dport port_number -j Action_to_take

例子:

sudo iptables -I INPUT -s 192.168.1.3 -p tcp --dport 22 -j ACCEPT

9.刪除一項規則:sudo iptables -D chain_name rule_number

例子:

sudo iptables -D INPUT 1

10.保存配置:sudo invoke-rc.d iptables-persistent save

本教程到此結束。我們已經看到了在本地計算機上實現防火墻所需的所有必要命令。我們還可以讓防火墻執行其他各種操作,但不可能在一篇文章中涵蓋所有這些操作。

分享到:
標簽:防火墻
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定