メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバはVPS上に構築していた。 ・Ubuntu Server ・Postfix ・Dovecot ・spamAssassinと、BlackListの利用 Spam対策を行ってきたし、サーバ上でメールをトリガーにして各種プログラムを動かしたりしてきた。 メールサーバのメンテナンスは結構面倒くさくて、  ・Disk容量のチェック  ・不正アクセスのチェック  ・各種セキュリティパッチの適用 など、手間がかかる。 そこで、外部のサーバを利用することに…。 結構安くて使い勝手の良さそうなのが、「さくらのメールボックス」 3年契約で、3070円とな…。  メールアドレスは自分のだけなので、20GBまで利用可能!  (Gmailより大きいねぇ) ということで、早速契約。 アカウント設定を行って、既存のDNSを書き換える。WHOISも書き換えて完了。 SMTPとIMAPが利用できればOK。 ちょうど、GoogleがSPF設定していないと受信しないし、DKIMおよびDMARCに対応していないメールを弾くようになったので、対応しているのを確認。 さくらサーバ自体は、これまでお客さんのサーバとして何件も利用しているので、利用方法も難しくはない。  Webメールにも対応しているので、いざという場合にもありがたい。 ということで、各メールソフトの設定を変更。  PC(常時使用する3台)とタブレット、スマートフォンと台数は多いがそれ程手間はかからない。 問題は、旧サーバで送受信したメールの履歴だけれど、これはThunderbrdを使ってローカルに保存することで回避。  本当は、サーバtoサーバでMailboxに残そうとも考えたんだけど、古いメールはそれ程必要ないし、ローカルにバックアップしてあれば凌げるので、良しとする。 移行時にDNSの反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

オプションミスで慌てた

サーバの管理をしていて

クラウド上のサーバを管理するために、いつも通りsshで接続。sudoでルート権限に上がる。

さて、今回webコンテンツも触る関係上、自分ユーザをapacheグループに入れておこうと。
別段、よくやる作業なので、気楽に…。
# usermod -G apache 自分
とやってしまっていた。
正しくは、
# usermod -a -G apache 自分
でないと、まずいのだ…。でも、この作業をした時に、ユーザの追加やら、グループの変更など、色々やって最後に自分の設定をして間違えていた。

この後、webコンテンツを、/var/www/htmlにコピーして、apacheグループに入れておいて便利〜などと浮かれていた。

ログアウトして、翌日、ログのチェック等作業を行おうとコンソールからsshする。
そして、sudo -sでルートに上がる。
[ユーザ名]はsudoersのファイルにありません。
とつれない表示。???
この時点では、何が起きたかわかっていない。
ことの重大さに気付き、冷や汗を書いたのだが・・・。

行った作業

おかしいな、sudoersに無いなんて、編集していないしなと思い、確認することに。
less /etc/sudoers
パーミションが無いと言われる。
そりゃそうだ。

はっ!!!

見たり編集するためにはroot権限が必要だが、root権限を得るためにはsudoが使えないといけない。

詰んだ…

rootでのsshは許可していないし、変更するにはsudoが必須。→ダメ

historyで昨日の作業を見なおして、chmodのミスに気づく。
じゃ、wheelにも追加してやればいいじゃん。root権限が必要→ダメ

/etc/groupを書き換える?root権限が必要→ダメ

結局、自分にroot権限を付与するためには、root権限が必要なわけだが、自分からroot権限を剥奪している以上、付与できないという綺麗な循環が成り立った。

ということは、このクラウドでは、rootに上がれず、何もできないことが判明。

解決策はちゃんとあった

クラウドを借りてから、ずっとsshで作業していたけれど、そういえばWEB上の管理画面からコンソールエミュレーションの機能があった。

ここは、緊急時や初期設定時に使用するものだけれども、rootで入れるようになっている。

だいたい、アドレスすら覚えていないレベル。昔の契約時のメールを確認して、管理画面→コンソールへとすすむ。

ちゃんと自分でログインしていて、rootに上がった状態で、中断していた。
そこから再開なので、わざわざrootで入る必要もない。

ちなみに、linuxなどは、ログイン中に自分の権限が変わっても、ログアウトするまでは、ログイン時の情報で作業できますので・・・。

ここから、正しくグループの追加処理を再度行っておく。
# usermod -a -G wheel
これで、apacheにも属し、wheelにも属すことになる。

念の為、terminalからsshをかけて、sudoを実行してみる。
今度はOK!

ふ〜、一時はどうなるかと焦ったものの、無事解決。

しかし、クラウドのように手元に実マシンが無いと、レスキューモード(single)で起動もできないので、設定ミスは危険ですなぁ。

そのために、WEB上から操作できるようになっているんだろうけど、危なかったわ・・・。

コメント

このブログの人気の投稿

WPS Officeで日本語入力ができない

VirtualBoxでUSBから起動

Virtualboxとnvidiaドライバ