serversman@vpsでメールサーバー構築(未完)

LINEで送る
Pocket

12月が、2014年が終わっちゃうよ。何やってたんだよ私。
どうも、がじでございます。

今更ながら、自前メールアドレスが欲しくなったので、ServersMan@vpsでメールサーバーを構築してみました。若干残念な結果になりましたがその結果報告です。

参考にしたのはてもぐさんのページ
ServersMan@VPS でメール運用

私はお名前.comでドメインを取得したのでお名前.comのDNSサーバーにMXレコードを登録しておきます。

下記手順はほぼてもぐさんのサイトの通りなので省略

証明書の準備

SASLのインストール

SASLの設定

Postfixのインストール

yum install postfix

インストールが終わったら設定ファイルの編集。

vi /etc/postfix/main.cf

#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
myhostname = mail.seigaji.info ← 追加

#mydomain = domain.tld
mydomain = seigaji.info ← 追加(自ドメイン名を指定)

#myorigin = $myhostname
myorigin = $mydomain ← コメントアウト解除

inet_interfaces = all ← コメントアウト解除
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost ← コメントアウト
inet_protocols = ipv4 ← 今回ipv4でのみ許可するので確認しておく

#mydestination = $myhostname, localhost.$mydomain, localhost ← コメントアウト
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ← コメントアウト解除

#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,

#home_mailbox = Mailbox
home_mailbox = Maildir/ ← コメントアウト解除

#smtpd_banner = $myhostname ESMTP $mail_name
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
smtpd_banner = $myhostname ESMTP MyMTA(0.1) ← 追加(セキュリティ対策)

# 最終行に以下を追記
# smtp auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination


# 受信メールサイズ制限(10M)
message_size_limit = 10485760


# ssl setting
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/tls/certs/server.pem
smtpd_tls_key_file = /etc/pki/tls/certs/server.key
smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_schache

以下の行をコメントアウト

vi /etc/postfix/master.cf

smtps inet n – n – – smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
tlsmgr unix – – n 1000? 1 tlsmgr

デフォルトで立ち上がっているsendmail停止と自動起動解除

/etc/init.d/sendmail stop
chkconfig sendmail off

MTAの切り替え

alternatives –config mta

There are 2 programs which provide ‘mta’.

Selection Command
———————————————–
*+ 1 /usr/sbin/sendmail.sendmail
2 /usr/sbin/sendmail.postfix

Enter to keep the current selection[+], or type selection number:
2
# ↑のように表示されたら 2 を入力してEnter

Postfixの起動と自動起動設定

service postfix start
chkconfig postfix on

ここまでは完全にてもぐさんの手順通りですが、ThunderBirdの仕様が微妙に変わってたり、私の環境でうまく動かなかったりで確認できなかったのでDovecotの導入作業に先に入ります。

メール保存場所の作成

cd
mkdir -p Maildir/{new,cur,tmp}
chmod -R 700 Maildir/

私知らなかったのですが、今は各個人の$HomeにMaildir/{new,cur,tmp}形式で保存するのが普通みたいですね。

新規ユーザ作成時に自動でメール保存場所作成

mkdir -p /etc/skel/Maildir/{new,cur,tmp}
chmod -R 700 /etc/skel/Maildir/

Dovecotのインストール

yum install dovecot

設定

vi /etc/dovecot.conf

protocols = imap imaps pop3 pop3s
mail_location = maildir:~/Maildir

今のDovecotのバージョンでは/etc/dovecot/conf.d配下に目的別の*.confファイルを配置するようです。

SSLの設定

vi /etc/dovecot/conf.d/10-ssl.conf
#コメントアウトを解除↓
ssl_disable = no

# コメントアウト解除 + 証明書のパス設定
ssl_cert_file = /etc/pki/tls/certs/server.pem
ssl_key_file = /etc/pki/tls/certs/server.key

Dovecot 起動と自動起動設定

service dovecot start
chkconfig dovecot on

ThunderBirdで動作確認

ThunderBirdでアカウント設定→アカウント操作→追加します。
141229_01

メールアカウントとパスワードを設定。
141229_02

しかしアカウントが見つからないと警告・・・・
141229_03

仕方ないので手作業で設定。
141229_04

完了を押してもエラーで完了しないので詳細設定に入ります。

とりあえず送信控えをローカルに残さない設定にしておきます。
141229_05

メールクライアントから認識できないのでIptablesの設定とか間違っているのかな?と思いましたが、ちゃんと必要なポートは開けていました。
IMAPの143,994
SMTPの465,995
とかですね。

この状態でThunderbitdからメールを強引に送ってみると一応送れている模様。Terminalで接続してみるとちゃんとメールのやり取りができている模様。
141229_06

多分送受信はできているんですが、クライアント認証の設定で問題が出ている模様。うーん困った。

ただメールのやり取り自体はできているのでGMailの力を借りればいいんじゃね?と思いました。

メール転送の設定。

vi /etc/aliases
ユーザ名: 転送先メールアドレス

これで転送先メールアドレスにGmailを設定。Thunderbirdで送信はできていたのでGmailのアカウントインポートで今回作った送信用設定を追加。
141229_07

要はGmailから自前メールサーバーを指定してメール送信。
受信したメールはGmailに転送される。
ということですね。

なんかいろいろ誤魔化していますが、何とか自分のドメインメールが使えるようになりました。

多分、dovecotの認証設定か、IMAPの設定にミスかぬけがあると思うのですが、今回はここまで。後で調査しますが、なんせ止めちゃいけないサーバー上で作業しているので難しいですね。

不完全燃焼ですみません。
—以下広告—

LINEで送る
Pocket