自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Fedora iptables初始化工作開(kāi)始設(shè)置規(guī)則

系統(tǒng) Linux
Fedora iptables是復(fù)雜的,它集成到linux內(nèi)核中。用戶通過(guò)Fedora iptables,可以對(duì)進(jìn)出你的計(jì)算機(jī)的數(shù)據(jù)包進(jìn)行過(guò)濾。通過(guò)Fedora iptables命令設(shè)置你的規(guī)則,來(lái)把守你的計(jì)算機(jī)網(wǎng)絡(luò)──哪些數(shù)據(jù)允許通過(guò),哪些不能通過(guò),哪些通過(guò)的數(shù)據(jù)進(jìn)行記錄(log)。接下來(lái),我將告訴你如何設(shè)置自己的規(guī)則,從現(xiàn)在就開(kāi)始吧。

想知道到Fedora iptables系統(tǒng)的真相么,想知道Fedora iptables系統(tǒng)中藏有的內(nèi)在奧義么,只有我來(lái)給大家全面講解介紹Fedora iptables系統(tǒng)iptables--靜態(tài)防火墻實(shí)例教程 follow me

1、Fedora iptables介紹

Fedora iptables是復(fù)雜的,它集成到linux內(nèi)核中。用戶通過(guò)Fedora iptables,可以對(duì)進(jìn)出你的計(jì)算機(jī)的數(shù)據(jù)包進(jìn)行過(guò)濾。通過(guò)Fedora iptables命令設(shè)置你的規(guī)則,來(lái)把守你的計(jì)算機(jī)網(wǎng)絡(luò)──哪些數(shù)據(jù)允許通過(guò),哪些不能通過(guò),哪些通過(guò)的數(shù)據(jù)進(jìn)行記錄(log)。接下來(lái),我將告訴你如何設(shè)置自己的規(guī)則,從現(xiàn)在就開(kāi)始吧。

2、Fedora iptables初始化工作

在shell提示符 # 下打入iptables -Fiptables -Xiptables -t nat -F iptables -t nat -X以上每一個(gè)命令都有它確切的含義。一般設(shè)置你的Fedora iptables之前,首先要清除所有以前設(shè)置的規(guī)則,我們就把它叫做初始化好了。雖然很多情況下它什么也不做,但是保險(xiǎn)起見(jiàn),不妨小心一點(diǎn)吧! 如果你用的是redhat 或fedora,那么你有更簡(jiǎn)單的辦法service iptables stop

3、開(kāi)始設(shè)置規(guī)則:

接下下開(kāi)始設(shè)置你的規(guī)則了Fedora iptables -P INPUT DROP這一條命令將會(huì)為你構(gòu)建一個(gè)非?!鞍踩钡姆阑饓?,我很難想象有哪個(gè)hacker能攻破這樣的機(jī)器,因?yàn)樗鼘⑺袕木W(wǎng)絡(luò)進(jìn)入你機(jī)器的數(shù)據(jù)丟棄(drop)了。這當(dāng)然是安全過(guò)頭了,此時(shí)你的機(jī)器將相當(dāng)于沒(méi)有網(wǎng)絡(luò)。如果你ping localhost,你就會(huì)發(fā)現(xiàn)屏幕一直停在那里,因?yàn)閜ing收不到任何回應(yīng)。

4 、Fedora iptables添加規(guī)則

接著上文繼續(xù)輸入命令:Fedora iptables -A INPUT -i ! ppp0 -j ACCEPT這條規(guī)則的意思是:接受所有的,來(lái)源不是網(wǎng)絡(luò)接口ppp0的數(shù)據(jù)。我們假設(shè)你有兩個(gè)網(wǎng)絡(luò)接口,eth0連接局域網(wǎng),loop是回環(huán)網(wǎng)(localhost)。ppp0是一般的adsl上網(wǎng)的internet網(wǎng)絡(luò)接口,如果你不是這種上網(wǎng)方式,那則有可能是eth1。

在此我假設(shè)你是adsl上網(wǎng),你的internet接口是ppp0此時(shí)你即允許了局域網(wǎng)的訪問(wèn),你也可以訪問(wèn)localhost此時(shí)再輸入命令 ping localhost,結(jié)果還會(huì)和剛才一樣嗎?到此我們還不能訪問(wèn)www,也不能mail,接著看吧。

5、我想訪問(wèn)www

