仮想化生活への軌跡

Feed Rss


メールサーバーのOSを変更しました(Ubuntu Server > Debian)

03.12.2014, Debian, メールサーバー, by .

何かと忙しい日々が続き、久しぶりの投稿となってしまいました。

更新を放置している間にもMonacoin寄付ボタンから思った以上に寄付が寄せられ驚いています。
寄付を下さった皆様にはお礼を申し上げます <(_ _)>

今回は、先日から突如不調をきたし、毎朝root宛のエラーメールを吐き出すようになっていた自宅の仮想メールサーバーの修復を行いました。
本来であればエラーの内容をメールの文面やログから突き止めそれに対処するのが筋だとは思いますが、今回は表題のとおりサーバーOSをUbuntu ServerからDebianに変更した上で一から再構築を行いました。




Debianへ変更した理由

  • Ubuntuは先進的な要素を積極的に取り入れるためにセキュリティパッチが頻繁に提供されメンテナンス性にやや悖るが、保守的に設計されたDebian(安定版)ではパッチを適用する頻度が低く管理負担の軽減が期待される。
  • UbuntuはDebianから派生したディストリビューションであり、基本的な仕組みの多くをDebianと共有しているため、Ubuntu Serverで行ってきたサーバー構築のノウハウの多くが流用可能であり、乗り換えのハードルが比較的低い。
  • Ubuntuばかりでなく、そろそろ別のLinuxディストリビューションにも触れてみたい (?)

このような理由により以前からDebianへ乗り換えようとは思っていたのですが中々タイミングが掴めず (^_^;
今回のサーバーの不調を機にようやく実行に踏み切ることができました。


構築作業

上記のとおり、ほとんどの部分は当ブログの記事(1,2,3)で紹介した手順がそのまま流用できますが、一部注意を要する部分(というほどものでもないですが)があります。

この点の外、Ubuntu Serverとの使い勝手の違いなど乗り換えを行う上で踏まえておくと良いポイントを以下に整理しておきます。


管理者権限の取得方法の違い

Ubuntu Serverでは管理者権限(root)を要求するコマンドを実行する場合には基本的に”sudo”コマンドを利用するものとされ、rootアカウントでコマンドを実行することは推奨されていません。

これに対してDebianではデフォルトで”sudo”コマンドがインストールされておらず、管理者権限を行使するためには”su”コマンドでカレントユーザーをrootにスイッチすることになります。

とはいえ、筆者はこれまでもUbuntu Serverでは日常的に”sudo su -“コマンドでrootにスイッチしていたため、個人的にはあまり大きな違いはありません(^_^;


sources.listファイルの編集

DebianではUbuntu Serverと同じく”apt”コマンドが使用できますが、”sources.list”とはこのコマンドで参照されるパッケージの所在が記述されているファイルです。

Ubuntu Serverでは一度も気にとめたことのなかったこのファイルですが、Debianでは真っ先に編集すべきファイルとなります。

その理由は、Debianではパッケージ情報の参照先としてなぜかインストールディスクがデフォルトで指定されており、このままでは”apt”コマンドを使用するたびに光学ドライブへのディスクの挿入が要求されてしまうためです。

これを回避するためには、/etc/apt/sources.listを以下のように編集してインストールディスクの参照を無効化することが必要です(以下はDebian GNU/Linux 7.3.0 Wheezyでの例)。
# deb cdrom:[Debian GNU/Linux 7.3.0 _Wheezy_ - Official amd64 DVD Binary-1 20131215-04:56]/ wheezy contrib main  ←コメントアウト


デフォルトでvimが使えない

Ubuntu Serverでははじめからvim-tinyというvimエディタの簡易版がインストールされており、デフォルトで”vi”コマンドから呼び出される設定になっています。

これに対してDenianにはこのようなエディタや設定は組み込まれておらず、”vi”コマンドからはその名の通りviエディタそのものが呼び出されます。

筆者はUbuntu Serverのvim-tinyに慣れ親しんでいたため、操作性が大きく異なるviは厄介です。

対照法として、”vim”をインストールした上でこれを”vi”コマンドから呼び出せるようにエイリアスを構成しておきましょう。

まずは管理者権限を取得した上で、vimをインストールします。
su -
apt-get update
apt-get install vim


次にエイリアスを構成し、”vi”コマンドから”vim”が呼び出されるようにします。

はじめにログインユーザーにスイッチします。
su ログインユーザー


/home/ログインユーザー/.bashrcを編集し、エイリアスの設定を記述します。
alias vi='vim'  ←末尾に追記


これで”vi”コマンドからvimエディタを呼び出すことができるようになります。


postfixの設定

上記のとおり、postfixの設定は当ブログの記事のとおりで問題はないのですが、一点だけ筆者が嵌ってしまった箇所があります。

問題の箇所は、/etc/postfix/main.cf にデフォルトで記載されている(インストール時の設定にもよりますが)以下の設定です。
mailbox_command = procmail -a "$EXTENSION"


これが有効なままだと受信したメールがうまく各ユーザーのMaildirディレクトリに配信されなくなってしまうため、この行をコメントアウトしておきます。

Ubuntu ServerにインストールされるPostfixではこのようなprocmailコマンドの設定がデフォルトで記述されていなかったため、見落としに気づくまで当初は大変悩みました(^_^;


mpt-statusのアンインストール

DebianをVMwareにインストールした場合、”mpt-status”というRAIDステータスを取得・確認するためのデーモンが自動的にインストールされることにより、一定間隔おきにエラーメールがroot宛に届いてしまうようです。
(参照サイト:夢見る大学生のはてな日記ひまつぶし

もちろん仮想化環境でRAIDステータスを取得することに何の意味もないので、デーモンもエラーメールも無用の長物でしかありません。

エラーメールの発信を止めるためにも”mpt-status”を削除しておきましょう。
apt-get purge mpt-status


おわりに

長々と書いてしまいましたが、以上の各点に留意すればUbuntu Serverと大差なくメールサーバーを構築することができると思います(少なくとも筆者の環境では全く問題なく稼働しています)。

今後はvpnサーバーやリーバースプロキシサーバーについても順次Debianへの移行を進めて行く予定です。


Advertisement


RelatingPosts

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*