ドメインキーとSPF

サーバー運用がかなり厳しいので寄付をしてくれる人がいたらこちら
メインPCもボロボロになってきたので、ついにほしいものリスト公開

Domain-Keysの設定

Qmail-toasterでメールのところで紹介したDomain-Keysの設定をします。
まずはqmail-scanner.plを編集しましょう。

my $qmailqueue = '/var/qmail/bin/qmail-queue';my $qmailqueue = '/var/qmail/bin/qmail-dk';

次に証明書の作成です。
qmail-toasterでは/var/qmail/control/domainkeys/Your.Domain/を利用しています。

mkdir -p /var/qmail/control/domainkeys/example.com/
cd /var/qmail/control/domainkeys/example.com/
/usr/local/ssl/bin/openssl genrsa -out rsa.private 768
/usr/local/ssl/bin/openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM
mv rsa.private default
chown -R qmailq /var/qmail/control/domainkeys
chmod 0600 default
 
grep -v ^- rsa.public | perl -e 'while(<>){chop;$l.=$_;}print "t=y; p=$l;\n";'

出てきた文字列をDNSのTXTフィールドに追加します。
"t=y; o=-;"(すべてのメールに署名があることを規定)ではなく、
"t=y; o=~;"(署名があるものもあれば、ないものもある)という方がいいかもしれません。

$ORIGIN example.com.
_domainkey TXT "t=y; o=~;"
$ORIGIN _domainkey.example.com.
default TXT "k=rsa; p=【grep -v ^- rsa.public~で出てきたp=からの文字列】"

後はDomainkeysに対応しているメールアドレスに送って確認しましょう。
大手だとYahoo!Gmailです。

そこからのメールを受け取って受信でもチェックをしましょう。

メールを送信した場合のヘッダ

メールを受信した場合のヘッダ

spfの設定

Domain-keysではやれ証明書作成だディレクトリ作成だとやりますが、
spfは基本的にDNSのTXTレコードに書くだけです。
ただ本来は固定IPで使うのがいいのですが、
とりあえず動的IPでも手間をあまりかけないでやってみます。

まずは今のIPアドレスをしらべましょう。

dig www.example.com
~~
www.example.com.        172800  IN      A       192.0.43.10
~~

確認できたらexample.com.zoneに設定を追加します。

spf1 TXT "v=spf1 +ip4:vvv.xxx.yyy.zzz ~all"
TXT "v=spf1 include:spf1.example.com ~all"
hogehoge TXT "v=spf1 include:spf1.example.com ~all"

これだけです。
IPが変更になったらspf1のレコードだけ変えておけば
いちいち全部変えなくてもすみます。

ちなみにIPv4のvvv.xxx.yyy.zzzからメールは送信されるけど
そうじゃない場合もあるという意味です。

gmailがspfに対応してるのでテストでメールを送受信してみましょう。
受信したメールのヘッダを見ると以下のようにspfについての記述が出てきます。

うちではDomain-keysも入れてるので
もう一個ヘッダで認証情報がのってきます。

完璧ですね。

コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 行と段落は自動的に折り返されます。
CAPTCHA
また変更しました
Fill in the blank.