いつきコンテンツ

ヘルプ

カウンター


2016-10-16 ServersMan@VPSで借りてるサーバーが飛んだので、復旧作業メモ

昨日のyum updateの件です……。

[Linux] 復旧メモ

まず、コントロールパネルから、「サーバーの初期化」をしました。

OS/パッケージはそのまま(CentOS 7 64bit/シンプルセット)

さようなら今までのデーター……w

しばらくするとrootで入れるようになります(ssh)

まずは、さっくりアップデートをしてしまいます。

昨日これでクラッシュしたので、少しトラウマですが。

yum update

これで一括……と思ったら

Error: systemd conflicts with initscripts-9.49.17-1.el7_0.1.x86_64

死ね!

調べたらyum updateでエラー「Error: systemd conflicts with initscripts」だとかCentOS7 yum update 後、VPSサーバーにアクセスができなくなった-FAQ

これかぁ……(;´Д`)

と言う訳で、回避策として、/etc/yum.confにinitscriptsのupdate拒否を書く

/etc/yum.conf

exclude=initscripts*

……これでもNetworkManagerのインストールを行っていると駄目らしい。制限多すぎるよ……(;´Д`)

と思ったら、すでに書いてあった……だと!?

コンフリクトするなら消してしまえw

yum erase initscripts-9.49.17-1.el7_0.1.x86_64

無事、帰ってこなくなりました(笑)

と言う訳で、サーバー初期化からやり直し。

逆に、/etc/yum.confに書いてある、exclude=initscriptsを消してみたらどうだろう……。

と言う訳で、テスト。

……

 systemd:Caught , dumped core as pid 705.
systemd:Freezing execution.

あっ(察し

[root@dti-vps-srv ~]# reboot
Failed to start reboot.target: Connection timed out
Failed to open /dev/initctl: No such device or address
Failed to talk to init daemon.

あ。これ、昨日シャットダウンするときに出たエラーと一緒だ(;´Д`)

さて、どうしようかな……。

とりあえず、サーバー初期化からやり直し。

……完全仮想化環境に引っ越ししたくなってきました・゜・(ノД`)・゜・

systemdも引っかかるので、それも/etc/yum.confに書き足し

exclude=initscripts* systemd* vzdummy-systemd*

これでどうだ!(笑)

……依存関係でダメなのが増えたー!(笑)

おとなしく、exclude=initscripts*だけにして

yum --skip-broken update

しますか……。

Error:  Multilib version problems found. This often means that the root

マジでー……

色々試してみる。

/etc/yum.confに

exclude=initscripts* systemd* vzdummy-systemd* util-linux* rsyslog* rpcbind* dracut* procps-ng* cyrus-sasl* libmount* libuuid* libblkid* kmod*

これでどうだぁぁぁぁーーーーー(笑)*1

とりあえず、目立ったエラーもなくComplete!

やっほい! と言う訳で、reboot。

journalctl -rで確認したら、多少気になるエラーは出ていますが、まぁこれなら使えるだろ。

と言う訳で、セットアップを開始(笑)


まずは、ホスト名を変更します。

/etc/hostnameの書き換えで行けるかなぁと思ったら、無いであんの。

hostnamectl set-hostname ホスト名

で書き換え。

Failed to issue method call: Access denied

とか言われますが、気にしない。

コンソールは書き換わらないので、ここで一回リブート(めんどくせぇw

無事書き換わりました。癖がありすぎるね。このサーバーさんは。


次。netstatとか無いと地味に困るので、使うネットツールをインストールします

yum install net-tools

開いてるポートを確認。

うん、個人的には、いらない物がモサッと走ってる。

メモリーも少ないので止めてしまいます。

systemctl stop httpd
systemctl disable httpd
systemctl stop ajaxterm
systemctl disable ajaxterm
systemctl stop xinetd
systemctl disable xinetd

お。ajaxtermは削除されないので、直接消してしまいましょう。

cd /etc/systemd/system/multi-user.target.wants
mv ajaxterm.service .ajaxterm.service
systemctl daemon-reload

ここで、念のため一度reboot。

無事、すっきり環境に。


次に、sshdの設定です。

まずは、アクセスコントロールをつけます。怖いので。

お約束ですが、一応。

/etc/hosts.denyに次の行を追加(全拒否)

ALL: ALL

/etc/hosts.allowに次の行を追加

sshd: .jp 127.0.0.1 その他許可したいIPリスト

これで、.jpじゃないドメインとIPリスト以外からのアクセスは拒否されるようになります。

IPv6アドレスは[]で囲んでやる必要があるのかな?

これでアクセス制限は完了です。


次。sshでrootログインしてるので(汗)これを何とかします(笑)

その前に、rootパスワードを変えてしまいます。

passwd

ユーザー作成。

adduser ユーザー名
passwd ユーザー名

別の端末を使って、リモートからユーザーでログイン+rootになれたことを確認したら、sshdのroot直ログインを禁止します。

/etc/ssh/sshd_config の「#PermitRootLogin yes」の次の行当たりに、

PermitRootLogin no

と書き、systemctl restart sshd。

rootで入れないこと、ユーザーで入れることを確認しておきましょう。

次に、ユーザーが公開鍵でログインできるように設定します。パスワード使いたくないですしね。

まず、su - ユーザー名でユーザーに移動。

mkdir .ssh; chmod 700 .sshで.sshディレクトリを作成。

次に、~/.ssh/authorized_keysに、公開鍵を書き込みます。

これで公開鍵でログインできるようになりました。試しておきましょう。


次に、文字コードをLANG=Cからja_JP.UTF-8に変更しておきます。

localectl set-locale LANG=ja_JP.UTF-8
localectl

変更されていることを確認しました。


現状では、sshdは22番ポートじゃ無くて、変なポート(笑)で立ち上がっています。

sshdそのものを22番ポートにするのは、「いざというときにパスワード認証でログインできない」のと、「あんまりsshdそのものを信用していない」ので、tcpserver経由で起動するようにします。

具体的なやり方は、Linux関連/sshdをtcpserver経由で動かす - いつきメモを参照。


次。tinydnsを設定します。

具体的なやり方は、Linux関連/tinydnsを使う - いつきメモを参照。


ログを物理ディスクに取るようにします。

mkdir /var/log/journal

systemctl restart systemd-journald.service

systemctl restart rsyslog.service

*1 依存関係があると言われた物を端から順に放り込んだ

[日記] 今日はここまで!

とりあえず、DNSまで復旧させた。

あとは、webdavかなぁ……(;´Д`)

[日記] ddnsの設定するの忘れてた

来週……は忙しいから、再来週かな?

→さっくり作ってしまえたので、さっくりと終了。

Last Update: 2016-10-16 16:53:34
本日のツッコミ(全2件) [ツッコミを入れる]
匿名 (2016-10-16 13:42)

水樹奈々主演で実写映画化だっw

匿名 (2016-10-16 15:01)

お疲れ様。なむ。 <br>


カレンダー

2003|04|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|07|08|11|
2013|03|05|08|
2014|01|
2015|04|05|06|07|09|10|12|
2016|01|03|05|06|10|11|
Generated by tDiary version 4.1.2 + amazon(DB Patch 0.2.1) + counter(DB Patch 0.2) + IKPatch version beta 4.0.1.
Powered by Ruby version 2.1.5-p273 with ruby-fcgi