投稿

ラベル(apt-get)が付いた投稿を表示しています

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバは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の反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

vsftpd の動作がおかしい

イメージ
ftpで接続できない vps上の設定を行っていていよいよ最終段階に。 webコンテンツをUPしようと、ftpサーバを立てる。 $ sudo apt-get install vsftpd まあ、これだけの話だ。 でもって、気持よくFileZillaで接続しようとするも接続できない??? 500 OOPS: vsftpd: refusing to run with writable root inside chroot () と文句を言ってくる。 おや、前に違う環境で立てた時は、こんなことはなかった。 まあ、今回はvirtual hostをいくつも切るために、アカウントごとにchrootしているので、これまでとは状況が違うといえば違うのだけれど…。 今回利用しているのは、vsftpd 2.3.5だ。 ググってみっるとこんなタイトルの情報が… 「 Fixing 500 OOPS: vsftpd: refusing to run with writable root inside chroot () 」はいはい。まんまじゃないですか…。 バグでも潜んでいるんかと、読んでみる。 対策として、 chmod a-w /home/user しろとな。これで試すと、問題なく接続できる。 いやぁ、しかし書き込み権限をなくせばOKと言われましても、これじゃUploadできないわけで…。 試しに、Uploadしてみるが、書き込みできないと言われる。 そりゃ、当たり前だ。 もしくは、次の2つの方法があるらしい。 vsftpdなら allow_writeable_chroot=YES vsftpd-extなら allow_writable_chroot=YES にしろと。(どうして記述の方法を変えたのか…) vsftpd-extってなんじゃい?と思いつつ、とりあえず上の方法で試すも撃沈。 他の情報を探してみる どうやらvsftpd2.3.5になった時に、セキュリティ強化のために導入されたらしい。 じゃ、2.3.4で行けばと思ったら、脆弱性が見つかっているので、止めた方がいいらしい。 手詰まりか?と思ったら、 方法は3つ。 Extended vsft

dpkg: 復旧不可能な致命的なエラーです

テストを繰り返していたら… 見出しのような「dpkg: 復旧不可能な致命的なエラーです。」と表示されて、apt-getもdpkgも中断するようになった。 その時のメッセージは、以下の通り。 (データベースを読み込んでいます ... 80%dpkg: 復旧不可能な致命的なエラーです。中止します:  パッケージ 'texlive-latex-extra-doc' のファイル一覧を読み込んでいます: 入力/出力エラーです E: Sub-process /usr/bin/dpkg returned an error code (2) synapticでもソフトウェアセンターでも、同じエラーで停止する。 根本原因は、「パッケージ 'texlive-latex-extra-doc' のファイル一覧」が読み込めないことらしい。 そこで、コンソールから、確認してみる。 $ sudo -s # cd /var/lib/dpkg/info/ # cat texlive-latex-extra-doc.list この時点で、入出力エラーを吐いてくる。 どうやら、ファイルが壊れたか、ディスクが逝ったか…。 とりあえず、texlive-latex-extra-doc.listをできるだけコピーしてみる。 # cp texlive-latex-extra-doc.list /home/userXX/texlive-latex-extra-doc.list そこで、コピーしたファイルを元の場所に上書きしてみる。 すると、apt-getなどの操作で、内容がおかしいと言ってくる。 当然、checksumを取っているので、整合性がないと言うわけだ…。 最後の手段 いろいろと検索してみるが、あまり良い方法が見つからない。 仕方なく、このパッケージがなかったことにしてみる。 # mv texlive-latex-extra-doc.* /home/userXX/ と一旦、移動させてみる。 そこで、apt-get updateなりしてみると、なんと…何事もなかったように振る舞う。 問題は、該当のパッケージを使っているものや、依存関係が発生した場合にどうなるかだけれども