最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用iptable和Firewalld工具來管理Linux防火墻連接規(guī)則

 更新時(shí)間:2018年09月28日 11:14:10   作者:David Clinton  
今天小編就為大家分享一篇關(guān)于使用iptable和Firewalld工具來管理Linux防火墻連接規(guī)則的文章,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧

防火墻

防火墻是一套規(guī)則。當(dāng)數(shù)據(jù)包進(jìn)入或離開受保護(hù)的網(wǎng)絡(luò)空間時(shí),將根據(jù)防火墻規(guī)則測(cè)試數(shù)據(jù)包的內(nèi)容(特別是有關(guān)其來源、目標(biāo)和計(jì)劃使用的協(xié)議的信息),以確定是否應(yīng)該允許數(shù)據(jù)包通過。下面是一個(gè)簡(jiǎn)單的例子:

防火墻可以根據(jù)協(xié)議或基于目標(biāo)的規(guī)則過濾請(qǐng)求.

一方面,iptables是管理Linux機(jī)器上防火墻規(guī)則的工具。

另一方面,firewalld也是管理Linux機(jī)器上防火墻規(guī)則的工具。

你對(duì)此有意見嗎?如果我告訴你外面還有另一個(gè)工具,叫做nftable?

好吧,我承認(rèn)整件事聞起來有點(diǎn)怪怪的,所以讓我解釋一下。這一切都是從Netfilter開始的,Netfilter控制Linux內(nèi)核模塊級(jí)別對(duì)網(wǎng)絡(luò)堆棧的訪問。幾十年來,管理Netfilter鉤子的主要命令行工具是iptables規(guī)則集。

因?yàn)檎{(diào)用這些規(guī)則所需的語(yǔ)法可能有點(diǎn)神秘,各種用戶友好的實(shí)現(xiàn)如下UFW并引入了Firewalld作為高級(jí)Netfilter解釋器.然而,UFW和Firewalld主要是為了解決獨(dú)立計(jì)算機(jī)所面臨的各種問題而設(shè)計(jì)的。構(gòu)建全尺寸的網(wǎng)絡(luò)解決方案通常需要iptables的額外功能,或者自2014年以來,它的替代品nftable(通過nft命令行工具)。
iptables沒有去任何地方,而且仍然被廣泛使用。事實(shí)上,在未來的許多年里,您應(yīng)該會(huì)在管理員的工作中遇到受iptables保護(hù)的網(wǎng)絡(luò)。但是nftable通過添加到經(jīng)典的Netfilter工具集,帶來了一些重要的新功能。

從現(xiàn)在開始,我將通過示例演示Firewalld和iptables如何解決簡(jiǎn)單的連接問題。

使用Firewalld配置HTTP訪問

正如您從其名稱中可能猜到的那樣,F(xiàn)irewalld是systemd一家人。Firewalld可以安裝在Debian/Ubuntu機(jī)器上,但在RedHat和CentOS上是默認(rèn)的。如果在計(jì)算機(jī)上運(yùn)行了像Apache這樣的Web服務(wù)器,則可以通過瀏覽服務(wù)器的Web根目錄來確認(rèn)防火墻是否正常工作。如果這個(gè)網(wǎng)站無(wú)法到達(dá),那么Firewalld就在做它的工作。

您將使用firewall-cmd工具來管理命令行中的Firewalld設(shè)置。添加–state參數(shù)返回當(dāng)前防火墻狀態(tài):

# firewall-cmd --state
running

默認(rèn)情況下,F(xiàn)irewalld將處于活動(dòng)狀態(tài),并將拒絕所有傳入通信量,但有幾個(gè)例外情況,如SSH。這意味著您的網(wǎng)站將不會(huì)有太多的訪問者,這肯定會(huì)為您節(jié)省大量的數(shù)據(jù)傳輸成本。但是,由于這可能不是您對(duì)Web服務(wù)器的想法,所以您需要打開HTTP和HTTPS端口,按照約定,這兩個(gè)端口分別被指定為80和443。Firewalld提供了兩種方法來做到這一點(diǎn)。一個(gè)是通過–add-port參數(shù),直接引用端口號(hào)以及它將使用的網(wǎng)絡(luò)協(xié)議(在本例中為TCP)。這,這個(gè),那,那個(gè)–permanent參數(shù)告訴Firewalld在每次服務(wù)器啟動(dòng)時(shí)加載此規(guī)則:

# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --permanent --add-port=443/tcp

–reload參數(shù)將這些規(guī)則應(yīng)用于本屆會(huì)議:

# firewall-cmd --reload

對(duì)防火墻上的當(dāng)前設(shè)置很好奇嗎?跑–list-services:

# firewall-cmd --list-services
dhcpv6-client http https ssh

假設(shè)您添加了前面描述的瀏覽器訪問,HTTP、HTTPS和SSH端口現(xiàn)在都應(yīng)該是打開的dhcpv6-client,它允許Linux從本地DHCP服務(wù)器請(qǐng)求IPv 6 IP地址。

使用iptables配置鎖定的客戶信息亭

我敢肯定你見過售貨亭-它們是平板電腦、觸摸屏和類似ATM的個(gè)人電腦-在一個(gè)包廂里,機(jī)場(chǎng)、圖書館和商務(wù)室隨處可見,邀請(qǐng)顧客和過路人瀏覽內(nèi)容。大多數(shù)信息亭的特點(diǎn)是,你通常不希望用戶在家里把自己當(dāng)成自己的設(shè)備。它們通常不是用來瀏覽、觀看youtube視頻或?qū)ξ褰谴髽前l(fā)起拒絕服務(wù)攻擊的。所以,為了確保它們不被濫用,你需要把它們鎖起來。

