SSブログ

CentOS5.8(x64)でircサーバ(ngircd)を構築してチャットをやってみよう [irc]


ircサーバのソフトウェアはいろいろありますが、設定が簡単そうなngircdでircサーバを構築します。SSL対応の記事はこちら
チャットはシステム開発でもコミュニケーションツールとして有効です。
特に試験工程では、進捗だったり、故障の共有だったり、サーバ再起動の交渉などで利用できます。

環境はこんな感じです。
host名:ngircd.local.localdomain.com
IPアドレス:192.168.0.32
OS:CentOS 5.8 64bit

では、さっそく構築します。

yumでインストールします。
[root@ngircd ~]# yum install ngircd
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
base                                                                                                               | 1.1 kB     00:00
extras                                                                                                             | 2.1 kB     00:00
updates                                                                                                            | 1.9 kB     00:00
Setting up Install Process
No package ngircd available.
Nothing to do




デフォルトのリポジトリにはありません。
リポジトリ(epel)の追加をします。
64bit版をダウンロードします。
[root@ngircd ~]# wget http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm
--2012-11-23 21:34:00--  http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm
ftp-srv2.kddilabs.jp をDNSに問いあわせています... 202.255.47.226
ftp-srv2.kddilabs.jp|202.255.47.226|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 12232 (12K) [application/octet-stream]
`epel-release-5-4.noarch.rpm' に保存中
100%[================================================================================================>] 12,232      --.-K/s 時間 0s
2012-11-23 21:34:01 (128 MB/s) - `epel-release-5-4.noarch.rpm' へ保存完了 [12232/12232]




ダウンロードしたrpmをインストールします。
[root@ngircd ~]# rpm -ivh epel-release-5-4.noarch.rpm
警告: epel-release-5-4.noarch.rpm: ヘッダ V3 DSA signature: NOKEY, key ID 217521f6
準備中...                ########################################### [100%]
   1:epel-release           ########################################### [100%]

[root@ngircd ~]# ls -l /etc/yum.repos.d/epel.repo
-rw-r--r-- 1 root root 954  8月 12  2010 /etc/yum.repos.d/epel.repo




yumでインストールします。
[root@ngircd ~]# yum --enablerepo=epel install ngircd
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ngircd.x86_64 0:16-1.el5 set to be updated
--> Processing Dependency: fedora-usermgmt for package: ngircd
--> Processing Dependency: fedora-usermgmt for package: ngircd
--> Processing Dependency: libident.so.0()(64bit) for package: ngircd
--> Processing Dependency: libhowl.so.0()(64bit) for package: ngircd
--> Running transaction check
---> Package avahi-compat-howl.x86_64 0:0.6.16-10.el5_6 set to be updated
---> Package fedora-usermgmt.noarch 0:0.8.91-1.el5 set to be updated
--> Processing Dependency: fedora-usermgmt-core = 0.8.91-1.el5 for package: fedora-usermgmt
--> Processing Dependency: instance(fedora-usermgmt) for package: fedora-usermgmt
--> Processing Dependency: setup(fedora-usermgmt) for package: fedora-usermgmt
---> Package libident.x86_64 0:0.32-1.el5 set to be updated
--> Running transaction check
---> Package fedora-usermgmt-core.noarch 0:0.8.91-1.el5 set to be updated
---> Package fedora-usermgmt-default-fedora-setup.noarch 0:0.8.91-1.el5 set to be updated
---> Package fedora-usermgmt-shadow-utils.noarch 0:0.8.91-1.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================================
 Package                                              Arch                   Version                           Repository            Size
==========================================================================================================================================
Installing:
 ngircd                                               x86_64                 16-1.el5                          epel                 153 k
Installing for dependencies:
 avahi-compat-howl                                    x86_64                 0.6.16-10.el5_6                   base                  30 k
 fedora-usermgmt                                      noarch                 0.8.91-1.el5                      epel                 6.6 k
 fedora-usermgmt-core                                 noarch                 0.8.91-1.el5                      epel                 7.6 k
 fedora-usermgmt-default-fedora-setup                 noarch                 0.8.91-1.el5                      epel                 6.6 k
 fedora-usermgmt-shadow-utils                         noarch                 0.8.91-1.el5                      epel                 7.4 k
 libident                                             x86_64                 0.32-1.el5                        epel                  12 k

Transaction Summary
==========================================================================================================================================
Install       7 Package(s)
Upgrade       0 Package(s)

Total download size: 223 k
Is this ok [y/N]: y
Downloading Packages:
(1/7): fedora-usermgmt-default-fedora-setup-0.8.91-1.el5.noarch.rpm                                                | 6.6 kB     00:00
(2/7): fedora-usermgmt-0.8.91-1.el5.noarch.rpm                                                                     | 6.6 kB     00:00
(3/7): fedora-usermgmt-shadow-utils-0.8.91-1.el5.noarch.rpm                                                        | 7.4 kB     00:00
(4/7): fedora-usermgmt-core-0.8.91-1.el5.noarch.rpm                                                                | 7.6 kB     00:00
(5/7): libident-0.32-1.el5.x86_64.rpm                                                                              |  12 kB     00:00
(6/7): avahi-compat-howl-0.6.16-10.el5_6.x86_64.rpm                                                                |  30 kB     00:00
(7/7): ngircd-16-1.el5.x86_64.rpm                                                                                  | 153 kB     00:00
------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                     283 kB/s | 223 kB     00:00
警告: rpmts_HdrFromFdno: ヘッダ V3 DSA signature: NOKEY, key ID 217521f6
epel/gpgkey                                                                                                        | 1.7 kB     00:00
Importing GPG key 0x217521F6 "Fedora EPEL " from /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : avahi-compat-howl                                                                                                  1/7
  Installing     : libident                                                                                                           2/7
  Installing     : fedora-usermgmt-default-fedora-setup                                                                               3/7
  Installing     : fedora-usermgmt-core                                                                                               4/7
  Installing     : fedora-usermgmt-shadow-utils                                                                                       5/7
  Installing     : fedora-usermgmt                                                                                                    6/7
  Installing     : ngircd                                                                                                             7/7

