歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> inetd.conf文件淺析

inetd.conf文件淺析

日期:2017/3/1 15:28:05   编辑:關於Linux
inetd.conf文件淺析 1、前言 Inetd.conf文件是Linux系統中的重要文件之一。它保存了系統提供internet服務的數據庫。通過這個文件,你可以對這些服務加以控制,如打開/關閉某項服務,使它們更為安全的運行等等很多。希望這篇文章能盡量解釋地完整。 2、域 在inetd.conf文件中每項有效的條目中都應該包含以下的域。 *服務名 * 套接字類型 * 協議類型 * wait/nowait[.max] * 用戶名[.組] * 服務程序 * 服務程序的參數 當然如果你要定義Sun-RPC服務,在inetd.conf文件則需要以下的類型域: * 服務名/版本 * 套接字類型 * rpc/協議類型 * wait/nowait[.max] * 用戶名[.組] * 服務程序 * 服務程序的參數 服務名是在/etc/services文件中經過定義的有效服務名稱(如telnet,echo等)。如果服務被用來定義Sun-RPC服務,它就必須在/etc/rpc文件中定義。 套接字類型域包含以下幾種: * stream - stram * dgram - datagram * raw - raw * rdm - reliabl! y delivered message * seqpacket - sequenced packet 此域取決於使用何種的套接字類型. 協議類型域必須是已經在/etc/protocols文件中定義過的類型。最常見的是tcp和udp,Sun-RPC服務要在協議前加上“rpc/”(如rpc/tcp或者rpc/udp) Wait/nowait域只用於數據報套接字,其它的都使用nowait參數。如果服務是多線程的,意味著在與對端建立連接後將釋放套接字, inetd進程可以通過些套接字接收更多的消息,這時些用“nowait”條目。如果服務是單線程,表示服務將在同一個socket中處理所有的外來數據 報,直到超時,這種情況下使用“wait”條目。Max參數,用一個點與wait/nowait隔開,定義了inetd進程在一分鐘之內最大產生的實例數 目。 用戶域定義了服務的使用者。組參數,通過點與用戶名隔開,定義了除/etc/passwd文件中之外的可以運行服務的組ID。 服務程序是在套接字請求時執行的程序的完整路徑。如果是inted進程內置的服務,此處應為“internally”。 服務程序參數提供程序運行的所需的參數,同樣的,如果是內置服務,此處也為“internally”。 3、服務 現在來看一下不同的服務,以便加深理解。 telnet stream tcp ;nowait root /usr/sbin/tcpd in.telnetd * 服務名: telnet * 套接字類型: stream * 協議類型: tcp * Wait/Nowait[.max]: nowait * 用戶名[.組]: root * 服務程序: /usr/sbin/tcpd * 參數: in.telnetd echo dgram udp wait root internal * 服務名: echo * 套接字類型: dgram * 協議類型: udp * Wait/Nowait[.max]: wait * 用戶名[.組]: root * 服務程序: internal rstatd/1-3 dgram rpc/udp wait root /usr/sbin/tcpd rpc.rstatd * 服務名: rstatd/1-3 * 套接字類型: dgram * 協議類型: rpc/udp * Wait/Nowait[.max]: wait * 用戶名[.組]: root * 服務程序: /usr/sbin/tcpd *&nb! sp;參數: rpc.rstatd 4、開啟& 關閉 服務 非常簡單,只要在想要關閉的服務前面加上一個#,比如想要關閉23端囗,被telnet使用,只要象下面這樣。 #telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd 這時,telnet服務已經關閉了,以後,如果我想讓朋友通過telnet訪問我的計算機,我只需要把#去掉,就象這樣。 telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd 這時,telnet服務又被開啟,就是這麼簡單。重新啟動inetd進程讓改動生效,用下面的命令。 james:~ # killall -HUP inetd 5、守護進程 有時候在服務程序參數域中,你會看到一些選項,如: smtp stream tcp nowait root /usr/sbin/sendmail sendmail -bs 在上一行的末尾,有“-bs”! ,表明使用b和s參數,這同使用下面的命令有著同樣的效果: hoodl um:~ # sendmail -bs 因此,如果你想為守護進程使用某項參數,只要把它們加入到服務程序參數域就可以了。具體的參數可以通過man進行查詢。 6、TCP Wrappers TCP Wrappers是保護網絡服務的應用,通常用在第6列-服務程序域。 telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd TCP Wrappers使用兩個文件,/etc/hosts.allow和/etc/hosts.deny,限制某項服務的使用。Hosts.allow文件內是允許訪問服務的主機列表,hosts.deny內含禁止訪問服務的主機。
Copyright © Linux教程網 All Rights Reserved