章 20章. SSHプロトコル

SSH™ (または、Secure SHell) はプロトコルで、クライアント/サーバのアーキテクチャを使用して 2 台のシステム間の安全な通信を容易にし、ユーザーが遠隔からサーバホストシステムにログインできるようにします。FTP や Telnet など他のリモート通信プロトコルと異なり、SSH はログインセッションを暗号化するので、侵入者が暗号化されていないパスワードを入手することができないようにします。

SSHは、telnetrsh などの旧式で低レベル セキュリティのリモートホスト用ログインアプリケーションの 代わりとなるよう設計されています。これに関連した scpと呼ばれるプログラムは、 rcpなどのホスト間でファイルをコピーする設計の旧式プログラム に代わるものです。これらの旧式のアプリケーションはクライアントとサーバ間で送信されるパスワードを暗号化しないので、できるだけこれらの使用は避けてください。リモートシステムにログインする時に安全な手段を使用することは、クライアントシステムとリモートホスト両方のリスクを減少させます。

20.1. SSHの特徴

SSHプロトコルでは、次の保護手段が取られます。

SSHプロトコルは、送受信するすべてを暗号化するため、 他の安全性に欠けるなプロトコルを安全にするために使用されます。ポートフォワーディングと呼ばれる技術を使用することにより、SSH サーバが POP などの安全性に欠けるプロトコルを安全にする経路になり、 全体的なシステムとデータのセキュリティを向上します。

Red Hat Enterprise Linux には、一般的な OpenSSH パッケージ(openssh)の他にも、OpenSSHサーバ (openssh-server)、及びクライアントパッケージ(openssh-clients)も含まれています。 OpenSSHのインストールと活用についての説明は、Red Hat Enterprise Linux システム管理ガイドにあるOpenSSH の章を参照してください。OpenSSH パッケージには OpenSSL パッケージ (openssl) が必要となりますので注意してください。OpenSSLは、いくつかの重要な暗号ライブラリをインストールし、OpenSSH が暗号化した通信を提供できるようにします。

20.1.1. SSHを使用する理由

悪質なコンピュータユーザーは、 あるシステムへアクセスを得るためにネットワークトラフィックの接続破壊や、 傍受、ルート変更などができるさまざまなツールを所持しています。 一般的な表現では、これらの脅威は以下のカテゴリーに分類できます。

  • 2つのシステム間の通信の傍受 — この手口では、侵入者はネットワーク上の通信機構の間のどこかに介在し、 その間を通過する情報をコピーします。 情報を傍受して取り込んだり、その情報を改ざんして本来の受信者に送り付ける可能性があります。

    この攻撃は、パケットスニッファ(一般的なネットワークユーティリティ)を使用してマウントされる可能性があります。

  • 特定ホストの偽装 — これを使用して、侵入者のシステムは通信の本来の受信者として見せかけるように設定されています。成功すれば、ユーザーのシステムは間違った相手と通信していることに気が付きません。

    この攻撃は、DNSポイゾニング(汚染) [2]、 またはIPスプーフィング [3] として知られる技術でマウントされる可能性があります。

どちらの手口でも重要な機密となる可能性のある情報を傍受することができ、その傍受が悪意を持ってなされた場合、 多大な損害となる恐れがあります。

SSHをリモートのシェルログインやファイルコピーに使用すると、これらのセキュリティに対する脅威が大幅に削減できます。SSHのクライアントとサーバは自身の身元を証明するのにデジタル署名を使用するためです。さらに、クライアントとサーバシステム間のすべての通信が暗号化されます。ローカルとリモートのシステムのみが知っている鍵を使用して各パケットが暗号化されるため、通信のどちらかの身元をスプーフ(偽装)しようとしても成功しません。

注記

[1]

X11 とは X11R6.7 windowing display system のことで、 伝統的に X Window System または X と 呼ばれます。 Red Hat Enterprise Linuxには、オープン ソースの X Window Sysmtem である XFree86 が含まれています。

[2]

DNSポイゾニングは、侵入者がDNSサーバをクラックして、クライアントシステムを悪意ある複写偽装したホストにアクセスさせることで発生します。

[3]

IPスプーフィングは、侵入者がネットワーク上で信頼できるホストからであるように偽装したネットワークパケットを送信することにより発生します。