SSHプロトコル
2001.10.25
鬼塚
SSHとは
ssh (Secure Shell) はネットワークを介してコン
ピュータにログインするプログラムで、遠隔地の
マシンでコマンドを実行したり他のマシンへファイ
ルを移したりするために使われる。
ssh は強力な認証と安全ではない経路を通じて
の安全な通信を提供する。
ssh rlogin(リモートログイン), rsh(リモートシェ
), そして rcp(リモートファイルコピー) の代わる
ものとして意図されている。
SSHを使用する理由
昔からあるBSDの「‘r -コマンド」(rsh, rlogin, rcp)は何種
類もの異なる攻撃に対して無防備で、ネットワークを介し
てマシンに root でアクセスすることは、システムへの多数
の方法での無権限アクセスを招くおそれがある。
X Window System もまた幾つかの深刻な脆弱さを抱え
いるが、 ssh によって、安全な遠隔地からのX接続をユー
ザーには透明なままで実現できる。
初期接続後のセッションで、クライアントは初期接続のとき
と同じサーバーに接続していることを確認できる。
クライアントは、サーバーに対し、ユーザー名やパスワード
などの認証情報を暗号化形式で転送できる。
接続時に送受信したデータはすべて強力な暗号化を用い
て転送されるので、解読は非常に難しくなる。
クライアントは、シェルプロンプトから起動したX11アプリ
ケーションを使用することができる。この方法では、安全な
グラフィカルインターフェイスが提供される。
SSHでは、次の保護手段が取られている
SSHにはいくつかのクライアント認証方式が
あります。
ホストベースのRSA認証
ユーザーベースのRSA認証
パスワード認証
パスワード認証
---ユーザ名とパスワードを提示し、ユーザとして認証されれ
ばサーバにログインできる。このとき、トランスポート層プ
ロトコルを用いてすでに通信路を暗号化しているので、
ネットワーク上をパスワードがそのまま流れるわけではな
い。
ホストベース認証
---.rhostファイルや/etc/hosts.equivファイルに、クライアントの
ホスト名が記載されている場合、パスワードなどの認証を
経ずにログインできる仕組み