As I Please

MTのいんすとーるの練習と、その他びぼうろく・・・

spf導入メモ(3) enma(yenma)

いろいろ調べてみて、使う spfは国産の enma(yenma)が一番良さそう?と思われる。 milter-manager で利用可能な milter一覧はhttps://milter-manager.osdn.jp/reference/ja/available-milters.htmlにあり、spfだけなら spfmilterがあり、libspf or libspf2などのインストールも比較的簡単そうだけど、enmaは国産(IIJ)でもあり、すでに枯れているようだし、securemx.jp でも黙って使っていて(Mail Header を見るとわかる)、open source の最新版(https://github.com/iij/yenma/releases)の v2.0.0-rc1で良さそうな気がする。 ldns は
./configure --libdir=/usr/local/lib --disable-dane-verify
gmake
gmake install
でインストール。 FreeBSDで gcc,gmake で作ったが、起動時にどうもエラーが。user: mailnull を confに指定するとうまく起動しない。'sysconf failed' のエラーが。 調べていくと、common/daemon_stuff.c の中で
long buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
がおかしいらしい。ChangeLogを見ると、
2008-08-26
   * fix sysconf(_SC_GETPW_R_SIZE_MAX) problem on FreeBSD
とあるが、これがまた 最近の FreeBSDでは enbugしてしまったのだろうか? とりあえず、
# diff common/daemon_stuff.c common/daemon_stuff.c.org
217,218c217
<     //    long buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
<     long buflen = 16384;
---
>     long buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
と、適当な値を設定してcompileし直したところ、どうもうまく通過。 起動scriptは、/usr/ports/mail/enma/files/milter-enma.in を適当に書き換えて/usr/local/etc/rc.d/ 以下に設置、あとは /etc/rc.confに enma の記述を追加。 とりあえず spfだけチェック。dkim,sender id,dmarcは false でチェックしないようにしてみた。

コメントする