いろいろ調べてみて、使う 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 でチェックしないようにしてみた。
コメントする