Skypeの代わりにIRCを立てよう

ジモティーでは現在社内のこみゅにけ〜しょんにSkypeを使っています. エンジニアチャット, 全社チャット, ネタチャットなどいくつかの部屋があり以下のような小芝居を挟みながら皆思い思いにアレしてます.

ところが一部の過激派が反Skypeを掲げ立ち上がり, 血で血を争う展開ののち社内IRCが立てられる運びとなりましたのでその記録を残します. 論争の詳細はシン劇場版:‖で補完されるそうです.




EC2サーバを用意

GitLabなどもろもろの調査に使っている雑多なEC2サーバ(smallインスタンス)をIRCサーバとして流用することにしました.


IRCデーモンをインストール

IRC童貞ながらに模索しつつ作業しましたので, そのへんも残していきます.

まずircdでpacmanを検索します. 最初ircで検索したらずらずら出てきたのでircd.


$ sudo pacman -Ss ircd
community/ngircd 19.2-2 [installed]
Next Generation IRC Daemon
community/ultimate-ircd 3.0.2-6
ultimate irc server
community/unrealircd 3.2.9-4
Open Source IRC Server

なんかngircdってのがありますね.

ngIRCd

The name ngIRCd means next generation IRC daemon, which is a little bit exaggerated: lightweight Internet Relay Chat server most probably would have been a better name.

だそうです. これにします.



$ sudo pacman -S ngircd
$ sudo pacman -Ql ngircd | grep etc
ngircd /etc/
ngircd /etc/ngircd.conf
ngircd /etc/rc.d/
ngircd /etc/rc.d/ngircd


設定ファイル(ngricd.conf)とデーモン起動スクリプトが入りました. ngircd.confを編集します.


# Name = irc.example.net
Name = myirc.mynetwork.com


実稼動時は(サーバ接続時の)パスワードやポートを変えた方がよいです.


# Global password for all users needed to connect to the server.
# (Default: not set)
Password = mypassword

# Ports on which the server should listen. There may be more than
# one port, separated with ",". (Default: 6667)
Ports = 12345


で起動.


$ sudo /etc/rc.d/ngircd start


動きました. netstatで見てみましょう. Archにはnetstatがデフォルトで入ってないのでnet-toolsを入れます.


$ sudo pacman -S net-tools
$ sudo pacman -Ql net-tools | grep bin
net-tools /bin/
net-tools /bin/netstat
net-tools /sbin/
net-tools /sbin/arp
net-tools /sbin/ifconfig
net-tools /sbin/ipmaddr
net-tools /sbin/iptunnel
net-tools /sbin/mii-tool
net-tools /sbin/nameif
net-tools /sbin/plipconfig
net-tools /sbin/rarp
net-tools /sbin/route
net-tools /sbin/slattach


入りました. ircのportはデフォルトで6667です.


$ sudo netstat -an | grep 6667
tcp 0 0 0.0.0.0:6667 0.0.0.0:* LISTEN
tcp 0 0 10.152.29.113:6667 180.47.00.00:37641 ESTABLISHED
tcp 0 0 10.152.29.113:6667 180.47.00.00:58449 ESTABLISHED
tcp6 0 0 :::6667 :::* LISTEN


ネットワークをつなげる

サーバが立ったので, アクセスできるようにします.

(1). インスタンスのSecurity Groupを変更(amiから立ち上げ直す), 設定ポートを許可する
(2). EC2のElastic IPを取得し, IRCをインストールしたインスタンスへ紐付ける.
(3). 適当なドメインのDNSレコードを追加し, (2)で取得したIPへ振り分ける.

個人的にここが一番楽しいです.



IRCクライアントで利用開始


CUIから使えるweechatを選びました. brew, aptitudeなどで入ります. RubyやらSchemeやらLuaで拡張できるそうです.


$ sudo apt-get install weechat-curses
$ weechat-curses "irc://hash:password@myirc.mynetwork.com:12345/#engineer"


でターミナルから使えて幸せになれました. Skypeもターミナルから使いたい…

とりあえず立ててみただけなので, 身体を慣らしつつ徐々に移行したいなーと思ってます.

投稿者: ジモティー | 2012年11月22日 | スタッフブログ - 最新の記事: 社内で出産ラッシュが続いています!... 記事一覧ページTopへ