亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 5733 | 回復(fù): 8
打印 上一主題 下一主題

[proxy] iptables基礎(chǔ) [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2005-01-04 12:07 |只看該作者 |倒序?yàn)g覽
iptables基礎(chǔ)


[作者序]:本來(lái)是要翻譯http://www.justlinux.com/nhf/Security/IPtables_Basics.html這篇文章的,可惜當(dāng)年實(shí)在是沒(méi)有學(xué)好語(yǔ)法,許多句子按照原文翻譯,如何也理不通順。只好按照自己的理解重新組織了,但愿不會(huì)有太大的偏差。好在,無(wú)論如何,現(xiàn)在讀起來(lái),基本通順了。

Iptables用三種鏈來(lái)管理放出、進(jìn)入或經(jīng)過(guò)你計(jì)算機(jī)的(數(shù)據(jù))包。INPUT鏈管理進(jìn)入你計(jì)算機(jī)的包,OUTPUT鏈管理你計(jì)算機(jī)放出的包,F(xiàn)ORWARD鏈管理經(jīng)過(guò)你的計(jì)算機(jī)轉(zhuǎn)送到另一臺(tái)計(jì)算機(jī)的包。

所以,設(shè)置iptables的過(guò)程事實(shí)上就是定義一些規(guī)則來(lái)決定如何處理這三種包的過(guò)程。

例如,如果你訪問(wèn)http://www.yahoo.com,你的計(jì)算機(jī)將放出一個(gè)包向Yahoo!請(qǐng)求。這個(gè)包就要經(jīng)過(guò)OUTPUT鏈的審核。內(nèi)核會(huì)瀏覽OUTPUT鏈,看看是否有某條規(guī)則不允許放出這個(gè)包,如果有的話,就拒絕放出。

現(xiàn)在讓我們來(lái)處理一些實(shí)際問(wèn)題。比如你想阻塞所有來(lái)自200.200.200.1的包。首先你需要用-s選項(xiàng)來(lái)指明源IP地址或DNS:

  1. iptables -s 200.200.200.1
復(fù)制代碼


然后可以用-j選項(xiàng)來(lái)說(shuō)明如何處理這個(gè)包。最常用的處理方式有三種:ACCEPT、DENY和DROP。ACCEPT顧名思義表示接受包,DENY不接受同時(shí)回送一條拒絕信息,而DROP則根本對(duì)包不予理睬。如果確信某個(gè)IP可疑,那么最好選擇DROP而不是DENY:

  1. iptables -s 200.200.200.1 -j DROP
復(fù)制代碼


但是僅僅使用上面這條命令,我們的計(jì)算機(jī)會(huì)無(wú)所適從,因?yàn)樗恢涝撚媚臈l鏈來(lái)處理這項(xiàng)規(guī)則。這就要用到-A選項(xiàng),它表示把某條規(guī)則追加到某個(gè)鏈的末尾。我們打算拒絕所有來(lái)自200.200.200.1的包,所以使用:

  1. iptables -A INPUT -s 200.200.200.1 -j DROP
復(fù)制代碼


選項(xiàng)的順序不會(huì)影響最終的處理結(jié)果,-j DROP也可以放在-s 200.200.200.1的前面,只不過(guò)放在后面似乎更容易理解。
現(xiàn)在擴(kuò)展一下,假設(shè)我們不想發(fā)送任何包給200.200.200.1該如何做呢?很簡(jiǎn)單,只要把INPUT換成OUTPUT,同時(shí)用-d替換-s就可以了:

  1. iptables -A OUTPUT -d 200.200.200.1 -j DROP
復(fù)制代碼


那么,如果我們打算忽略來(lái)自這臺(tái)機(jī)器的telnet請(qǐng)求該怎么辦呢?你可能知道telnet使用的是23端口,但是如果你愿意,你也可以在iptables中使用telnet關(guān)鍵字而不是端口號(hào)。Telnet,像大多數(shù)服務(wù)一樣,運(yùn)行于TCP協(xié)議之上。我們可以使用-p選項(xiàng)來(lái)指明所用的協(xié)議。但是只指明協(xié)議不會(huì)有任何作用,還需要使用—destination-port來(lái)指出我們要為哪個(gè)目標(biāo)端口指定規(guī)則。與之相對(duì)應(yīng),--source-prot用來(lái)指明源端口,確信別把二者弄混了。所以我們可以這樣拒絕某臺(tái)機(jī)器的telnet請(qǐng)求:

  1. iptables -A INPUT -s 200.200.200.1 -p tcp --destination-port telnet -j DROP
復(fù)制代碼


擴(kuò)展一下,如果你想拒絕一個(gè)網(wǎng)段的telnet請(qǐng)求,可以使用200.200.200.0/24來(lái)代替上面的200.200.200.1,它匹配任何200.200.200.*這樣的IP地址。

再?gòu)?fù)雜一些。假設(shè)我們同時(shí)可以連接到本地局域網(wǎng)和internet,eth0網(wǎng)卡用來(lái)連接本地局域網(wǎng),ppp0用來(lái)?yè)芴?hào)到internet。我們可能只想為本地局域網(wǎng)提供telnet服務(wù)而不想為不安全的internet提供此項(xiàng)服務(wù)。有兩種選擇:在OUTPUT鏈上用-o選項(xiàng)阻塞設(shè)備輸出數(shù)據(jù),但更好的是在INPUT鏈上用-i選項(xiàng)阻塞設(shè)備輸入數(shù)據(jù)。因此,這條規(guī)則可以這樣設(shè)置:



  1. iptables -A INPUT -p tcp --destination-port telnet -i ppp0 -j DROP
復(fù)制代碼


這將關(guān)閉一切來(lái)自internet的telnet請(qǐng)求但是開(kāi)放局域網(wǎng)同樣的請(qǐng)求。

