サーバーは基本CLIで操作すれば事足りるので、SSHを使って遠隔操作できるようにする。サーバーマシンで作業するより、クライアントマシンで、ネットで調べつつ、コピペしながら作業出来るほうが全然作業効率はいいので。
私は、OS入れる時に一緒に ssh、sambaあたりは一緒に入れちゃっていたんだけどね。
あとで入れる場合は、↓
$sudo apt-get install openssh-server
sshログイン
$sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
# mod start 2012/06/08
#Port 22
Port xxxxx
# mod end 2012/06/08
#mod start 2012/06/08
#PermitRootLogin yes
PermitRootLogin no
#mod end 2012/06/08
#mod start 2012/06/08
#PasswordAuthentication yes
PasswordAuthentication no
#mod end 2012/06/08
port22から変えるのは常識だそう( xxxxxは他のアプリが使うポートとかぶらなそうなポート番号を)。 UbuntuMagazine Japanでも再三に渡って警告してる。ルートでのログイン不可、パスワードの接続も不可にしておく。
キーの生成。
$ ssh-keygen
$ cd ~/.ssh
$ touch authorized_keys
$ chmod 600 authorized_keys
$ cat id_rsa.pub >> authorized_keys
$ rm id_rsa.pub
本やネットによってはクライアント側でキーを生成して、それをサーバーに持って行く手順で書いてあるので、そこら辺は混合しないように。ネットでググるとクライアント側で作ってサーバーに持っていく手順の方が多いのかな…
秘密鍵id_rsaをUSBとかに入れて持っていく。まず、USBがどのデバイス名になっているかを調べる
$ ls -lR /dev/disk
lrwxrwxrwx 1 root root 9 6月 17 16:29
usb-MP3_HS_USB_FlashDisk_4512482adf0fe -> ../../sdc
マウントポイント作る
$ sudo mkdir /mnt/usb
マウントする
$ sudo mount /dev/sdc /mnt/usb
秘密鍵をコピーする
$ sudo cp ~/.ssh/id_rsa /mnt/usb/
秘密鍵を削除する
$ sudo rm ~/.ssh/id_rsa
firewallのsshのポートを許可する
$ sudo ufw allow ssh
USBで id_rsaをWindowに持って来る。自分はPuttyを使っているので id_rsaをppk形式に変換する。
---------------------------
PuTTYgen Error
---------------------------
Couldn't load private key (ciphers other than DES-EDE3-CBC not supported)
---------------------------
なんか古い puttygen.exeを使っていると駄目らしいので、最新の puttygen.exeを落としてくる。
http://tartarus.org/~simon/putty-snapshots/x86/puttygen.exe
改めて読み込むとパスフレーズを訊かれるので入力。「Save private key」を押下して、putty用のppk形式の秘密鍵が出来上がる。
あとはPUTTY側の設定を済まして、めでたくSSH接続できるようになる。