一種方法是應(yīng)用某種Kiosk模式,無(wú)論是通過聰明地使用Linux顯示管理器還是在瀏覽器級(jí)別。但是,為了確保所有的漏洞都已堵塞,您可能還需要通過防火墻添加一些硬網(wǎng)絡(luò)控件。在下一節(jié)中,我將描述如何使用iptable來實(shí)現(xiàn)它。

關(guān)于使用iptables,有兩件重要的事情要記住:您給出的規(guī)則的順序是至關(guān)重要的,僅憑它本身,Iptable規(guī)則將無(wú)法在重新啟動(dòng)后存活下來。我會(huì)在這里一次講一遍。

亭工程
為了說明這一切,讓我們想象一下,我們?cè)谝患颐麨锽igMart的大型連鎖商店工作。他們已經(jīng)存在了幾十年;事實(shí)上,我們想象中的祖父母很可能是在那里購(gòu)物長(zhǎng)大的。但如今,BigMart公司總部的人可能只是在數(shù)著亞馬遜(Amazon)把他們永遠(yuǎn)趕下去之前的幾個(gè)小時(shí)。

盡管如此,BigMart的IT部門正在盡力而為,他們剛剛給您發(fā)送了一些WiFi準(zhǔn)備的信息亭設(shè)備,您可以在整個(gè)商店的戰(zhàn)略位置安裝這些設(shè)備。他們的想法是,他們將顯示一個(gè)登錄到BigMart.com產(chǎn)品頁(yè)面的網(wǎng)頁(yè)瀏覽器,允許他們查找商品特征、走道位置和庫(kù)存級(jí)別。這些信息亭還需要訪問bigmart-data.com,那里存儲(chǔ)了許多圖像和視頻媒體。

除此之外,您還希望允許更新,并在必要時(shí)允許包下載。最后,您希望只允許從本地工作站訪問入站SSH,并阻止其他所有人。下圖說明了這一切將如何運(yùn)作:

亭的交通流量由iptable控制。

劇本

下面是如何將所有這些都放入一個(gè)Bash腳本中:

#!/bin/bash
iptables -A OUTPUT -p tcp -d bigmart.com -j ACCEPT
iptables -A OUTPUT -p tcp -d bigmart-data.com -j ACCEPT
iptables -A OUTPUT -p tcp -d ubuntu.com -j ACCEPT
iptables -A OUTPUT -p tcp -d ca.archive.ubuntu.com -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j DROP
iptables -A OUTPUT -p tcp --dport 443 -j DROP
iptables -A INPUT -p tcp -s 10.0.3.1 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s 0.0.0.0/0 --dport 22 -j DROP

我們的規(guī)則的基本解剖是從-A告訴iptables我們要添加以下規(guī)則。OUTPUT這意味著這個(gè)規(guī)則應(yīng)該成為輸出鏈的一部分。-p指示此規(guī)則僅適用于使用tcp協(xié)議的數(shù)據(jù)包,其中,-d告訴我們,目的地是bigmart.com。這,這個(gè),那,那個(gè)-j標(biāo)志指向ACCEPT作為當(dāng)數(shù)據(jù)包與規(guī)則匹配時(shí)要采取的操作。在第一條規(guī)則中,該操作是允許或接受請(qǐng)求。但在更低的范圍內(nèi),您可以看到將被刪除或拒絕的請(qǐng)求。