規(guī)則可以使用-A選項(xiàng)來(lái)追加在規(guī)則列表之后 ,也可以使用-I選項(xiàng)插入在某條規(guī)則之前。例如,如果我們想把一條規(guī)則放在INPUT鏈的最前面,我們可以使用“-I INPUT 1”。其中的1代表規(guī)則列表的第一行,你也可以把它換成其它的數(shù)字。除此之外,我們還可以使用-R選項(xiàng)來(lái)替換某條規(guī)則(它將刪除原來(lái)的規(guī)則),-D選項(xiàng)來(lái)刪除某條規(guī)則,-L選項(xiàng)來(lái)列出所有已經(jīng)設(shè)置的規(guī)則,-F選項(xiàng)來(lái)初始化所有規(guī)則。

現(xiàn)在,再深入一步。網(wǎng)絡(luò)中的數(shù)據(jù)包通常使用某種協(xié)議,如果這種協(xié)議是TCP,它還會(huì)使用某個(gè)端口。你可能想干脆關(guān)閉所有端口拒絕進(jìn)來(lái)的包,但是記著,如果你的計(jì)算機(jī)同另一臺(tái)計(jì)算機(jī)會(huì)話,另一臺(tái)計(jì)算機(jī)肯定會(huì)發(fā)送反饋信息。如果你關(guān)閉了所有進(jìn)來(lái)的端口,那本質(zhì)上就表示你的連接就沒(méi)有用了。而且對(duì)于大多數(shù)非服務(wù)程序來(lái)說(shuō),你無(wú)法預(yù)知它們使用哪個(gè)端口進(jìn)行會(huì)話。但是仍然有一種辦法。當(dāng)兩臺(tái)計(jì)算機(jī)在TCP連接上進(jìn)行會(huì)話時(shí),連接一定會(huì)首先被初始化。完成這項(xiàng)任務(wù)的包叫作SYN。一個(gè)SYN包簡(jiǎn)單的表明另一臺(tái)計(jì)算機(jī)已經(jīng)做好了會(huì)話的準(zhǔn)備。只有發(fā)出服務(wù)請(qǐng)求的計(jì)算機(jī)才發(fā)送SYN包。所以如果你僅拒絕進(jìn)來(lái)的SYN包,它將終止其它計(jì)算機(jī)打開(kāi)你計(jì)算機(jī)上的服務(wù),但是不會(huì)終止你使用其它計(jì)算機(jī)上的服務(wù),如果它沒(méi)有拒絕你發(fā)送的SYN包的話。這是一種折衷的辦法,但是可以完成許多我們想完成的任務(wù)。這個(gè)選項(xiàng)是--syn,用在你指明的TCP協(xié)議之后。所以制定一條規(guī)則阻塞所有來(lái)自internet的連接會(huì)是這樣:

  1. iptables -A INPUT -i ppp0 -p tcp --syn -j DROP
復(fù)制代碼


這是一條非常有用的規(guī)則除非你的計(jì)算機(jī)運(yùn)行有web服務(wù)。如果你僅打算開(kāi)放一個(gè)端口,比如說(shuō)80(HTTP),有種簡(jiǎn)單的辦法。和許多編程語(yǔ)言一樣,可以用一個(gè)驚嘆號(hào)表示“非”。例如,你打算阻塞所有80端口以外的SYN包,我想會(huì)是這樣:

  1. iptables -A INPUT -i ppp0 -p tcp --syn --destination-port ! 80 -j DROP
復(fù)制代碼


這稍微有點(diǎn)復(fù)雜但并不難理解。

最后,如何改變鏈的現(xiàn)有規(guī)則呢?INPUT鏈和OUTPUT鏈通常默認(rèn)被設(shè)置為ACCEPT而FORWARD鏈默認(rèn)則被設(shè)置為DENY。如果你打算把一臺(tái)計(jì)算機(jī)作為路由器,你可能要設(shè)置FORWARD規(guī)則為ACCEPT。如何做這個(gè)?事實(shí)上很簡(jiǎn)單。只要使用-P選項(xiàng),在它后面跟上鏈的名字和你制定的新規(guī)則就可以了。例如,把FORWARD鏈改為ACCEPT規(guī)則,我們這樣做:

  1. iptables -P FORWARD ACCEPT
復(fù)制代碼

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2005-01-05 10:39 |只看該作者

iptables基礎(chǔ)

不錯(cuò),收到,謝謝!

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2005-01-31 14:22 |只看該作者

iptables基礎(chǔ)

不過(guò),拜托你能不能講完的?

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2005-02-01 10:30 |只看該作者

iptables基礎(chǔ)

寫(xiě)的不錯(cuò),可是為什么我指定那個(gè)syn的策略為什么好想不起作用似的,難道要重啟機(jī)器的嗎,還是怎么樣,請(qǐng)指教

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2005-05-16 17:54 |只看該作者

iptables基礎(chǔ)

哇,要的就這么詳細(xì)的資料,謝謝樓主!
對(duì)了 INPUT 這個(gè)鏈?zhǔn)莊ilter表里面的嗎?能不能說(shuō)說(shuō)filter呢!

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2006-01-11 22:50 |只看該作者
頂一個(gè)。寫(xiě)的簡(jiǎn)單明了,hehe。

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2006-04-05 12:14 |只看該作者

正需要

謝謝
正找呢

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2006-04-13 09:37 |只看該作者
很好啊 真是聽(tīng)君一席話勝讀十年書(shū)啊。。。。。。。。。。 還有后續(xù)嗎?

論壇徽章:
0
9 [報(bào)告]
發(fā)表于 2007-01-31 16:57 |只看該作者
繼續(xù)努力
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP