2015年4月6日

Arch Linux - 建立 IRC Server : UnrealIRCd ( Set up an IRC server by using UnrealRCd on Arch Linux )

最近對 IRC 有興趣,打算於建立一個自己的 IRC Server 來測試,因此本篇將如何安裝、使用 UnrealIRCd 的過程記錄下來。我對於這領域算是涉獵極少,若內容有任何錯誤希望大家可以不吝嗇的給予指導。( 其他 Arch Linux 相關教學可以參考本篇整理 )



前置作業:
UnrealIRCd 無法透過 pacman 直接下載、安裝,需要手動編譯。因此先安裝編譯時所需要的軟體,請參考下面指令:
pacman -S base-devel


安裝 UnrealIRCd:
開始安裝前,請先至 UnrealIRCd 網站確認哪一個版本是屬於 Stable 的。接著開始安裝的步驟,
# 下載 UnrealIRCd Source 檔案
wget https://www.unrealircd.org/downloads/Unreal3.2.10.4.tar.gz

# 解壓縮檔案
tar -xvf Unreal3.2.10.4.tar.gz
cd Unreal3.2.10.4

# 進行基本設定,系統會詢問參數設定是否要更改
# 基本上都使用預設值即可(輸入 Enter)
./Config

# 進行編譯
make


設定 UnrealIRCd 設定檔:
建立 IRC Server 最重要的就是調整設定檔,每個 IRC Server 根據自己的需求來調整參數,因此請務必先詳細閱讀官方文件。設定檔需要存放在剛剛解壓縮的資料夾中,可以複製 Unreal3.2.10.4/doc/example.conf,並且更改檔名為 unrealircd.conf,
cp Unreal3.2.10.4/doc/example.conf Unreal3.2.10.4/unrealircd.conf
接著便來調整設定檔裡面的參數,因設定檔內容繁多且不一定每個都需要,所以將我自己測試的設定檔提供給大家下載,請參考我的 unrealircd.conf,但有幾個地方需要你自行修改:
1. password:請將 tinyircpswd 都更換掉
2. deafult-server:設定成你的伺服器位址
3. cloak-keys ( 請參考下面內容 )


產生 Cloak-keys:
設定檔中的 cloak-keys 區塊需要產生 3 組 keys 取代,區塊如下:
cloak-keys {
         "aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
         "and another one";
         "and another one";
     };
於 Unreal3.2.10.4 資料夾底下輸入指令,將產生的數值手動加入,
./unreal gencloak


添加兩個檔案:
在 unrealircd.conf 的內容中 file 區塊定義需要兩個檔案( ircd.motd、ircd.rules ),而這些兩個檔案手動新增空白的檔案於 Unreal3.2.10.4 資料夾底下即可 ( 跟 unrealircd.conf 同一層即可 )。至此我們需要做的設定都完成了,資料應該會有三個新增的檔案,如下圖:




使用 UnrealIRCd:
設定都完成了,可以來使用我們的 IRC Server。於 Unreal3.2.10.4 資料夾底下輸入指令,
# 啟動 UnrealIRCd
./unreal start

#停止 UnrealIRCd:
./unreal stop
啟動伺服器的可以看到訊息如下:


IRC Server 設定好後,我們就可以使用 IRC Client 端來連接 Server。( 請參考 irssi 教學 )


Environment :
  ・ Arch Linux
  ・ Raspberry Pi Model B
  ・ Unreal3.2.10.4

Reference :
  ・ UnrealIRCd


熱門文章