亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學習啦>學習電腦>網(wǎng)絡(luò)知識>局域網(wǎng)知識>

      如何搭建局域網(wǎng)的irc服務(wù)器

      時間: 林輝766 分享

        這幾周在公司里新加入的開發(fā)人員越來越多,而且都分布在不同的樓群里,為了大家能夠方便地交流sys admin就設(shè)置了一個IRC Server.所以周末有空的時候我也在家實驗了一下,小編拿出來和大家分享!自己動手搭建linux下的IRC服務(wù)器!

        1.什么是IRC

        IRC(Internet Relay Chat)是一種即時的網(wǎng)上聊天論壇。它可以支持用戶進行一對一或者多對多的網(wǎng)上通信,以及文件的傳輸。一個IRC服務(wù)器還可以加入到其他的IRC服務(wù)器當中從而不斷擴充IRC服務(wù)器的數(shù)量和連接(當然我自己的實驗只是構(gòu)造一個在局域網(wǎng)中使用的IRC,所以這一點不加以討論)

        2.服務(wù)器的選擇和安裝

        因為我自己是Debian的用戶,所以我就選擇了在發(fā)行版中自帶的ircu (The Undernet Internet Relay Chat Daemo)(當然還有其他很不錯的server比如UnrealIRCd和ircd-hybrid)

        以"root"用戶登錄執(zhí)行以下命令就可以了

        # apt-get install ircd-ircu

        如果想查看一下具體安裝了哪些文件可以使用dpkg命令

        # dpkg -c ircd-ircu_.deb

        或者你也可以去到官方網(wǎng)站下載源碼包然后自己編譯

        3.服務(wù)器的配置

        安裝完畢后我們就應(yīng)該可以在/etc/ircd目錄中找到ircu的配置文件了,其中包括了:

        ircd.conf (主要的配置文件)

        ircd.motd

        oper.motd

        remote.motd

        這應(yīng)該是最關(guān)鍵的一步了。和其他的IRC服務(wù)器比較起來我覺得ircu的配置文件是最難讀懂的,因為里面幾乎沒有任何注釋,連man page也沒有。我想這是Undernet以后應(yīng)該改進的地方。不過沒關(guān)系,在/usr/share/doc/ircd-ircu這個目錄中它還是給出了很多example的配置文件,里面的注釋就比較詳盡。這里再指出一點就是我是建立一個只供局域網(wǎng)內(nèi)部用戶使用的IRC服務(wù)器,所以任何涉及連接到外部服務(wù)器的配置都會不加以討論。好了,那我們來看一下如何配置ircd.conf文件吧。

        打開這個文件后你會看到很多以子母打頭的line,每一個子母都代表了對服務(wù)器不同功能的配置,我們來逐一分析一下。

        名稱: M line

        格式: M:[server name]:[virtual host]:[description]::[numeric]

        注釋: M line主要是用來定義服務(wù)器的信息

        [server name]服務(wù)器的名字

        [virtual host]連接外部的IP地址(可以設(shè)置成服務(wù)器主網(wǎng)卡的IP地址)

        [description]對服務(wù)器的介紹

        [numeric]定義服務(wù)器的數(shù)字ID,應(yīng)用于服務(wù)器與服務(wù)器之間的連接。必須是唯一的

        舉例: M:leonard.home:192.168.1.7:Leonard's first IRC server::1

        名稱: A line

        格式: A:[line 1]:[line 2]:[line 3]

        注釋: A line主要定義服務(wù)器的管理信息(也就是你登錄IRC之后輸入/Admin看到的信息)。

        舉例: A:Administrator is Leonard:Please contact me using the following email:leonard@hotmail.com

        名稱: Y lines

        格式: Y:[class]:[ping frequency]:[connect frequency]:[maximum links]:[maximum sendq]

        注釋: Y lines是來定義連接的類別,也就是說給每個到我們服務(wù)器的連接分配不同的資源和設(shè)置

        [ping frequency]服務(wù)器ping客戶端的頻率(以測試其是否alive),單位為秒

        [class]這項類別的數(shù)字ID

        [connect frequency]對于外部服務(wù)器的連接頻率,單位為秒

        [maximum links]外來的最大連接數(shù)

        [maximum sendq]外來的最大可以被積壓的傳輸數(shù)據(jù),單位為bytes

        舉例: # A class for very welcome clients (users in LAN, for example)

        Y:10:90:0:200:65536

        # A class that will allow only a limited number of connections

        Y:20:90:0:50:32768

        名稱: I lines

        格式: I:[address/hostmask]:[password/limit]:[hostmask]::[class]

        注釋: I lines是用來對于每個試圖連接服務(wù)器的客戶進行驗證,并把他們歸入到Y(jié) lines的類別中去。驗證方法如下:

        1.對于任何試圖連接的IP,服務(wù)器會先做一個reverse lookup

        2.如果得到了其hostname,那么將會去找對應(yīng)的hostmask

        3.如果沒有找到hostname,那么將會去找對應(yīng)的ip mask

        4.如果沒有一行I line與之相對應(yīng)那么連接將會被拒絕

        [address/hostmask]客戶端的地址或域名。可以使用wild card e.g. ?, *

        [password/limit]設(shè)置密碼或者是連接數(shù)量。如果設(shè)為0的那話那么就是指沒有連接限制

        [class]在Y lines中定義的class

        舉例:這里需要指出的是I line中的配置文件都是倒過來驗證的。所以我們應(yīng)該先定義gerneral rules再來定義more specific rules

        #我將所有局域網(wǎng)的用戶歸為class 10,其他的歸為20

        I:*@*::Unresolved::20

        I:Resolved::*@*::20

        I:*@192.168.1.*:2:Unresolved::10

        名稱: K lines

        格式: K:[mask]:["reason"]:[username]

        注釋:雖然在I lines中也可以做到限制用戶的登錄,但是K lines才是真正用來屏蔽用戶登錄的

        [mask]可以是IP地址或域名。注意如果使用IP的話需要用小寫的k.支持wild cards e.g. * 還可以使用$R來屏蔽用戶的real name

        [reason]給出一個拒絕用戶登錄的理由。注意需要用雙引號。如果以!開頭,那么后面應(yīng)該跟文件名

        [username]客戶端的用戶名

        舉例:K:*.com:"Please leave us with peace":*

        k:147.197.*"No connection from my uni":* #屏蔽IP的話需要用小寫的k

        K:$R*sub7*:"You are infected with a Trojan":*

        名稱: O lines

        格式: O|o:[host|ip mask]:[password]:[nick]::[class]

        注釋: O lines是用來使連接的用戶獲得管理員的權(quán)限。大寫的O使用來指定global operator也就是所有連接服務(wù)器的管理員。小寫的o是用來指定本地管理員

        [host|ip mask] IP地址或者域名

        [password]管理員密碼。使用tools/mkpasswd來生成(在新版本中已換成umkpasswd)

        [nick]用戶連接使用的昵稱

        [class]把用戶歸為此class

        舉例: #只有在局域網(wǎng)中以leonard昵稱登錄并正確輸入密碼后才可以成為管理員

        o:192.168.1.*:5rxV6zRJ8FgHE:leonard::1

        名稱: P lines

        格式: P:[IP-mask]:[address]:[status]:[port]

        注釋: P lines是用來定義服務(wù)器綁定的端口以及其接受連接的類型

        [IP-mask]定義了哪些IP地址可以連接到這個端口

        [address]可以綁定端口的服務(wù)器本地IP address

        [status] 客戶端為"C",服務(wù)器為"S".同時你還可以在后加上H用來代表status為隱藏

        [port]服務(wù)器綁定的端口。必須大于1024。通常為6667

        舉例: #設(shè)定一個只有局域網(wǎng)客戶可以連接的端口

        P:192.168.1.*:192.168.1.7:CH:6667

        名稱: T lines

        格式: T:[hostmask|class]:[motd-file]

        注釋:根據(jù)不同用戶的地址或者類別來決定顯示哪個motd(message of today)文件

        [hostmaks] IP地址或者域名

        [class] Y lines中的類別

        [motd-file]指定motd文件

        舉例: T:192.168.1.*:local.motd

        T:20:external.motd

        名稱: F lines

        格式: F:[feature]:[value]

        注釋:設(shè)置服務(wù)器的附加屬性。以前ircu需要你把很多的附加屬性在compile的時候就指定編譯,為了方便起見這里提供了F lines

        舉例:由于可以指定的屬性比較多,這里就不一一列數(shù)了,可以參考/usr/share/doc/ircd-ircu/readme.features.gz

        到此為止我羅列了一些需要搭建一個standalone IRC Server所需要的最基本的配置。還有很多l(xiāng)ine的用法這里沒有提到,因為他們中大多書都是涉及到連接其他的服務(wù)器

        4.啟動IRC Server

        如果你是用apt安裝的話,那么在ircu的包中應(yīng)該已經(jīng)包括了一個rc script。你只需以"root"來執(zhí)行以下命令就可以了

        # /etc/init.d/ircd-ircu start

        如果改變了ircd.conf后想重載設(shè)置文件的話可以用

        # /etc/init.d/ircd-ircu reload

        如果你是用源代碼編譯的話,可以找到ircd的binary文件然后運行。一定要注意的是千萬不要用root來執(zhí)行ircd程序,這樣會給你的系統(tǒng)造成很大的安全隱患。在安裝的過程中ircu一般會在系統(tǒng)中建立一個名為irc的用戶,可以先su irc,然后再執(zhí)行ircd。(上面用rc script的時候會自動以irc用戶來運行服務(wù)器,所以沒有問題)

        5.安全設(shè)置

        總的來說IRC不是一個自身帶有很強安全性的service,所以我列舉幾條自己認為需要注意的問題:

        1.剛才已經(jīng)提到過了用root啟動ircu是不安全的,好在現(xiàn)在大多數(shù)的IRC服務(wù)器都不允許你直接以root來運行,它會自行中止程序并給出提示。

        2.另外盡量隱藏你服務(wù)器和客戶端的信息也是一個增強安全設(shè)置的好方法。Undernet自己就曾經(jīng)被DDos攻擊過。同時你也可以修改指定的端口(6667)

        3.用Y lines和I lines來對用戶進行嚴格分類

        4.用P lines來限制用戶的連接

        5.用K lines來屏蔽不信任的用戶

        6.謹慎地給與用戶管理員的權(quán)利。把可以成為管理員的[hostmask]設(shè)置到越精確越好

        7.安裝帶有SSL支持的IRC服務(wù)器

        8.另外永遠不要只依賴一項工具來保證你的安全性。我們還可以用iptables來禁止局域網(wǎng)以外的用戶來登陸IRC服務(wù)器

        # iptables -A INPUT -s ! 192.168.1.0 -p tcp --dport 6667 -j DROP

        6.日志文件

        日志文件始終是我們監(jiān)測一個服務(wù)器運行狀況的好工具。ircu提供了多種日志的方式,包括常規(guī)的syslog,自己設(shè)置的日志文件以及可以把日志記錄在另一臺服務(wù)器上。同時在F lines里我們也可以設(shè)置不同日志文件的名稱以及日志的級別。Default的日志文件都儲存在/var/log/ircd目錄下

        7. IRC客戶端軟件

        終于設(shè)置好了服務(wù)器,那么就找一些客戶端來測試以下吧

        ircII (http://www.eterna.com.au/ircii/)

        這個是linux下的終端樣式的IRC client.有著比較強大的命令行功能。還有就是也這是Debian發(fā)行版里有的軟件,所以偷懶一下的話又是apt就可以了

        xchat (http://www.xchat.org)

        老牌的linux下的IRC client,據(jù)說功能十分強大,不過我沒有用過就不多加評論了

        gaim (http://www.pidgin.im/)

        我個人十分喜歡這個軟件,原因是因為gaim可以支持很多種protocol,這樣就可以同時運行很多種不同的聊天工具。試想一下一款可以讓你同時開著msn, qq, google talk, yahoo messenger, icq and IRC的軟件會是多好啊(呵呵,當然如果你開那么多的話一定忙死)。還有就是我感覺gaim在Windows下的穩(wěn)定性也很好

        ChatZilla (http://www.mozilla.org/projects/rt-messaging/chatzilla/)

        這是一款基于瀏覽器的IRC插件,用firefox的朋友可以輕松地安裝上它,這樣開著網(wǎng)頁的時候就可以和IRC上的朋友們交談了

        至于IRC的命令我看論壇里很多好的貼子都介紹過了,我在這里就不重復(fù)了

      如何搭建局域網(wǎng)的irc服務(wù)器

      這幾周在公司里新加入的開發(fā)人員越來越多,而且都分布在不同的樓群里,為了大家能夠方便地交流sys admin就設(shè)置了一個IRC Server.所以周末有空的時候我也在家實驗了一下,小編拿出來和大家分享!自己動手搭建linux下的IRC服務(wù)器! 1.什么是
      推薦度:
      點擊下載文檔文檔為doc格式

      精選文章

      • 如何搭建局域網(wǎng)服務(wù)器
        如何搭建局域網(wǎng)服務(wù)器

        現(xiàn)在的項目中經(jīng)常會涉及到GIS相關(guān)的技術(shù),項目人員往往又對GIS一竅不通。地圖數(shù)據(jù)怎么獲取?GIS服務(wù)器如何選擇?GIS離線站點怎么搭建?有沒有一種簡單又好

      • 如何搭建局域網(wǎng)聯(lián)機游戲
        如何搭建局域網(wǎng)聯(lián)機游戲

        一個人玩游戲,固然孤單,所有才有了聯(lián)機一說,和一群小伙伴們一起玩游戲才夠爽!今天,下面小編就教給各位幾種搭建局域網(wǎng)的方法: 如果是兩個人甲

      • 如何搭建局域網(wǎng)平臺
        如何搭建局域網(wǎng)平臺

        局域網(wǎng)交換機是網(wǎng)絡(luò)構(gòu)建中的一個平臺,局域網(wǎng)交換機需要更少的配置,更小的空間,更少的布線,價格更便宜,并能提供更高更可靠的性能,企業(yè)級交換

      • 如何搭建局域網(wǎng)視頻服務(wù)器
        如何搭建局域網(wǎng)視頻服務(wù)器

        經(jīng)常會聽到有網(wǎng)友問,局域網(wǎng)電影點播系統(tǒng)軟件有哪些啊?怎么建立局域網(wǎng)電影服務(wù)器啊,架設(shè)一個局域網(wǎng)電影點播服務(wù)系統(tǒng)需要做哪些工作啊,諸如此類的

      568711