ConoHa VPS に メールサーバを立ててみた

提供: tknotebook
2016年11月9日 (水) 12:06時点におけるNakamuri (トーク | 投稿記録)による版

移動: 案内検索

メインページ>コンピュータの部屋>ConoHa VPS を使ってみた


「このはの薄い本 Vol. 2 」 https://www.conoha.jp/download/books/conoha-book-02-postfix.pdf

を参考にPostfixの設定を行いました。

以下はメールホスト = serv.nakamuri.info, メールのドメイン = nakamuri.info とし、 すでに MX と A レコードは DNS に登録されているものとして説明します。

設定

ConoHa VPS では postfix は既に設定済みで、サービスも起動しています。わずかな設定変更でより適切に動くようになります。 設定ファイルは /etc/postfix/main.cf です。設定箇所は以下の通り。

書き換え ホスト名

myhostname = serv.nakamuri.info

書き換え ドメイン名

mydomain = nakamuri.info

コメント解除

myorigin = $mydomain 

書き換え

inet_interfaces = all

コメント解除

home_mailbox = Maildir/ 

コメント解除、書き換え

smtpd_banner = $myhostname ESMTP unknown

コメント解除(SMTPDが信頼するネットワーク範囲)

mynetworks_style = host

書き換え

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

末尾に追加(先頭の空白の有無に注意!) SMTP-AUTHを使うための設定を追加

smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions
 permit_mynetworks
 permit_sasl_authenticated
 reject_unauth_destination
mailbox_size_limit = 1073741824

最後のこの設定は、localhostからの送信しか認めていないので不要なのですが、とりあえず練習のつもりで設定してみました。

ファイアウォールの変更

/etc/sysconfig/iptables を以下のように書き換え iptables を再起動します。

SMTP のポートをあけました。

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# SSH, HTTP, Subversion Edge
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3343 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 4434 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 60000 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
service iptables restart

サービス起動

chkconfig saslauthd on
service saslauthd start 
service postfix start

まとめ

これで SMTP サーバが動いたのでメールが送受信できるようになりました。但しメールを送信できるのは mailx など localhost のプログラムだけです。 とりあえず、外部からメール受信可能で、redmine などからメール送信できるようにすることが目的なので、当面はこれで十分です。