気づくの遅れてちょっと焦っちゃったけどまあどうにかなった。
概要
FreeBSD古いバージョンのやつが動いてる。
opendkimのパッケージは未インストールで、EOL切れてるからpkg installもできない。
メール送信はrelay_hostで別のサーバのjailから。
ってことで新たにpostfixサーバを立てて、そこにDKIMまわりの設定を入れてそこから送ることに。
opendkimインストール
$ pkg install opendkim
$ vi /etc/rc.conf
milteropendkim_enable="YES"
confファイル
$ cd /usr/local/etc/mail
$ mv opendkim.conf _opendkim.conf
$ vi opendkim.conf
# 認証するドメイン名
Domain www.example.com, www2.example.com
# セレクタ名
# opendkim-genkey -d www.example.com -s default などで作る
Selector default
# 署名に使う秘密鍵の場所
#KeyFile /usr/local/etc/mail/opendkim/keys/__DOMAIN__/default.private
# 署名に使う秘密鍵の場所(複数ある場合)
KeyTable /usr/local/etc/mail/opendkim/KeyTable
# 署名を行うドメイン+セレクタのペアを指定するファイル(複数ある場合)
SigningTable refile:/usr/local/etc/mail/opendkim/SigningTable
Mode sv # s = send enable , v = recive enable
SoftwareHeader no # not write version in mail header
LogWhy Yes # logging enable
Syslog Yes # use /var/log/maillog
Socket local:/var/run/milteropendkim/socket
SubDomains yes
UMask 000
# リレーしている時の設定
ExternalIgnoreList /usr/local/etc/mail/opendkim/TrustedHosts
InternalHosts /usr/local/etc/mail/opendkim/TrustedHosts
KeyTable
$ mkdir /usr/local/etc/mail/opendkim/
$ vi /usr/local/etc/mail/opendkim/KeyTable
default._domainkey.www.example.com www.example.com:default:/usr/local/etc/mail/opendkim/keys/www.example.com/default.private
default._domainkey.www2.example.com www2.example.com:default:/usr/local/etc/mail/opendkim/keys/www2.example.com/default.private
SigningTable
$ vi /usr/local/etc/mail/opendkim/SigningTable
*@www.example.com default._domainkey.www.example.com
*@www2.example.com default._domainkey.www2.example.com
TrustedHosts
# vi /usr/local/etc/mail/opendkim/TrustedHosts
127.0.0.1
::1
xxx.xxx.xxx.xxx/25
yyy.yyy.yyy.yyy/25
DKIMの秘密鍵作成
$ mkdir -p /usr/local/etc/mail/opendkim/keys/__DOMAIN__/
$ chown -R mailnull:mailnull /usr/local/etc/mail/opendkim/keys/__DOMAIN__/
$ cd /usr/local/etc/mail/opendkim/keys/__DOMAIN__
$ opendkim-genkey -d __DOMAIN__ -s default
$ chown mailnull:mailnull /usr/local/etc/mail/opendkim/keys/__DOMAIN/*
$ chmod 440 /usr/local/etc/mail/opendkim/keys/__DOMAIN/*
$ ls -l
-r--r----- 1 mailnull mailnull 916 Jan 15 17:24 default.private
-r--r----- 1 mailnull mailnull 320 Jan 15 17:24 default.txt
opendkimの起動
$ chown mailnull:mailnull /var/run/milteropendkim
$ service milter-opendkim start
DNSにレコード追加
$ cat /usr/local/etc/mail/opendkim/keys/__DOMAIN__/default.txt
default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" ) ; ----- DKIM key default for __DOMAIN__
### レコード ###
default._domainkey.__DOMAIN__. IN TXT "v=DKIM1; k=rsa; p=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
_adsp._domainkey.__DOMAIN__. IN TXT "dkim=unknown"
postfixの設定
$ vi /usr/local/etc/main.cf
smtpd_milters = unix:/var/run/milteropendkim/socket
non_smtpd_milters = $smtpd_milters
milter_default_action = accept
$ service postfix restart