Fedora iptables -A INPUT -i ppp0 -p tcp --sport 80 -j ACCEPT允許來(lái)自網(wǎng)絡(luò)接口ppp0(internet接口),并且來(lái)源端口是80的數(shù)據(jù)進(jìn)入你的計(jì)算機(jī)。80端口正是www服務(wù)所使用的端口。好了,現(xiàn)在可以看網(wǎng)頁(yè)了。

但是,你能看到嗎?如果你在瀏覽器的地址中輸入http://www.baidu.com/,能看到網(wǎng)頁(yè)嗎?你得到的結(jié)果一定是:找不到主機(jī)http://www.baidu.com/但是,如果你再輸入220.181.27.5,你仍然能夠訪問(wèn)baidu的網(wǎng)頁(yè)。

為什么?如果你了解dns的話就一定知道原因了。因?yàn)槿绻愦蛉雡ww.baidu.com,你的電腦無(wú)法取得www.baidu.com這個(gè)名稱所能應(yīng)的ip地址220.181.27.5。如果你確實(shí)記得這個(gè)ip,那么你仍然能夠訪問(wèn)www,你當(dāng)然可以只用ip來(lái)訪問(wèn)www,如果你想挑戰(zhàn)你的記憶的話^ _ ^,當(dāng)然,我們要打開(kāi)DNS。

6、打開(kāi)dns端口

打開(kāi)你的dns端口,輸入如下命令:Fedora iptables -A INPUT -i ppp0 -p udp -sport 53 -j ACCEPT這條命令的含義是,接受所有來(lái)自網(wǎng)絡(luò)接口ppp0,upd協(xié)議的53端口的數(shù)據(jù)。53也就是著名的dns端口。此時(shí)測(cè)試一下,你能通過(guò)主機(jī)名稱訪問(wèn)www嗎?你能通過(guò)ip訪問(wèn)www嗎?當(dāng)然,都可以!

7、查看防火墻

此時(shí)可以查看你的防火墻了Fedora iptables -L 如果你只想訪問(wèn)www,那么就可以到此為止,你將只能訪問(wèn)www了。 不過(guò)先別急,將上面講的內(nèi)容總結(jié)一下,寫(xiě)成一個(gè)腳本。

  1. #!/bin/bash  
  2. # This is a script   
  3. # Edit by liwei  
  4. # establish static firewall  
  5. iptables -F   
  6. iptables -X  
  7. iptables -t nat -F  
  8. iptables -t nat -X  
  9. iptables -P INPUT DROP  
  10. iptables -A INPUT -i ! ppp0 -j ACCEPT  
  11. iptables -A INPUT -i ppp0 -p tcp --sport 80 -j ACCEPT  
  12. iptables -A INPUT -i ppp0 -p udp --sport 53 -j ACCEPT 

8、復(fù)雜嗎?到此Fedora iptables可以按你的要求進(jìn)行包過(guò)濾了。你可以再設(shè)定一些端口,允許你的機(jī)器訪問(wèn)這些端口。這樣有可能,你不能訪問(wèn)QQ,也可能不能打網(wǎng)絡(luò)游戲,是好是壞,還是要看你自己而定了。

順便說(shuō)一下,QQ這個(gè)東西還真是不好控制,用戶與服務(wù)器連接使用的好像是8888端口,而QQ上好友互發(fā)消息使用的又是udp的4444端口(具體是不是4444還不太清楚)。而且QQ還可以使用www的80端口進(jìn)行登錄并發(fā)消息,看來(lái)學(xué)無(wú)止境,你真的想把這個(gè)家伙控制住還不容易呢?還是進(jìn)入我們的正題吧。如果你的機(jī)器是服務(wù)器,怎么辦?

9、如果不巧你的機(jī)器是服務(wù)器,并且要提供www服務(wù)。顯然,以上的腳本就不能符合我們的要求了。但只要你撐握了規(guī)則,稍作修改同樣也能很好的工作。在最后面加上一句
iptables -A INPUT -i ppp0 -p tcp --dport 80 -j ACCEPT這一句也就是將自己機(jī)器上的80端口對(duì)外開(kāi)放了,這樣internet上的其他人就能訪問(wèn)你的www了。

當(dāng)然,你的www服務(wù)器得工作才行。如果你的機(jī)器同時(shí)是smtp和pop3服務(wù)器,同樣的再加上兩條語(yǔ)句,將--dport后面的80改成25和110就行了。如果你還有一個(gè)ftp服務(wù)器,呵呵,如果你要打開(kāi)100個(gè)端口呢……

