VPSでCentOS7サーバを構築する FTPサーバ、メールサーバ編

というわけで今回でサーバ構築の大体の話が終わります。結局5回に分かれてしまいましたね…。前回でWebサーバ編が終わったので残りの部分になります。

 

16.vsftpdの導入

FTP自体はSFTPがあればどうとでもなるような気がしますが、Webサーバが動いている環境でデータ送信といえば簡単にできるのがFTPです。Webサーバの時にSSL証明書もとってありますので普通に暗号化通信ができるのが楽なところです。

ちょっと導入で迷ったのが、今回サーバ側にIPv6が一つ割り振られているということでどうせならIPv6でも待ち受け可能な設定にしたのですが、その場合にvsftpdでlistenさせるときには設定が微妙に異なり、/etc/vsftpd/vsftpd.confに対する設定で

listen=NO
listen_ipv6=YES

のように単純なlistenの設定はNOにしないとうまくいかない、ということです。設定のコメントにも書いてありましたが、listen_ipv6を有効にするだけでipv4側のlistenも有効になるということで、覚えておきましょう。

 

17. postfix、dovecotの導入

いつもの通り、SMTPサーバにはpostfix、POP/IMAPサーバにはdovecotを使います。postfixのメール送信時のパスワードチェックにはsaslauthも使いますのでそちらも導入しておきましょう。もうSSLを使った暗号通信しか使わないのでPort587・Port110・Port143を開ける必要は全くないと思います。ただし、Port25は開けておかないと外部のメールサーバがこちらにメールを送信できない、というとんでもない現象になりますので気をつけて。

また、CentOS7ではclamavとの通信はmilter-managerというものを使うことが主流なようなのでそちらに設定を変更しています。特別な設定はあまり必要ではないはずなのですが、clamavとのやりとりを設定するときに妙な設定ミスをしたのか、うまくウィルスチェックのやりとりができない、という現象もおこったりして時間を使いました。設定の説明はちゃんと読みましょう、というやつですね。

dovecot側の設定ではメールボックス設定(/etc/dovecot/conf.d/10-mail.conf)で、Maildir形式を使う場合は余計な設定は無効にしておきましょう。特にnamespace inbox{}は初めは無効化していませんが今回は全く使いませんのですべてコメントアウトしてください。最後にSSLについては、どちらもcertファイルを指定する場合はLet’sEncryptのファイルの内fullchain.pemを指定します。cert.pemを指定するわけではないので注意しましょう。

 

18. 各サービスの動作チェック

外部に公開する前に正しく動作しているかどうかのチェックです。前回の番外編にも書きましたが、特にSSL証明書はドメインと関連付けられて発行されていますので、アクセスする側が一時的にドメインとIPの関連付けを変更して正しいと認識させないと動作チェックがうまくできないのがやっかいなところ。メールサーバのチェックでも同じようなことが起こってしまい、メール送信がうまくいかなかったりとかなり苦労しました。また、メールサーバは特にVPSの場合、無料期間だと正しく外部に送信できないようにVPS管理会社が設定していることもあるので使用料の支払いが終わった後でないと検査できなかったりするとか、WebのCGIではよくよく考えるとblogで数式を表示しているtexですが、こちらはコードからコンパイルしているのでサーバが変わるならもう一度コンパイルしないとまずかったり、latexのライブラリが必要だったりといくつかの記事を抜き打ちで回らないと忘れている項目がかなり多かったりとします。

個人サーバならある程度チェックが終わった段階で入れ替えて公開、あとは自分が見つけた設定ミスを少しずつ修正する、で済むのですが、仕事の依頼として受けるのであれば確認手順までマニュアル化しておかないと不備を言われる羽目になったり、無料サポートをすることになり、それが永続的になってしまって依頼料との釣り合いがいつの間にかとれなくなっていったりとします。気をつけましょう。自分のことなのですがね…。

 

次回はサーバ構築に関するまとめ

CentOS7を使って本格的なサーバ構築をするのは久しぶりでした。以前にやったのはファイルサーバの組み立てでしたからね。それにしても前のサーバはCentOS6のまま結局6年くらい少しずつアップデートを重ねて動いていったんだよな…。と感心したりしています。

 

LINEで送る
[`fc2` not found]
このエントリーを Google ブックマーク に追加

コメントを残す

メールアドレスが公開されることはありません。

*

この記事のトラックバック用URL