ラベル セキュリティ の投稿を表示しています。 すべての投稿を表示
ラベル セキュリティ の投稿を表示しています。 すべての投稿を表示

2014年9月3日水曜日

コピーしたsshキーを使う(Linux, Ubuntu)

デュアルブートなどをしていると、sshキーを共有して使いたいということは多いと思います。

しかしsshキーを他のOSやPCからコピーして使う場合は、単純に.sshにコピーするだけでは使えません。



1. 権限を変える
sshキーとして使うには権限が必要です。

chown usr:usr ~/.ssh/id_rsa*          (usrにはユーザーの名前を入れる)
chmod 0600 ~/.ssh/id_rsa
chmod 0644 ~/.ssh/id_rsa.pub


2. ssh-add
sshキーが変更・追加されたことをsshコマンドに伝える必要があります。

ssh-add

これで動きます。

一台のPCの複数のユーザー・OSでsshキーを共有することはそんなにセキュリティ上問題ありません(一つ割れば何でも出来ますので)。しかし複数台のPCで共通のキーを作るべきではありません。それがssh-copyなどのコマンドがない理由です。

2014年8月31日日曜日

root.diskを利用したLinuxのバックアップ・復旧の方法

復旧の方法はいくらでもありますが、その一つとして紹介します。

Linuxをいじっていると、復旧の手段がなくなるまでシステムを破損することがあると思います(私はよくあります)。Linuxは何でも自由にいじれます。しかし自由であるということは、責任を伴うということです。

私が(今回)やってしまったのは

1. /dev/loop0にルートをマウントした
2. マウントしたままfsckをした (ERROR!)

でした。
マウントしたままであったのをしばらく気づかず、その後も色々操作をしてしまい、複数のシステムファイルをどこかにやってしまいました(正確にはファイルのinodeが消えてしまったのでしょう)。


結局Ubuntuをインストールしなおして、必要なデータを元のUbuntuから取り出し、そちらはアンインストールすることにしました。

データの取り出し方は、Linux to Linuxは非常に簡単で、

sudo mkdir /mnt
sudo mount /path/to/root.disk /mnt
sudo cp -r /mnt/home/user/files /home/user
sudo umount /mnt


とすればディスクイメージからファイルを取り出すことができます。
何をやっているかというと、

1. sudo mount /path/to/root.disk /mnt

ディスクイメージを/mntにマウント。これによって/mntからディスクイメージにアクセスすることができる

2. sudo cp -r /mnt/home/user/files /home/user

/mnt以下の仮想ファイルの必要なものをコピーしてくる

3. sudo umount /mnt

マウントしたイメージを戻す


といった感じです。

そういう訳で、root.diskのバックアップは定期的にとっておくと便利だと思います。Ubuntuはファイルサイズもそんなに大きくならないので、時間もそんなにかかりません(不思議なことにUbuntuを使っているとHDDをあまり使いません。多分ゲームをあまりダウンロードしなくなるからでしょう。)。

もっとも効率良くLinuxを知る方法は、Linuxをクラッシュさせ、復旧を試みることだというのが有名な話です。そういう意味でこの方法は再起不可能なまでにクラッシュさせた場合に使うべき方法かもしれません。あるいは復旧にかける時間がない時などに、手早く必要なファイルを取り出せます。


こういうことを経験していくと、逆にWindowsの設計思想を理解できるようになるように思えます。
Windowsはシステムファイルを完全に隠蔽しているのでなかなか(意図せず)再起不能にさせることができないのです。