我們的工作好像是重復(fù)性的打入類似的語(yǔ)句,你可能自己也想到了,我可以用一個(gè)循環(huán)語(yǔ)句來(lái)完成,對(duì),此處可以有效的利用shell腳本的功能,也讓你體驗(yàn)到了shell腳本語(yǔ)言的威力??聪挛模?/P>

10、用腳本簡(jiǎn)化你的工作,閱讀下面的腳本

  1. #!/bin/bash  
  2. # This is a script   
  3. # Edit by liwei  
  4. # establish a static firewall  
  5. # define const here  
  6. Open_ports="80 25 110 10" # 自己機(jī)器對(duì)外開(kāi)放的端口  
  7. Allow_ports="53 80 20 21" # internet的數(shù)據(jù)可以進(jìn)入自己機(jī)器的端口  
  8. #init  
  9. iptables -F   
  10. iptables -X  
  11. iptables -t nat -F  
  12. iptables -t nat -X  
  13. iptables -P INPUT DROP #we can use another method to instead it   
  14. iptables -A INPUT -i ! ppp0 -j ACCEPT  
  15. # define ruler so that some data can come in.  
  16. for Port in "$Allow_ports" ; do  
  17. iptables -A INPUT -i ppp0 -p tcp -sport $Port -j ACCEPT   
  18. iptables -A INPUT -i ppp0 -p udp -sport $Port -j ACCEPT   
  19. done  
  20. for Port in "$Open_ports" ; do  
  21. iptables -A INPUT -i ppp0 -p tcp -dport $Port -j ACCEPT   
  22. iptables -A INPUT -i ppp0 -p udp -dport $Port -j ACCEPT   
  23. done 

這個(gè)腳本有三個(gè)部分(最前面的一段是注釋,不算在這三部分中)第一部分是定義一些端口:訪問(wèn)你的機(jī)器"Open_ports"端口的數(shù)據(jù),允許進(jìn)入;來(lái)源是"Allow_ports"端口的數(shù)據(jù),也能夠進(jìn)入。

第二部分是Fedora iptables的初始化,第三部分是對(duì)定義的端口具體的操作。如果以后我們的要求發(fā)生了一些變化,比如,你給自己的機(jī)器加上了一個(gè)ftp服務(wù)器,那么只要在第一部分"Open_ports"的定義中,將ftp對(duì)應(yīng)的20與21端口加上去就行了。呵呵,到此你也一定體會(huì)到了腳本功能的強(qiáng)大的伸縮性,但腳本的能力還遠(yuǎn)不止這些呢!

11、使你的防火墻更加完善

看上面的腳本init部分的倒數(shù)第二句Fedora iptables -P INPUT DROP這是給防火墻設(shè)置默認(rèn)規(guī)則。當(dāng)進(jìn)入我們計(jì)算機(jī)的數(shù)據(jù),不匹配我們的任何一個(gè)條件時(shí),那么就由默認(rèn)規(guī)則來(lái)處理這個(gè)數(shù)據(jù)----drop掉,不給發(fā)送方任何應(yīng)答。

也就是說(shuō),如果你從internet另外的一臺(tái)計(jì)算機(jī)上ping你的主機(jī)的話,ping會(huì)一直停在那里,沒(méi)有回應(yīng)。如果黑客用namp工具對(duì)你的電腦進(jìn)行端口掃描,那么它會(huì)提示黑客,你的計(jì)算機(jī)處于防火墻的保護(hù)之中。

我可不想讓黑客對(duì)我的計(jì)算機(jī)了解太多,怎么辦,如果我們把drop改成其他的動(dòng)作,或許能夠騙過(guò)這位剛出道的黑客呢。怎么改呢?將剛才的那一句( iptables -P INPUT DROP )去掉,在腳本的最后面加上iptables -A INPUT -i ppp0 -p tcp -j REJECT --reject-with tcp-resetiptables -A INPUT -i ppp0 -p udp -j REJECT --reject-with icmp-port-unreachable

這樣就好多了,黑客雖然能掃描出我們所開(kāi)放的端口,但是他卻很難知道,我們的機(jī)器處在防火墻的保護(hù)之中。如果你只運(yùn)行了ftp并且僅僅對(duì)局域網(wǎng)內(nèi)部訪問(wèn),他很難知道你是否運(yùn)行了ftp。

在此我們給不應(yīng)該進(jìn)入我們機(jī)器的數(shù)據(jù),一個(gè)欺騙性的回答,而不是丟棄(drop)后就不再理會(huì)。這一個(gè)功能,在我們?cè)O(shè)計(jì)有狀態(tài)的防火墻中(我這里講的是靜態(tài)的防火墻)特別有用。你可以親自操作一下,看一看修改前后用namp掃描得到的結(jié)果會(huì)有什么不同?

