OpenSSHのインストール。
インストール
SSHサーバのみが必要ならopenssh-server、クライアントのみが必要ならopenssh-clientsをインストールする。 opensshはいずれの場合も必須。
SSHサーバ(openssh-server)設定
SSHサーバを起動する前に設定ファイル/etc/ssh/sshd_configを編集する。 参考資料:sshd_config.0
以下は設定例。 条件は次の通り。
- SSHバージョン1および2を使用する
- 公開鍵認証方式のみを許可する
- rootユーザの直接ログインは許可しない
設定ファイルの編集が終わったら、起動する。
クライアントの設定例
ここではWindows上で動作するSSH2対応ターミナルエミュレータ、Poderosaを使用してSSH接続するための設定例を紹介する。 まずは、Poderosaにて次の手順で公開鍵・秘密鍵のペアを生成する。
- Poderosaを起動して「ツール」メニューの「SSH鍵作成ウィザード」を開く
- アルゴリズム、ビット数、パスフレーズ(およびその確認入力)の各項目を設定して、「次へ」
- 現れるウィンドウ内でマウスカーソルを適当に動かす(カーソルの動きが鍵を生成する際の乱数源となる)
- 生成が完了したら、
- 「秘密鍵を名前を付けて保存」で秘密鍵を保存する
- 「OpenSSH形式で公開鍵を名前を付けて保存」で公開鍵を保存する
続いて、作成した公開鍵をサーバに保存する。 保存する場所は、SSH接続で使用するユーザのホームディレクトリ(実際には、設定ファイルのAuthorizedKeysFileで指定したファイルとなる)。 以下の例では、pubkey.pubが作成した公開鍵で、FTPなどでアップロードしたものと仮定する。
ここで注意点。 設定ファイルでStrictModesをonに設定した場合、公開鍵を保存するディレクトリ・ファイルのパーミッションを正しく設定しないと正しく動作しない。 この場合、ログファイルには次のようなメッセージが出力される。
ここまでの設定が完了したら、実際に接続してみる。 「ファイル」メニューの「新規Telnet/SSH接続」をクリックする。
出てくるダイアログについて次のように入力する。
- ホスト: 接続先ホスト
- プロトコル: SSH2(Poderosaで生成した鍵はSSH2に対応したもののため、SSH2を選択)
- ポート: SSH(22)
- ユーザ名: 接続に使用するユーザ名
- 認証方法: 公開鍵
- パスフレーズ: 鍵ペアを生成する際に使用したパスフレーズ
- 鍵ファイル: 生成した鍵ペアのファイルのうち、秘密鍵のファイルを指定
そのほか適宜パラメータを設定してOKをクリック。 うまくいかない場合は/var/log/secureなどを参照して原因を探る。 うまくいけばそれでOK。