記住秩序很重要。這是因?yàn)閕ptables將運(yùn)行一個(gè)請(qǐng)求,超過它的每個(gè)規(guī)則,但只有在它得到匹配為止。所以一個(gè)向外發(fā)送的瀏覽器請(qǐng)求,比如說,youtube.com將通過前四條規(guī)則,但是當(dāng)它到達(dá)–dport 80或–dport 443規(guī)則-取決于它是HTTP請(qǐng)求還是HTTPS請(qǐng)求-它將被刪除。Iptable不會(huì)再費(fèi)心檢查了,因?yàn)槟鞘瞧ヅ涞摹?/p>

另一方面,如果系統(tǒng)請(qǐng)求ubuntu.com進(jìn)行軟件升級(jí),那么當(dāng)它達(dá)到適當(dāng)?shù)囊?guī)則時(shí),它就會(huì)通過。顯然,我們?cè)谶@里所做的是只允許發(fā)送HTTP或HTTPS請(qǐng)求到我們的BigMart或Ubuntu目的地,而不是其他目的地。

最后兩個(gè)規(guī)則將處理傳入的SSH請(qǐng)求。由于它們不使用端口80或443,而是使用22,所以它們不會(huì)被前面的兩個(gè)DROP規(guī)則所拒絕。在這種情況下,從我的工作站登錄請(qǐng)求將被接受,但其他任何地方的請(qǐng)求將被刪除。這一點(diǎn)很重要:確保用于端口22規(guī)則的IP地址與用于登錄的機(jī)器的地址相匹配-如果不這樣做,您將立即被鎖在門外。當(dāng)然,這沒什么大不了的,因?yàn)榘凑债?dāng)前的配置方式,您可以簡(jiǎn)單地重新啟動(dòng)服務(wù)器,而iptables規(guī)則就會(huì)被刪除。如果您使用LXC容器作為您的服務(wù)器并從您的LXC主機(jī)登錄,那么使用您的主機(jī)用來連接到容器的IP地址,而不是它的公共地址。

如果我的機(jī)器的IP曾經(jīng)改變,您需要記住更新這個(gè)規(guī)則;否則,您將被鎖在門外。

在家里玩(希望是在一個(gè)丟棄的VM上)?太棒了創(chuàng)建自己的腳本。現(xiàn)在我可以保存腳本,使用chmod使其可執(zhí)行,并將其運(yùn)行為sudo。別擔(dān)心bigmart-data.com not found錯(cuò)誤-當(dāng)然找不到;它不存在。

chmod +X scriptname.sh
sudo ./scriptname.sh

您可以在命令行中使用cURL。請(qǐng)求ubuntu.com有效,但是manning.com失敗了。

curl ubuntu.com
curl manning.com

將iptables配置為在系統(tǒng)啟動(dòng)時(shí)加載

現(xiàn)在,我如何使這些規(guī)則自動(dòng)加載每次售貨機(jī)啟動(dòng)?第一步是使用iptables-save工具。這將在根目錄中創(chuàng)建一個(gè)包含規(guī)則列表的文件。這個(gè)管道,后面跟著tee命令,是應(yīng)用我的sudo權(quán)限到字符串的第二部分:將文件實(shí)際保存到其他受限制的根目錄。

然后,我可以告訴系統(tǒng)運(yùn)行一個(gè)名為iptables-restore每次它啟動(dòng)。像我們?cè)谇懊娴哪K中看到的那樣的常規(guī)cron作業(yè)不會(huì)有幫助,因?yàn)樗鼈兪窃谠O(shè)定的時(shí)間運(yùn)行的,但是我們不知道我們的計(jì)算機(jī)何時(shí)會(huì)決定崩潰和重新啟動(dòng)。

有很多方法來處理這個(gè)問題。這里有一個(gè):

在我的Linux機(jī)器上,我將安裝一個(gè)名為anacron這將在/etc/目錄中提供一個(gè)名為anacrontab的文件。我將編輯該文件并添加以下內(nèi)容iptables-restore命令,告訴它每天(必要時(shí))在啟動(dòng)后一分鐘將該.Rule文件的當(dāng)前值加載到iptables中。我會(huì)給作業(yè)一個(gè)標(biāo)識(shí)符(iptables-restore),然后添加命令本身。既然你在家里和我一起玩,你應(yīng)該重新啟動(dòng)你的系統(tǒng)來測(cè)試這一切。