12、這個(gè)教程我想到此就結(jié)束了,其中有很多東西在這里沒(méi)有提到,如ip偽裝,端口轉(zhuǎn)發(fā),對(duì)數(shù)據(jù)包的記錄功能。還有一個(gè)很重要的東西就是:Fedora iptables處理數(shù)據(jù)包的流程.在這里我想告訴你,你設(shè)置的過(guò)濾規(guī)則的順序很重要,在此不宜詳細(xì)介紹,因?yàn)檫@樣一來(lái),這個(gè)教程就會(huì)拘泥于細(xì)節(jié)。

Fedora iptables是復(fù)雜的,我在linuxsir上看過(guò)很多教程,它們往往多而全,反而讓人望而生畏,希望我的這個(gè)教程,能夠指導(dǎo)你入門(mén)。加油!最后,我把完整的腳本寫(xiě)出來(lái)如下,你只要修改常量定義部分,就能表現(xiàn)出較大的伸縮性^_^

  1. #!/bin/bash  
  2. # This is a script   
  3. # Edit by liwei  
  4. # establish a static firewall  
  5. # define const here  
  6. Open_ports="80 25 110 10" # 自己機(jī)器對(duì)外開(kāi)放的端口  
  7. Allow_ports="53 80 20 21" # internet的數(shù)據(jù)可以進(jìn)入自己機(jī)器的端口  
  8. #init  
  9. iptables -F   
  10. iptables -X  
  11. iptables -t nat -F  
  12. iptables -t nat -X  
  13. # The follow is comment , for make it better  
  14. # iptables -P INPUT DROP   
  15. iptables -A INPUT -i ! ppp0 -j ACCEPT  
  16. # define ruler so that some data can come in.  
  17. for Port in "$Allow_ports" ; do  
  18. ptables -A INPUT -i ppp0 -p tcp -sport $Port -j ACCEPT   
  19. iptables -A INPUT -i ppp0 -p udp -sport $Port -j ACCEPT   
  20. done  
  21. for Port in "$Open_ports" ; do  
  22. iptables -A INPUT -i ppp0 -p tcp -dport $Port -j ACCEPT   
  23. iptables -A INPUT -i ppp0 -p udp -dport $Port -j ACCEPT   
  24. done  
  25. # This is the last ruler , it can make you firewall better  
  26. iptables -A INPUT -i ppp0 -p tcp -j REJECT --reject-with tcp-reset  
  27. iptables -A INPUT -i ppp0 -p udp -j REJECT --reject-with icmp-port-unreachable  

【編輯推薦】

  1. Fedora Linux分區(qū)規(guī)劃還算得心應(yīng)手
  2. Fedora vsftpd配置文件的說(shuō)明一些常用功能的實(shí)現(xiàn)
  3. Fedora vsFTPd和防火墻及SELINUX的關(guān)系
  4. Fedora vsFTPd服務(wù)器的安裝啟動(dòng)和關(guān)閉
  5. Fedora FTP用戶管理解說(shuō)匿名用戶和用戶組的理解
責(zé)任編輯:佚名 來(lái)源: CSDN
相關(guān)推薦

2011-03-16 10:52:20

2011-03-17 17:45:45

iptables規(guī)則

2011-03-18 09:26:13

Iptables規(guī)則

2011-03-16 09:30:47

iptables過(guò)濾

2011-03-16 16:41:57

清空iptables

2011-03-16 10:59:57

2023-11-12 23:08:17

C++初始化

2011-03-14 15:46:35

Iptables語(yǔ)法

2011-03-16 16:54:10

iptables 清空linux

2010-08-03 17:42:54

Fedora NFS

2020-07-27 17:32:21

Fedora 33FedoraBtrfs

2018-05-14 08:36:06

JavaFedoraOpenJDK

2011-06-17 15:29:44

C#對(duì)象初始化器集合初始化器

2019-11-04 13:50:36

Java數(shù)組編程語(yǔ)言

2009-09-08 09:48:34

LINQ初始化數(shù)組

2009-11-11 15:29:15

ADO初始化

2021-03-12 10:30:11

SpringMVC流程初始化

2010-07-28 10:22:33

FlexApplica

2022-07-06 10:37:45

SpringServlet初始化

2020-12-03 09:50:52

容器IoC流程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)