美文网首页
配置IRC守护者ZNC

配置IRC守护者ZNC

作者: 周宇盛 | 来源:发表于2019-03-10 16:49 被阅读2次

    我平时用的 IRC 客户端是LimeChat 和 WeeChat,在Macbook上运行LimeChat,在Linux服务器上运行WeeChat。
    我喜欢LimeChat的美观的界面,使用体验很好,而且还能提醒新消息。但是只要电脑休眠,就会漏过这段时间的新消息。
    我喜欢WeeChat,因为可以运行在服务器上,服务器不会休眠,所以可以接收所有的消息。
    然后我期望的状态是:

    • 既有 LimeChat 的美观的界面
    • 又不会错过任何消息

    在#freenode IRC 频道咨询之后,他们建议我在服务器上运行ZNC,然后通过本地的LimeChat 连接。

    ZNC 是 BNC(Bounced Network Connection)[1] 的一种,它相当于是一个代理,将它运行在服务器上一直保持稳定运行,其他客户端则通过它连接到 IRC 网络。

    连接ZNC的个人账号后,从不同客户端连接都能获得相同的数据:使用相同的用户名,连接到相同的channel。而否则的话,不同客户端是不能用同一个用户名的,而且每次连接都要重新登录注册的nickname。
    不过即连接 ZNC,客户端在重启后历史记录仍然会清空,仍然无法接收到休眠期间的新消息。

    配置 ZNC

    经过一番尝试后成功运行,下面是配置过程:

    1. 在 Linux 服务器安装ZNC(我用的是Ubuntu)
    apt install znc
    
    1. 初始化 ZNC 配置文件[2]
      如果当前当前是 root 身份,得先进入非root身份:
    su - jason # 进入非 root 身份
    
    znc --makeconf # 初始化配置
    

    这时候会设置监听端口,连接的IRC服务器,设置用户名和密码。
    通过 IRC 客户端连接 ZNC 的时候需要填写用户名和密码。
    最后会提示你是否启动 ZNC,回车选择是,然后 ZNC 就启动了。

    1. 通过LimeChat连接到 ZNC[3]

    这里的port、login name、server password都是前面一步设置的。
    network name可以随便填,它只用于方便本地连接多个server时用于区分。

    1. 加入channel
      运行命令:
    /join #freenode
    

    或者点击工具栏Channel->Add Channel

    ZNC还有 webadmin 控制台[4]用于管理和配置,比如可以新建一个 user,以便其他人也可以使用这个 ZNC,链接是IP 地址加前面设置的端口号。

    weechat连接到ZNC[5]

    如果ZNC 设置了SSL 连接的话,需要先获取SSL fingerprint:

    cat ~/.znc/znc.pem | openssl x509 -sha512 -fingerprint -noout | tr -d ':' | tr 'A-Z' 'a-z' | cut -d = -f 2
    

    在weechat内执行命令:

    /server add BNC my.bouncer.net/6697 -ssl -username=username -password=password -autoconnect
    /set irc.server.BNC.ssl_fingerprint MD5_or_SHA256_or_SHA512_fingerprint_here
    /connect BNC
    /save
    

    云服务器

    上面用的 Linux 服务器是我在家里的另外一台电脑,我把设置成了不休眠的模式,我是通过局域网连接到 ZNC,这样连接显然延迟会很小。缺点是只能在同一个局域网内使用,出门的时候就连不上了。

    更好的做法还是在云服务器上配置,我在用阿里云服务器配置的时候遇到一个坑,那就是ZNC 启动之后,本地却连不上。阿里云出于安全考虑,将不用的端口给封掉的缘故,需要在阿里云控制台手动启动端口。[6]

    一开始我尝试用1025端口,已经在阿里云控制台添加到安全组了,但本地仍然连接不上。
    后来尝试6666端口,添加到安全组,LimeChat就可以连上了,但是webadmin打不开。
    又尝试了8080端口,添加到安全组,LimeChat可以连上,webadmin也能打开了。
    折腾了好一会儿~~


    1. https://en.wikipedia.org/wiki/BNC_(software)

    2. https://wiki.znc.in/ZNC

    3. https://www.ericholscher.com/blog/2010/nov/5/using-znc-irc-bouncer/

    4. https://wiki.znc.in/Webadmin

    5. https://wiki.znc.in/Weechat

    6. https://jingyan.baidu.com/article/03b2f78c31bdea5ea237ae88.html

    相关文章

      网友评论

          本文标题:配置IRC守护者ZNC

          本文链接:https://www.haomeiwen.com/subject/nrxppqtx.html