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

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 4514 | 回復: 2
打印 上一主題 下一主題

Ipchains參數(shù)完全手冊 (轉(zhuǎn)帖) [復制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2003-01-16 11:23 |只看該作者 |倒序瀏覽
Ipchains參數(shù)完全手冊


Ipchains被用來安裝、維護、檢查Linux內(nèi)核的防火墻規(guī)則。規(guī)則可以分成四類:IP input鏈、IP output鏈、IP forward鏈、user defined鏈。

一個防火墻規(guī)則指定包的格式和目標。當一個包進來時,核心使用input鏈來決定它的命運。如果它通過了,那么核心將決定下一步包該發(fā)往何處(這一步叫路由)。假如它是送往另一臺機器的,核心就運用forward鏈。如果不匹配,進入目標值所指定的下一條鏈,那有可能是一條user defined鏈,或者是一個特定值:ACCEPT,DENY,REJECT,MASQ,REDIRECT,RETURN。

ACCEPT意味著允許包通過,DENY 扔掉包就象沒有收到過一樣,REJECT也把包扔掉,但(假如它不是ICMP包)產(chǎn)生一個ICMP回復來告訴發(fā)包者,目的地址無法到達(請注意DENY和REJECT對于ICMP包是一樣的)。

MASQ告訴核心偽裝此包,它只對forward鏈和user defined鏈起作用,想讓它起作用,編譯核心時必需讓IP Masquerading起作用。

REDIRECT只對input鏈和user defined鏈起作用。它告訴核心把無論應送到何處的包改送到一個本地端口。只有TCP和UDP協(xié)議可以使用此指定。任意用“-j REDIRECT”指定一個端口(名字或編號)可以使送往此的包被重定向到某個特殊的端口,即使它被標記為送到其它端口。想讓它起作用,編譯內(nèi)核時,必須讓CONFIG_IP_TRANSPARENT_PROXY起作用。

最后的一個目標指定是RETURN,它跳過它下面的所有規(guī)則,直到鏈的末尾。

任何其它的目標指定表示一個用戶自定義的鏈。包將在那個鏈中通過,假如那個鏈沒有決定此包的命運,那么在那個鏈中的傳輸就完成了,包將通過當前鏈的下一個規(guī)則。

參數(shù)說明
-A :--append

在所選鏈的鏈尾加入一個或多個規(guī)則。有時一個單命令行能影響多個規(guī)則,有兩種做法:第一,假如你設(shè)置一個能解析為多個IP地址(使用 DNS)的主機名,ipchains將如同你對多個地址都設(shè)置了命令一樣發(fā)生作用。假如主機名“www.foo.com”解析為三個IP地址,主機名“www.bar.com”解析為兩個IP地址,那么命令“ipchains -A input -j reject -s www.bar.com -d www.foo.com”將在input鏈中追加6條規(guī)則。-D(-I,-R)的語法與-A完全相同。當在一個鏈中有多個相同的規(guī)則時,只有第一個被刪除。

-D,--delete

從所選鏈中刪除一或多條規(guī)則。我們可以用兩鐘方法中的任何一鐘刪除此規(guī)則。首先如果我們知道它是鏈中的唯一規(guī)則,我們可以使用編號刪除,輸入:

# ipchains -D input 1

來刪除進入鏈的編號1規(guī)則。第二條路是-A命令的鏡象,但是用-D代替-A. 當你不愿意去數(shù)繁多的規(guī)則時,這是一個有用的方法。這種情況下,我們使用:

# ipchains -D input -s 127.0.0.1 -p icmp -j DENY

-R,--replace

在所選鏈中替換一條規(guī)則,如果源和目標目標名解析到多個地址,命令將失敗。

-I,--insert

以給出的規(guī)則號在所選鏈中插入一條或多條規(guī)則。如果規(guī)則號是1,插入的規(guī)則在鏈的頭部。

-L,--list

列出指定鏈的所有規(guī)則。如果沒有指定鏈,將列出所有鏈的規(guī)則。-L有三個可選項:“-n”(數(shù)值)項非常有用,它阻止 ipchains 去查找IP地址,假如你的DNS沒有正確設(shè)置,或你已經(jīng)過濾掉了 DNS 請求,這將造成很大延時。它還會導致端口用數(shù)字而不是名字被顯示出來!-v”選項顯示規(guī)則的所有詳細信息,如包和字節(jié)計數(shù)器,TOS掩碼,接口,和包標記,用其它的方法這些項都會被忽略。

-F,--flush

使用“-F”命令可以清除一個鏈中的所有規(guī)則。

# ipchains -F forward

假如你不指定鏈,那么所有鏈都將被清空。

-Z,--zero

重置計數(shù)器。但有時你想在重置計數(shù)器前知道它們的值。你可以同時使用“-L”和“-Z”命令,讀計數(shù)器的同時重置它們。不幸的是,假如你這樣做,你不能只操作一個鏈,你不得不列表和清零所有的鏈。

-N,--new-chain

以給定的名字創(chuàng)建一條新的user defined鏈。不能與已有鏈同名。

-X,--delete-chain

刪除鏈必須滿足兩個條件:它們是空的,并且不是任何規(guī)則的目標. 但你不能刪除3個內(nèi)置鏈中的任何一個。

-P,--policy

改變內(nèi)置鏈政策。

-M,--masquerading

允許觀察當前IP偽裝的連接(與-L一起);蛘咴O(shè)置內(nèi)核IP 偽裝的參數(shù)(與 -S 一起)。

-S,--set tcp tcpfin udp

設(shè)置偽裝的超時值,“-S” 后跟三個以秒表示的超時值: TCP sessions,F(xiàn)IN 包到后的TCP sessions,和對于UDP包的。假如你不想改變這些值,給個“0”值即可。

默認值在“/usr/include/net/ip_masp.h”文件中,目前分別是15分,2分和5分。僅允許和“-M”一起使用。

-C,-- check

有時你想知道一個確定的包進入機器后會發(fā)生什么事情,比如調(diào)試防火鏈時。ipchains的“-C”命令提供與核心檢查真實包完全相同的程序來讓你做這件事。

你可以指定讓哪個鏈來檢測包,把鏈的名字放在“-C”參數(shù)后即可。鑒于核心總是從input,output或forward鏈開始,特許你從需要測試的鏈開始。

包的細節(jié)用與設(shè)置防火墻規(guī)則相同的語法設(shè)定。 在個別時,包的協(xié)議(“-p”),源地址(“-s”),目的地址(“-d”),和接口(“-i”)必須有。假如協(xié)議是TCP或UDP,那么必須指定一個源地址和一個目的端口,對于ICMP協(xié)議必須指定類型和代碼。(除非使用了“-f”標志指定了一個片段規(guī)則,在那種情況下這些選項是不合法的)。

假如協(xié)議是TCP(并且沒有“-f”標志),可以使用“-y”標志設(shè)置包的SYN位。

這有一個例子,測試一個TCP SYN包,它從192.168.1.1端口60000到192.168.1.2 www端口,進入eth0接口,進入“input”鏈。(這是一個與WWW建立連接的典型例子)

# ipchains -C input -p tcp -y -i eth0 -s 192.168.1.1 60000 -d 192.168.1.2 www
packet accepted
#

-h,--help

幫助。

-p,--protocol[!] protocol

用“-p”來指定協(xié)議。協(xié)議可以用編號(假如你知道 IP 的數(shù)字化協(xié)議值)或名字“TCP”,“UDP”,“ICMP”,“ALL”(0等價與ALL),大小寫無關(guān),“tcp”與“TCP”一樣。協(xié)議名前面可以加前綴“!”,來否定它,比如:“-p ! TCP”。

-s,--source [!] address[/mask] [!][port[]]

有四種方法指定源頭(-s)和目的(-d) IP 地址。最常用的方法是使用全稱,比如“l(fā)ocalhost”或“www.linuxhq.com”。第二種方法是指定 IP 地址,如“127.0.0.1”。第三種和第四種方法是指定 IP 地址集,比如“199.95.207.0/24”“199.95.207.0/255.255.255.0”。這兩種方式都指定了從192.95.207.0到192.95.207.255的所有IP地址;“/”后的數(shù)字表示 IP 地址的哪部分(或“位”)被指定。默認是“/32”或“255.255.255.255”(與所有IP地址匹配)。完全指定所有IP地址用“/0”。對于特殊的TCP和UDP協(xié)議,還有額外的參數(shù)可以指定,即它們的端口號或端口的范圍。范圍用“:”表示,比如“6000:6010”,它包含從6000到6010的11個端口,如果沒有下限,默認是0。如果沒有上限,默認是65535。 所以指定1024以下端口來的 TCP 連接,表示為“-p TCP -s 0.0.0.0/0 :1023”。端口號也可以用名字指定,如“WWW”。端口指定也可以用“!”參數(shù)來否定它。ICMP也可以有參數(shù),但是它沒有端口(ICMP 有類型和代碼),它們有不同的含義?梢栽凇-s”參數(shù)后放它們的 ICMP 名字來指定(使用 ipchains -h icmp 來列出這些名字);蚴褂 ICMP 類型和代碼的數(shù)字編號。類型跟在“-s”后。代碼跟在“-d”后。ICMP名相當長:你只需輸入足夠長的字母能區(qū)分它們即可。

注意:目前,ICMP 名的前面不能用“!”。等價于--src。

--source-port [!] [port[:port]]

用來分開源端口范圍,等價與-sport。

-d,--destination [!] address[/mask] [!] [port[]]

指定目標,用法與-s相同。等價于-dst。

--destination-port [!] [port[]]

指定目標端口范圍,等價于-dport。

--icmp-type [!] typename

允許指定icmp類型(使用 -h icmp 看有效的icmp類型名)。可以方便的在指定目標的后面使用。

-j,--jump target

指向規(guī)則的目標,例如,包匹配規(guī)則后怎么辦。目標可以是一個user defined 鏈(非本規(guī)則所在鏈),也可以是一個可以立即決定包命運的特定的目標。最簡單的情況是不指定目標。這種類型的規(guī)則(通常叫記數(shù)規(guī)則)常用來做某種類型包的簡單記數(shù)。無論規(guī)則匹配與否,核心將繼續(xù)檢查此鏈中的下一個的規(guī)則。但規(guī)則計數(shù)器將增加。

-i,--interface [!] name

用“-i”參數(shù)指定接口名字。接口是包進進出出的物理設(shè)備。用于包進入(包通過進入鏈 )的接口被認為是進入接口,同樣地,用于包外出(包通過外出鏈)的接口被認為是外出接口。用于包中轉(zhuǎn)的接口也被認為是外出接口。

指定一個目前不存在的接口是完全合法的。規(guī)則直到此接口工作時才起作用,這種指定是非常有用,對于PPP及其類似的連接。作為一個特例,一個結(jié)尾是“+”的接口將適合所有此類接口(無論它們是否工作)。例如:設(shè)定一個規(guī)則適合所有的PPP連接,可以用“-i ppp+”來指定接口。此參數(shù)忽略時,默認符合所有接口。接口可以使用否定符“!”來匹配不是指定接口來的包。

[!] -f,--fragment

此規(guī)則指定fragmented packets的第二個和以后的分塊。因為這樣的分塊沒有源和目標端口信息(或ICMP類型),所以它不匹配一些指定它的規(guī)則。

可以在它前面使用“!”,來指定一個不適用于第二個及其后續(xù)的片段包的規(guī)則。

-b,--bidirectional

雙向模式。這個標志使 ipchains 象你輸入命令兩次一樣工作,第二次是把“-s”和“-d”參數(shù)顛倒。

-v,--verbose

詳細輸出。它顯示出對于你的命令,ipchains 是如何響應的。假如你使用的命令可以影響多個規(guī)則,它是很有用的。

-n,--numeric

數(shù)字化輸出。IP地址和端口號將以數(shù)字格式顯示。缺省顯示主機名和網(wǎng)絡(luò)名,和服務(wù)名。當DNS不起作用時,此參數(shù)及其有用。

-l,--log

對匹配包實行內(nèi)核紀錄,當設(shè)置此參數(shù)時,Linux內(nèi)核將通過printk()對于所有匹配包打印一些信息。

-o,--output [maxsize]

拷貝匹配的包到用戶空間設(shè)備。主要由開發(fā)者使用。要使用此參數(shù),編譯內(nèi)核時必須設(shè)置 CONFIG_IP_FIREWALL_NETLINK Set。

-m,--mark markvalue

標志匹配的包。包被一個32位的無符號整數(shù)標志。如果你不是一個內(nèi)核黑客,你不必關(guān)心這些。如果標志值以“+”或“-”開頭,那么這個值將會從當前包的標志值加或減(初始值為0)。

-t,--TOS and xormask

用于改變IP頭的TOS域。當包匹配規(guī)則,它的TOS域首先與第一個掩碼逐位相與,結(jié)果再與第二個掩碼逐位異或,掩碼將會被指定為8位16進制數(shù)。TOS的最低有效位必須沒有被改變。TOS域的四個位是最小延時“Minimum Delay”,最大吞吐量“Maximum Throughput”,最大可靠程度“Maximum Reliability”和最小費用“Minimum Cost”。最常用的是把 telnet 和 ftp 的控制連接設(shè)為最小延時和把FTP數(shù)據(jù)設(shè)為最大吞吐量。這樣做:

ipchains -A output -p tcp -d 0.0.0.0/0 telnet -t 0x01 0x10
ipchains -A output -p tcp -d 0.0.0.0/0 ftp -t 0x01 0x10
ipchains -A output -p tcp -s 0.0.0.0/0 ftp-data -t 0x01 0x08

如果這些太難理解,使用下表:

TOS Name Value Typical Uses
Minimum Delay 0x01 0x10 ftp,telnet
Maximum Throughput 0x01 0x08 ftp-data
Maximum Reliability 0x01 0x04 snmp
Minimum Cost 0x01 0x02 nntp

-x,--exact

展開數(shù)字,包和字節(jié)計數(shù)器顯示時使用后綴“K”,“M”,“G”來表示1000 1,000,000和1,000,000,000。不管數(shù)值多大,使用“-x”標志可以完全顯示它們。這個參數(shù)只可以在“-L”后使用。

[!] -y,--syn

僅僅匹配設(shè)置了SYN位,清除了ACK、FIN位的的TCP包。這些包被用來請求初始化的TCP連接,阻止從接口來的這樣的包將會阻止外來的TCP連接請求。但輸出的TCP連接請求將不受影響。這個參數(shù)僅僅當協(xié)議類型設(shè)置為TCP時才能使用。此參數(shù)前可以使用!標志匹配所有的非請求連接的包。

--line-numbers

在使用列表規(guī)則時,在每行開頭加行號,表示規(guī)則在鏈中的位置。

--no-warnings

去掉所有的警告信息。

論壇徽章:
0
2 [報告]
發(fā)表于 2003-01-16 12:33 |只看該作者

Ipchains參數(shù)完全手冊 (轉(zhuǎn)帖)

你測試成功過嗎?有誰有成功案例沒有

論壇徽章:
1
榮譽版主
日期:2011-11-23 16:44:17
3 [報告]
發(fā)表于 2003-01-16 17:01 |只看該作者

Ipchains參數(shù)完全手冊 (轉(zhuǎn)帖)

非常不錯!
您需要登錄后才可以回帖 登錄 | 注冊

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP