debian wheezy への ssh サーバーのインストールと公開鍵認証の設定等

VPS の実際では SSH もインストール済みかもしれない。しかし、今回は最小構成でインストールしたため、SSH サーバーのインストールから始める。

apt-get install openssh-server

SSH サーバーが起動しているか確認する。

service ssh status

SSH サーバーの設定ファイルをバックアップする。その後、ポート番号を変更し、ルートでログインできないようにする。公開鍵認証を設定する準備もする。なお、今後は debian squeeze のインストール過程で作成した一般ユーザーでログインする。

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.origin
vi /etc/ssh/sshd_config
Port 38761
PermitRootLogin no
AuthorizedKeysFile	%h/.ssh/authorized_keys
:wq
service ssh restart

今回はホスト OS にスペック的な余裕がないので、SSH クライアントは軽快な puttyjp を採用する。puttyjp の接続先 IP を調べる。

ifconfig

puttyjp から公開鍵認証を使いたいユーザでログインする。文字化けする場合は設定の変更の「変換」から文字コードを変更する。私の場合は UTF-8 で文字化けせずに表示できた。

公開鍵認証の設定をする。puttygen を起動し、公開鍵と秘密鍵を作成する。公開鍵をホスト OS とゲスト OS の共有フォルダにおき、公開鍵を登録する。

cp /mnt/hgfs/shared/local_key.pub ~
ssh-keygen -i -f ~/local_key.pub > ~/local_keygen.pub
mkdir $HOME/.ssh
cat ~/local_keygen.pub >> $HOME/.ssh/authorized_keys
chmod 600 $HOME/.ssh/authorized_keys
rm ~/local_key.pub ~/local_keygen.pub

公開鍵認証の設定には『@IT:鍵交換方式のsshでアクセスするには』が参考になった。

puttyjp の設定を変更して、公開鍵認証を利用したログインにする。ログインできたらパスワードを使ったログインを禁止する。

vi /etc/ssh/sshd_config
PasswordAuthentication no
:wq
service ssh restart