自習室

こもります

さくらVPS (Ubuntu12.04) + お名前.comでメールサーバをたてる

動機

  1. 2014年1月1日、おもむろに一年の抱負などを考える
  2. 抱負の中で考えたことをブレイクダウンしていったら、Redmineを使いたくなった (このあたりは別途ブログに書く)
  3. さくらVPSを契約し、サーバを弄り始めて、まず肩慣らしに自前のメールサーバを用意してみようと思い立つ。

注意書き

  • 普段はOpenFrameworksとかUnityとかAndroidとかでヒューマンインタフェース書いたりUX考えてる人です。サーバいじりは趣味レベル
  • 間違いがあるかもしれませんご注意下さい

やりたいこと

  • さくらVPS上でメールサーバを構築する
  • お名前.com で取得したドメインを適用する
  • ThunderBird等メールクライアントで送受信する

サーバ環境

  • さくらのVPS 1G
  • OS: Ubuntu 12.04 LTS (x86_64) カスタムインストール済

手順

参考にさせていただいた記事様

Linuxをはじめよう!:自宅サーバーの構築 メールサーバの設定1

(※当方Ubuntuなので、適宜 apt-get 等読み替えていきます)

uayeb » メールサーバの設定(postfix, dovecot, sasl2=saslauthd)

クライアント(ここでは私が家のPCで使うThunderbird)との間での OP25Bへの対策として私は、後者の記事様のようにPostfixでSubmissionポート設定行いました。

PostfixのSubmissionポート設定については以下の記事様が詳しいです。上記記事様にもありますように、あわせてSMTP-Authを設定するのが肝要です。

Postfix で Submission ポート設定 (OP25B対策) - maruko2 Note.

Postfix + outbound port25 blocking 対策を行う | Lab Notebook:

基本的な作業は以上です。あとは自分なりにやったところを説明していきます。

お名前.com での設定

MXレコードを知らないところから始まったので、この辺を読んで勉強しました

【ドメイン】MXレコードの設定方法は? | よくある質問 | お名前.comヘルプセンター

DNSにメールサーバのホストネームとIPを覚えさせる作業はこちらに説明があります

よくある質問 | お名前.comヘルプセンター

Postfixでのドメインの適用

お名前.comでの設定の後、/etc/postfix/main.cfPostfixにたいしてドメインの設定をします。 最終的に私の場合は以下の様になります。

// /etc/postfix/main.cf
// 途中省略
myhostname = mail.izmiz.me
mydomain = izmiz.me
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydonain, localhost, $mydomein

さくらのVPSは、試用期間中はOUTPUT PORT 25が閉じているのでおとなしく課金すべし

ちゃんと記載がある

お申し込み・お支払いについて | VPS(仮想専用サーバ)は「さくらのVPS」

先に書いたPostfixのSubmissionポート設定は、あくまで「我が家ののISPが25番で出させてくれませんよ」ということへの対処と認識していたので、さくらVPSから出られない事があるとは思っていませんでした。このことを知ら無かったために、iptables上ではOUTPUTで25番をACCEPTしているはずなのにメール送信が出来ない状態にしばらくはまりました。さくらの会員メニュー中、契約サービスの手続から本登録を行って1,2時間すると、25番が通るようになります。

試用期間はわずか1日で終了しました(2週間試用出来たはずだった…もったいない!)

まなび - ログを読むべし

玄人の方に言ったら笑われそうですが、この作業を始めた当初「異常があったらログを見る」という発想がありませんでした。ググっているうちにログでも見るか…と思い当たった次第です。

/var/log/mail.logを見ると

Jan  3 01:10:34 izmiz postfix/smtp[1567]: connect to gmail-smtp-in.l.google.com[74.125.129.27]:25: Connection timed out
Jan  3 01:10:34 izmiz postfix/smtp[1567]: connect to gmail-smtp-in.l.google.com[2607:f8b0:400d:c02::1b]:25: Network is unreachable

のように残されており、我が家PCのThunderbirdから送られてきたメールが、さくらVPS UbuntuPostfixまで届いているのですが、それを送信先の(たとえば私のgmail)まで送ろうと接続を試みた際に、コネクションが切れていることがわかりました。これがきっかけで、さくらVPSから25番が出られていない、ということに気づくことが出来ました。

Oh...攻撃されている

いま数日ぶりに/var/log/mail.logを見てみると、盛大にアタックされている事が分かりました。いろんなアカウントでPOPのアクセスを受けているようです。これどう対処すれば良いんだろう…

といったところで。