总算搞定可以开始写过程了,那天突然想VPS空着也是空着,就想弄个IRC服务器玩下,虽然一直在IRC上玩,不过配置IRC服务器原来还一点没想过,为了折腾IRC,整整花了3天时间,网上这方面资料不多,遇到几个问题琢磨了好久,不过总算是圆满完成了…
这次遇到最大的问题是,编译的时间就没法配置OpenSSL支持,一开始还没发现,装完之后客户端怎么都连不上,最初以为是配置文件的问题,就在配置文件里改了很多选项,依旧连不上,无奈了重新Rebuild了VPS,再次折腾,才发现编译的时候就没法开启OpenSSL支持,又折腾了一遍才发现是没有libssl-dev造成的,有个帖子里也有说到,不过有点错误,导致我没发现.诶,太杯具了,发现我老是会忘记装必要依赖的软件包,经常性没gcc就直接编译…
下面是过程,我用的是ircd-hybrid:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | apt-get install gcc openssl libssl0.9.8 libssl-dev //必要软件,我就载libssl-dev上面了... adduser ircadmin //建个新用户,ircd服务不能以root权限运行 wget http://softlayer.dl.sourceforge.net/sourceforge/ircd-hybrid/ircd-hybrid-7.2.3.tgz //下载,我一直对SoftLayer机房情有独钟的说,貌似就因为在Dallas? tar zvxf ircd-hybrid-7.2.3.tgz //解压 rm ircd-hybrid-7.2.3.tgz //顺手删除,习惯了... cd ircd-hybrid-7.2.3 ./configure --enable-openssl //配置OpenSSL支持,这地方我郁闷N久啊... make make install //安装完成,继续下面配置 cp etc/example.conf /usr/local/ircd/etc/ircd.conf //复制配置文件的例子过去~ openssl genrsa -out /usr/local/ircd/etc/rsa.key 2048 //生成证书和key openssl rsa -in /usr/local/ircd/etc/rsa.key -pubout -out /usr/local/ircd/etc/rsa.pub chmod 0600 /usr/local/ircd/etc/rsa.key //嗯哼,权限~ chmod 0644 /usr/local/ircd/etc/rsa.pub openssl req -new -days 365 -x509 -key /usr/local/ircd/etc/rsa.key -out /usr/local/ircd/etc/cert.pem //生成ssl数字证书 chown -R ircadmin.ircadmin /usr/local/ircd/ //设置目录拥护者 vi /usr/local/ircd/etc/ircd.conf //修改配置文件,要改的地方好多,等会再讲 su ircadmin //切换到ircadmin /usr/local/ircd/bin/ircd //启动ircd |
接着讲配置文件的修改,行号会有浮动,等配置文件修改好在启动,默认的应该启动不了…
- 第一处要改的是48行,这个name就是你IRC服务器的名字啦,任意,够响亮就可以~
- 第二处是56行,这个sid必须按说明设置,第一位是数字,后面两位是字母,搭配任意,否则ircd服务就启动不了~
- 然后是62行,这个是服务器描述,68和69行的是网络信息和描述,任意~
- 91行,最大客户端数量,一般默认足够了~
- 105和125行把#去掉~
- 132~134是服务器管理员信息,随意改~
- 256行是端口,默认是6665~6669,我改成了6667~
- 然后是265行,注释掉,266行,是SSL的端口~
- 287行改成user = “*@*”;任意用户@主机允许连接~
- 291行是服务器密码,设置了话任何用户登陆irc服务器都需要输入此密码,297行是设置登陆密码是否起用加密模式~
- 355行是管理OP,361行是允许任何连接上来带god的名称帐号切换成管理OP,361行是只允许本地连接的管理者,368行是管理OP的密码~
- 1132行的这句必须注释掉,不然没法运行~
- 差不多了,当然,还有更多可以挖掘的地方,自己折腾去吧~
这几天折腾下来,又学到不少~那个试用买了一个月的VPS天天被我摧残
,忍忍吧,还有10多天就过去了,到时候换回虚拟机接着折腾~博客这个就不折腾了,不然随时可能被我搞瘫~
/images/twitter.png)