使用BIP代理长期挂IRC

使用BIP [1] 代理挂IRC和以前在远端服务器挂QQ升级是一个模式, 不过不是为了升级, 而是为了保存日志, 特别是在一些全球的频道, 晚上关了IRC可能错过一些有趣的讨论.

以前听说过这个功能, 但是自己没有去配置, 我想着不安全. 而且一致用命令行的irssi, 或者 emacs里的erc, 都很轻便. 今天Fam告诉我, 我们组有一个公用的服务器, 有kerbose个人账号保证安全, 于是配置了一下, 确实很实用又方便.

需要在一台长期运转的服务器上配置BIP服务, 可以参考这里详细的步骤 [2] 或 3. 然后简单配置客户端就可以.

这里说一下我觉得特别的地方:
1) 我们的服务器是公用, 所以不能使用默认7778端口, 可以先用 nc -l xxxx 来做个监听测试, 确保其他人没有使用.
2) on_connect_send 定义的命令是用来验证IRC服务器上的账号, 不同服务器的命令不一样.  “PRIVMSG UserServ login user password”, 也可以是 “PRIVMSG NickServ :IDENTIFY user password”. 这个不同在注册用户的时候就能知道.
3) channel的定义有多种形式
.1 channel { name = “#linaro,#linaro-meeting”; };
.2 channel { name = “#linaro”;  name=”#linaro-meeting”; }; 可以在每个name后边使用其他参数定制单个channel, 比如有个别channel需要密码验证, 也可以定制是否备份日志,等等.
.3 也可以多个channel语句
4) bipmkpw 的使用: 不带任何参数, 根据提示输入自己的密码, 产生一个hash字符串, 需要更新到bip.conf里.
5) 客户端的密码项包含三部分:    username:password:network,  这个用户名是bip.conf顶部定义的用户名, 密码和bipmkpw输入的一致. network是IRC网络名字, 也是在bip.conf里定义的. 客户端还有一个密码是验证昵称的, 不要混淆.
6) 时区问题, log里显示的是服务器的时区, 还没有解决

[1] http://en.wikipedia.org/wiki/BIP
[2] https://wiki.mageia.org/en/QA_procedure:Bip
[3] https://wiki.linaro.org/Resources/HowTo/BIP

Fedora 20: mutt/msmtp: 使用Gmail发送邮件

在mutt里使用fetchmail接受gmail很容易, ~/.fetchmailrc一句命令就能搞定. 今天记录一下, 使用msmtp发送Gmail, 重点在于必须使用tls, 需要的认证文件需要从ca-certificates包里获得, 路径为: /etc/pki/tls/certs/ca-bundle.crt, 这和ubuntu里不一样.

# cat ~/.msmtprc
#Company
account default
host smtp.company.com
port 25
from akong@company.com
logfile ~/Mail/.msmtp.log

#Gmail
account gmail
protocol smtp
tls on
tls_starttls on
tls_trust_file /etc/pki/tls/certs/ca-bundle.crt
host smtp.gmail.com
port 587
auth login
from kongjianjun@gmail.com
user kongjianjun@gmail.com
password xxxxxx
logfile ~/Mail/.msmtp.gmail.log

修改完msmtp可以使用下面的命令进行测试:

$ echo -e "Subject: Test MailrnrnThis is a test mail" |msmtp --debug --from=kongjianjun@gmail.com -t kongjianjun@gmail.com

在~/.muttrc里添加两个宏用来选择发送账号, 这个设置完新建邮件使用最新设置的地址.在编辑邮件过程中使用 <esc>f 来编辑发送地址.

macro generic "<esc>1" ":set from=akong@company.com"
macro generic "<esc>2" ":set from=kongjianjun@gmail.com"

同时设置秘密抄送:
macro generic "<esc>1" ":set from=akong@company.com ; my_hdr BCC:Amos Kong <akong@company.com>"
macro generic "<esc>2" ":set from=kongjianjun@gmail.com ; unmy_hdr BCC"

修改mutt里GPG 签名公钥附件名

在mutt里配置好gpg后, 加密邮件会附带一个公钥文件, 这个文件名在Gmail里是 noname, 在QQ邮箱里是tcmime.1591.1634.2471.bin. 这些都会给人造成困惑, Thunderbird 里会把这个文件命名为 signature.asc

在archlinux 的github [1], 有一个patch为mutt添加了定义公钥文件名称和描述的功能. 于是从FedoraProject[2]下载mutt代码, 重新用rpmbuild编译rpm安装. 当然也可以使用Upstream[3]的代码, 记着configure时候打开需要的特性, 如 –enable-hcache 用于缓冲邮件头部改进加载速度.

安装完mutt, 只需要在~/.Muttrc里添加如下内容, 就可以修改公钥文件名了.

set pgp_mime_signature_filename=”signature.asc”
set pgp_mime_signature_description=”Digital signature”

[1] https://github.com/felix/archlinux/blob/master/mutt/pgp_verbose_mime.patch
[2] git://pkgs.fedoraproject.org/mutt.git
[3] hg clone http://hg.code.sf.net/p/mutt/code mutt-upstream