sudo iptables-save | sudo tee /root/my.active.firewall.rules
sudo apt install anacron
sudo nano /etc/anacrontab
1 1 iptables-restore iptables-restore < /root/my.active.firewall.rules

我希望這些實(shí)際的例子已經(jīng)說明了如何使用iptables和Firewalld來管理基于Linux的防火墻上的連接問題。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • 詳解centos6和centos7防火墻的關(guān)閉

    詳解centos6和centos7防火墻的關(guān)閉

    本篇文章主要介紹了centos6和centos7防火墻的關(guān)閉 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2016-12-12
  • 服務(wù)器端如何開啟GZIP壓縮功能(Apache、IIS、Nginx)

    服務(wù)器端如何開啟GZIP壓縮功能(Apache、IIS、Nginx)

    在負(fù)載均衡中有一個(gè)必須要做的事情就是給服務(wù)器開啟GZIP壓縮功能,本文主要介紹了服務(wù)器端如何開啟GZIP壓縮功能,具有一定的參考價(jià)值,感興趣的可以了解下
    2022-04-04
  • 解密 Linux 版本信息的方法

    解密 Linux 版本信息的方法

    這篇文章主要介紹了解密 Linux 版本信息的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Linux下使用killall命令終止進(jìn)程的8大用法實(shí)例詳解

    Linux下使用killall命令終止進(jìn)程的8大用法實(shí)例詳解

    Linux 的命令行提供很多命令來殺死進(jìn)程。這篇文章主要介紹了Linux下使用killall命令終止進(jìn)程的8大用法,需要的朋友可以參考下
    2019-04-04
  • centos7修改網(wǎng)卡后無(wú)法上網(wǎng)問題解決過程

    centos7修改網(wǎng)卡后無(wú)法上網(wǎng)問題解決過程

    大家好,本篇文章主要講的是centos7修改網(wǎng)卡后無(wú)法上網(wǎng)問題解決過程,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 在lnmp環(huán)境中的nginx編譯安裝

    在lnmp環(huán)境中的nginx編譯安裝

    本篇文章給大家分享了在lnmp環(huán)境中的nginx編譯安裝的相關(guān)步驟以及需要注意的地方,有興趣的朋友參考學(xué)習(xí)下。
    2018-04-04
  • 優(yōu)化Apache服務(wù)器性能的方法小結(jié)

    優(yōu)化Apache服務(wù)器性能的方法小結(jié)

    盡管Apache是一個(gè)高可定制的功能強(qiáng)大且相當(dāng)復(fù)雜的服務(wù)器軟件,我們很有興趣的注意到即使是Apache的標(biāo)準(zhǔn)安裝也可以得到不錯(cuò)的性能。
    2010-12-12
  • ubuntu20.04連接wifi的方法(2種)

    ubuntu20.04連接wifi的方法(2種)

    這篇文章主要介紹了ubuntu20.04連接wifi的方法(2種),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • ubuntu mysql更改tmp路徑的方法

    ubuntu mysql更改tmp路徑的方法

    因?yàn)閙ysql經(jīng)常要把文件定入tmp目錄,而tmp的目錄為/tmp,為了提高性能,所以考慮更改tmpdir目錄為/run/shm,即使用內(nèi)存來存儲(chǔ)。下文給大家介紹ubuntu mysql更改tmp路徑的方法,一起看看吧
    2016-10-10
  • linux設(shè)置tomcat自啟動(dòng)的方法

    linux設(shè)置tomcat自啟動(dòng)的方法

    這篇文章主要介紹了linux設(shè)置tomcat自啟動(dòng)的方法,需要的朋友可以參考下
    2014-03-03

最新評(píng)論

乌什县| 淮南市| 望谟县| 贵德县| 连平县| 边坝县| 建宁县| 呼和浩特市| 威海市| 汝南县| 扬中市| 桓台县| 中江县| 招远市| 惠安县| 金平| 靖州| 阿鲁科尔沁旗| 交城县| 阿巴嘎旗| 垣曲县| 新晃| 普陀区| 青铜峡市| 西乌| 大渡口区| 成武县| 买车| 多伦县| 潜江市| 宜兰市| 华容县| 革吉县| 松原市| 曲阜市| 和政县| 吉安市| 绍兴市| 崇左市| 禄丰县| 旺苍县|