さくらVPSにzncをインストール

以前、自宅のPC (MMX 133MHz!) でNetBSDを運用しておりまして、
その上でIRCゲートウェイ(というのかプロキシーというのか)を走らせていたんですが、
ずいぶん前に雷でマシンごとやられまして、そのままになっていたのを急に思い出しました ^^;

今度はさくらVPSにインストールすることにして、
ゲートウェイはどれにしようか悩んだのですが、最近はtiarraよりzncのようなので、
zncにしてみます。以前動かしていたのはなんだったかもう思い出せませんでした。年か ^^;

CentOSはyumでzncを入れればいいです。epelに入っているみたいです。

$ sudo yum -y install znc
...(略)...
Installed:
  znc.x86_64 0:1.2-1.el6                                                                                                       

Complete!

というわけで、znc 1.2 がインストールできました。単に

$ znc

と起動してやると、かってにバックグランドで起動します。起動する前に設定を
しなくていはいけませんが、–makeconf をつけて起動すると対話的に
設定を作ることができます。

$ znc --makeconf
[ ok ] Checking for list of available modules... 
[ ** ] Building new config
...(略)...

設定は適当にやりますが、zncでは複数のユーザーを作成することができます。ひとつzncを起動するだけで、
複数の人からの接続を許すことができます。最近のバージョンでは、ひとりのユーザーにつき、複数のネットワーク
(IRCサーバー)を指定することができ、同時にあっちのサーバーとこっちのサーバーにつなぐことができます。
主な設定を抜粋しておくとこんなかんじ。

[ ?? ] What port would you like ZNC to listen on? (1025 to 65535): 6667 
       ↑クライアントがzncに接続するポートの指定

[ ?? ] Would you like ZNC to listen using SSL? (yes/no) [yes]: yes
       ↑クライアントとの接続にSSLを使うか (yesにしました)

[ ?? ] Would you like to create a new pem file now? (yes/no) [yes]: yes
[ ok ] Writing Pem file [/home/iwa/.znc/znc.pem]... 
       ↑pemファイルを作るかどうか (作ります)

[ ?? ] Would you like ZNC to listen using ipv6? (yes/no) [no]: no
       ↑ipv6 は無効に

[ ?? ] Listen Host (Blank for all ips): 
       ↑ブランクでいいみたい

[ ** ] -- Network Modules --
...(略)...モジュール類はぜんぶnoにしておいて、あとから追加すればいいでしょう。

[ ** ] Now we need to set up a user...
       ↑ユーザーの作成をします

[ ** ] 
[ ?? ] Username (AlphaNumeric): hoge
[ ?? ] Enter Password: 
[ ?? ] Confirm Password: 
       ↑クライアントがzncに接続するユーザー名とパスワード

[ ?? ] Would you like this user to be an admin? (yes/no) [yes]: yes
       ↑クライアントがzncに接続するユーザー名とパスワード

[ ?? ] Nick [hoge]: kenic
[ ?? ] Alt Nick [kenic_]: kenip
       ↑IRCのニックの指定

[ ** ] -- IRC Servers --
[ ** ] -- Channels --
       ↑大胆に省略しますが、IRCサーバーとチャンネルを指定します。複数指定できます。

[ ** ] To connect to this ZNC you need to connect to it as your IRC server
[ ** ] using the port that you supplied.  You have to supply your login info
[ ** ] as the IRC server password like this: user/network:pass.
[ ** ] 
[ ** ] Try something like this in your IRC client...
[ ** ] /server  +16668 iwa:
[ ** ] And this in your browser...
[ ** ] https://:16668/
       ↑注意がきです

[ ?? ] Launch ZNC now? (yes/no) [yes]: yes
       ↑yes ってすると起動します。

できた設定は ~/.znc/configs/znc.conf に書かれています。これを手で書き換える場合は次のようにします。

IRCクライアントで /znc SaveConfig
~/.znc/configs/znc.conf を編集
IRCクライアントで/znc Rehash

複数のネットワークを指定したばあいは、クライアントはどのネットワークを使いたいか、
指定する必要があります。ネットワークの指定(切替)は、クライアントから /znc jumpnetwork
でネットワークをそのつど切り替えるか、クライアントの接続の設定で、パスワードに
「user名/ネットワーク名:パスワード」として、あらかじめネットワークを指定するかします。
ここのところが良くわからなくて少し悩みました。よくみたらちゃんとメッセージが出てたんですけど。

moduleはいろいろあるみたいですが、とりあえずlogぐらいはとるようにしたいです。IRCクライアントから
ロードできます。 /znc loadmodule log としさえすれば、あとはかってに ~/.znc/users/hoge/moddata/log/
の下に、チャンネル別、日付別にログができます。便利です。

その他、くわしいことは /znc help でわかるみたいです!

参考文献