OpenSSH サーバのインストールと公開鍵・秘密鍵の作成・設置

この度さくらVPS(OS: CentOS 5)を利用し始めた為、備忘録として掲載。

事前準備

先ずリモートコンソール上で以下の作業を実施。尚、コンソールはブラウザ上ではなく、Java Applet版の方が使い易い。

既存のsshdサーバをアンインストール

OpenSSHサーバのインストール

最新版は以下のページで確認する。
http://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/

openssh.specの修正項目は以下の通り。

./openssh-5.8p1/contrib/redhat以外のディレクトリを削除し、RPMパッケージを作成。

以下のようなdependencies errorが発生した場合は必要なパッケージをインストールする。(ここではopenssl-develとkrb5-develを導入)

RPMパッケージの作成が完了したらそれらをインストールする。

sshdサーバの起動

公開鍵・秘密鍵を作成

sshクライアントがPoderosaである場合の操作手順を一気に書くと、
メニューバー[ツール] –> SSH鍵作成ウィザード –> 初期値のまま、ユーザーのパスフレーズを入力し次へ –> マウスをグリグリ動かして鍵生成 –>「秘密鍵を名前をつけて保存」と「OpenSSH形式で公開鍵を名前をつけて保存」のボタンで公開鍵・秘密鍵を作成(下図参照)。
ssh_key_gen
作成した公開鍵(文字列)を~/.ssh/authorized_keysに保存する。

sshサーバの設定

設定ファイルを編集し鍵方式のみでのログインを許可する設定とする。

変更要素、コメント解除行は以下のとおり。

最後に設定を反映して完了。

ちらっとアクセスログ(/var/log/secure)を確認したら、結構なBFAがあった。世のBotの監視は半端ない。公開後1時間足らずだというのに。。。sshdの待ち受けポートを変えるだけでも効果はありそう。
ちなみに、クライアント側で鍵を設置していないのにも関わらずサーバ側へアクセスを試みると下記の様なエラーメッセージが出力される。

追記(2011-05-04):WinSCPでの秘密鍵設定

WinSCPはPuTTY(*.ppk)の鍵しか対応していない為、Poderosaで作成した秘密鍵を使用するには、ppk形式に変換する必要がある。変換手順は、WinSCP付属アプリのPuTTY Key Generatorを起動し、メニュー「Conversions」→「Import key」で変換。