サーバーアップグレード後やっぱり設定苦戦中

先日サーバーのアップグレードを行ったんだけどやっぱりいろいろ苦戦中。

一番苦戦しているところは毎度のことで redmine 。と ssh の設定。
でも ssh は一応解決。これまでの謎は解けた。

悩んでいた謎は予備サーバーでは再起動してもログインできるのに、メインサーバーでは(再)起動したら エラーでログインできない。
permission denied(Publickey) これが出る。

でも、サーバーでログインして作業したりしていると、外部からもログインできるようになっていた。いろいろ調べたけど Publickey のパーミッションエラーなんだけど何が問題なの?とこれまで悩んでいたわけ。

原因の調査開始ということで挙動の違いを調べる課程で、予備とメインの設定ファイルの違いを見てみると
メイン PasswordAuthentication no 予備  #PasswordAuthentication yes
メイン PermitRootLogin no 予備 PermitRootLogin without-password
の二カ所が違っていた。

PermitRootLogin は root でのログインを許可するかの設定らしい。root ログインはしないので、これは予備を no に変更。悩んでいた問題の設定じゃない。
むしろこっち PasswordAuthentication が関係していることが判明。これはパスワードログインをするかしないかの設定。
ssh -vvv でログ見ていると予備サーバーで  rsa キーでログインしていたと思いきや実はパスワードログインしていたということが判明しました。なんと言うことだ。
これを no にすると予備でもログインできなくなった。メイン、予備どちらも rsa で接続できないから予備の方は許可されているパスワードログインを実行していたのでログインできていたとそんなオチでした。

結局のところ、原因はメインサーバーの方はユーザーの問題で rsa のpub キーにアクセスできないから権限エラーでログインできず、予備サーバーは authorized_key のファイルがない。そもそも rsa の設定自体ができていなかったからパスワードログインしていたとそんなオチが待っていた。
サーバー自体にログインして作業すると外部からもログインできるようになったのは、何かの設定がログインすることで有効になって外部からログインできるようになったりしていたと思われるが何をどう追加したのか忘れちゃったorz。

なんだよ、初歩的なミスかよ。という分かってしまえばそういう問題でした。
あとは毎回苦戦している redmine だけ。

 

サーバーのアップデート

ubuntu サーバーの一つをアップグレードを試みた。バージョンは10.04。 ちょっと放置しすぎました。まあ、実験用だし。

ということでコンソールで do-release-upgrade でアップグレード。

定期的にやってたから気が付かなかったけどLTS って一気に10.04から14.04 まで上がらないんですね。12.04にアップグレードとなりました。

設定は引き継ぐ方向で進め特に大きな問題はなく???作業は終了し再起動した所…。

apache の起動が失敗。原因はredmine の部分で、これ10.04でppa-launchpadからインストールしてたんだけど、これが悪さしてました。

10.04でも苦戦してたからなぁ。これまた苦戦しそうだ。とりあえずこの設定外してapacheの起動は無事解決…というか、先送りしただけだけどね。

とりあえず作業自体は2時間ほどで終了。

続きはまた今度12->14のアップグレードが待っている。

nfs で接続したメモ

現行 ubuntu サーバーとバックアップ用に予備サーバーとを samba じゃなくてnfs で接続したメモ。

サーバー側。ubuntu 14.04

こちらの方に nfs-kernel-server をインストール。一応 nfs-common も。

設定を /etc/exports に外から見たいディレクトリを記述する。

たとえば /media/usb-hdd/share 192.168.1.3(rw,sync) とか

で、一通り設定終わったら service nfs-kernel-server start で nfs を起動する。

クライアント側。ubuntu 10.04

nfs-common をインストール。

マウントするディレクトリを作成する。たとえば、 /mnt/nfs とか。

で、マウントする。 mount -t nfs 192.168.1.2:/media/usb-hdd/share /mnt/nfs こんな感じ。

うまく接続できれば /etc/fstab に記述しておけば起動時に接続してくれる。

たとえば 192.168.1.2:/media/usb-hdd/share /mnt/nfs defaults 0 2 とまあ。

あと、サーバーの接続したいディレクトリのパーミッションは適切に変更しないと権限が無いと怒られます。

いじょ。覚え書きでした。

redmine のPermission と 500 error の対応メモ

ubuntu server で redmine を使っていてこれまで正常にアクセスできていたのが急にアクセスできなくなった。たぶん apache とかのバージョンアップがあったのではと思うがとりあえず復旧メモ書き。
エラーメッセージは
Permission denied – /etc/redmine/default/session.yml

いきなり権限エラーって……。

これの対策は以下のファイルに
/etc/apache2/mods-available/passenger.conf
この行を追加する。
PassengerDefaultUser www-data
念のため apache を再起動。無事正常に表示されました。

あと、もう一つ。
部分的に Internal Error 500 になって表示できない問題も発生していた。
今回は 12.04 -> 14.04 へバージョンアップしたのだがバージョンアップしたあと、部分的に 500 エラーを出してくれる場合がある。
このときは、データベースのマイグレーションとキャッシュ、セッションのクリアを実行することで解決する可能性が高い。
cd /usr/share/redmine/ に入る。
ここで以下のコマンドを実行
sudo rake db:migrate RAILS_ENV="production"
sudo rake tmp:cache:clear
sudo rake tmp:sessions:clear
こちらも念のため apache を再起動で無事正常に表示されました。