第5回 PuTTYでSSH2接続
後始末-SSHのセキュリティを高める
ここまででパスフレーズ認証までのSSHについての設定を紹介しました。これでルータに繋がっている室内のPCどこからでもPuTTYと秘密鍵があれば、サーバを操作することができるはずです。
ここではセキュリティを高めるというと何やら大げさですが、2,3やり残したことがあるのでそれらを行うことにします。
秘密鍵の削除
そういえば秘密鍵(id_dsa)がサーバのディレクトリに残りっぱなしでした。そのまま放置して、万が一誰かに盗まれでもしたら大変です。秘密鍵をサーバに置きっぱなしにしておくのはよろしくありません。
rm命令を実行して秘密鍵(id_dsa)を削除します。
本当に消去されたか念のために確認してみます。
合計 8
drwx------ 2 hoge hoge 45 2005-11-23 16:22 .
drwxr-xr-x 3 hoge hoge 71 2005-11-23 15:12 ..
-rw-r--r-- 1 hoge hoge 604 2005-11-23 15:50 authorized_keys
-rw-r--r-- 1 hoge hoge 604 2005-11-23 15:14 id_dsa.pub
上のようにファイルの一覧にid_dsaファイルがなければ削除されています。これでまた少しサーバのセキュリティが高まりました。
パスワード認証の禁止
せっかく秘密鍵、公開鍵を使用したパスフレーズ認証の設定をしたのだから、いっそのことパスワード認証は禁止してしまいます。
パスワード認証を禁止してしまえば、秘密鍵をもったユーザしかログインできなくなるわけです。そして今のところ秘密鍵をもっているのは自分(ユーザ名:hoge)だけ。ということは今後ユーザをいくら増やしても自分がそのユーザにSSH接続を許可しない限り、他のユーザからログインされることはないはずです。
パスワード認証を禁止するためにはSSHの設定ファイルを編集する必要があります。
SSHの設定ファイルはsshd_configというファイル名で/etc/sshディレクトリの下にあります。編集するにはvi命令を実行します。
すると次ページのような情報が表示されるはずです。もちろん英語です(´・ω・`) 。
なんかわけのわからん英語がずらずらと書かれていますが、ここで編集する項目はそんなに多くありません。
設定ファイルの中から
#ChallengeResponseAuthentication yes
と、書かれた行を探します。真ん中よりちょっと下のあたりでしょうか。
なんとか探し出せたら、次のように編集します(書きかえた箇所は強調表示にしてあります。あと先頭の"#"を消してコメントを有効にするのをお忘れなく)。
ChallengeResponseAuthentication no
lennyでは以下の設定も必要です。
変更したら設定ファイルを保存します。
変更した設定を有効にするために、SSHを再起動します。
ところでWindowsで「再起動」といえば本当に電源を落としたりしてしまいますが(しかも再起動に時間がかかる)、Linuxも同じようにシャットダウンする必要があるのかというとそうではありません。
Linuxの場合は以下の命令を実行すれば、システムは起動したまま必要なソフトだけ(下の例はSSHの場合)再起動させることができます。これは便利。
ためしにパスワード認証でログインしようとすると、login as:でユーザ名を入力した瞬間にPuTTYが落ちます。これでまた一つサーバのセキュリティが高まりました。
SSH2限定で接続
SSHの通信方式にはプロトコル1とプロトコル2(SSH2)の2種類があり、プロトコル2の方がセキュリティが高いらしいです(←よく知らない)。
これまでの接続でプロトコル2(SSH2)で接続していると思っていたのですが、本当にプロトコル2で接続されているのか確認してみます。
プロトコル2で接続されているかどうかは、SSHの設定ファイル(/etc/ssh/sshd_config)に書いてあります。確かめるにはgrep命令を使えば手っ取り早く確認できます。
上のコマンドはsshd_configファイルの中から"Protocol"と書かれた行をピックアップして表示するというものです。
上の命令を実行して下のように"Protocol 2"と表示されれば、プロトコル2(SSH2)で接続されています。
Protocol 2
もし違うように表示された場合は、vi命令でSSH設定ファイル(/etc/ssh/sshd_config)を編集して、"Protocol"と書かれた行を"Protocol 2"に修正します。
変更後は#/etc/init.d/ssh reloadでSSHの再起動をお忘れなく。
役に立つサイト
この記事を書くにあたり、以下のサイトを参考にさせて頂きました。この場を借りてお礼申し上げます。
- @IT:Windowsからssh 2でLinuxにログインするには
- PuTTYの入手先や、SSH接続の基本的なことが判りやすく書かれています。
- sshセキュリティ強化 | debian.co.jp
- セキュリティを高める手法などは、ほとんどここのインスパイアという噂も……
- PuTTYでssh2プロトコルを使ってssh接続
- PuTTYの設定など参考にしました。鍵の作成方法はこことは異なりWindows側で作成します。