Installed:
  ngircd.x86_64 0:16-1.el5

Dependency Installed:
  avahi-compat-howl.x86_64 0:0.6.16-10.el5_6                      fedora-usermgmt.noarch 0:0.8.91-1.el5
  fedora-usermgmt-core.noarch 0:0.8.91-1.el5                      fedora-usermgmt-default-fedora-setup.noarch 0:0.8.91-1.el5
  fedora-usermgmt-shadow-utils.noarch 0:0.8.91-1.el5              libident.x86_64 0:0.32-1.el5

Complete!





設定ファイルを編集します。
[root@ngircd etc]# cp -p /etc/ngircd.conf /etc/ngircd.conf.org
[root@ngircd etc]# vi /etc/ngircd.conf



編集箇所は以下のとおりです。
24行目(ホスト名変更)
前       Name = irc.the.net
後       Name = ngircd.local.localdomain.com
---
28行目(サーバの情報)
前       Info = Server Info Text
後       Info = IRC Server
---
31行目(接続するためのパスワード)
前       ;Password = abc
後       Password = Secret
---
37行目(メールアドレス)
前       ;AdminEMail = admin@irc.server
後       AdminEMail = admin@local.localdomain.com
---
47行目(リッスンするIPアドレス)
前       Listen = 127.0.0.1
後       Listen = 0.0.0.0
※0.0.0.0にしないと、ポート(6667)が開かなかった
---
55行目(接続時のメッセージ)
前       ;MotdPhrase = "Hello world!"
後       MotdPhrase = "Hello world!"
---
114行目(MAX接続数)
前       ;MaxConnections = 0
後       MaxConnections = 1000
---
118行目(同一IPの接続数)
前       ;MaxConnectionsIP = 5
後       MaxConnectionsIP = 10
---
204行目(チャンネル)
前       ;Name = #TheName
後       Name = #Test
---
210行目(チャンネルの属性)
前       ;Modes = tnk
後       Modes = tnk
※通常はtnでいいと思います。kをつけるとパスワードが必要。
 sをつけると、公開しないチャンネルになります。
---
213行目(パスワード)
前       ;Key = Secret
後       Key = TestTes
Modesにkを付けたときには設定するt
---
216行目(チャンネルのMAXユーザ数)
前       ;MaxUsers = 23
後       MaxUsers = 100

※ポートではデフォルトの6667にしています。




pidファイルの格納ディレクトリを設定します。
[root@ngircd etc]# mkdir -p /var/run/ngircd
[root@ngircd etc]# chown nobody:nobody /var/run/ngircd
[root@ngircd etc]# chmod 777 /var/run/ngircd




hostsファイルを編集します。
[root@ngircd etc]# vi /etc/hosts
[root@ngircd etc]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.0.32            ngircd.local.localdomain.com ngircd




ngircdを起動します。
[root@ngircd etc]# /etc/rc.d/init.d/ngircd start
ngircd を起動中:                                           [  OK  ]




ircクライアントから接続します。
Windowsのircクライアントであれば、CHOCOAやLimeChatがお薦めです。
CHOCOAは使用期限を2013年3月31日です。(たぶん、延長されると思いますが)
CHOCOAのダウンロードはここからできます。
LimeChatのダウンロードはここからできます。

CHOCOAで接続して、#Testに入ります。
irc01.png

LimeChatで接続して、#Testに入ります。
irc02.png

接続が良好であれば、自動起動を設定します。
(このままでは、再起動時に正常に起動しないことがわかりましたので、修正しました)
ngircd起動時にはavahi-daemonが起動している必要があります。
avahi-daemonのプライオリティは98 02なので、ngircdも98 02に変更します。
[root@ngircd ~]# cd /etc/init.d
[root@ngircd init.d]# vi ngircd
# chkconfig: - 80 30
 ↓ 変更
# chkconfig: - 98 02

一旦、削除してから再度登録します。
[root@ngircd init.d]# chkconfig --del ngircd
[root@ngircd init.d]# chkconfig --add ngircd
[root@ngircd init.d]# chkconfig --list ngircd
ngircd          0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@ngircd init.d]# chkconfig ngircd on
[root@ngircd init.d]# chkconfig --list ngircd
ngircd          0:off   1:off   2:on    3:on    4:on    5:on    6:off



これで完了です。

次回もお楽しみに!!

nice!(0)  コメント(1)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 1

こっぺぱん

はじめまして。
CentOSでのngircdの記事とてもわかり易く参考になりました。
現在私もngircdでサーバーを立てているのですがSSLの設定がうまくいきません。
もしお時間があればCentOSでのngircdのSSL設定を記事にしてもらえませんか?
by こっぺぱん (2013-01-10 05:23) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。