SSHとは「Security Shell」の略称で、リモートでサーバーなどの別のコンピューターを操作する為に使われる通信プロトコルです、
SSHの通信はすべて暗号化されています。一方、同様にリモートコンピュータと通信するプロトコルでTelnetがありますが、こちらは通信が暗号化されていません。
SSHの認証方式は主に「パスワード認証方式」と「公開鍵認証方式」があります。
「公開鍵認証方式」は「公開鍵」と「秘密鍵」を照合して認証を行います。
具体的には、「公開鍵」「秘密鍵」を作成し(実際はファイル)、「公開鍵」をサーバー側、「秘密鍵」をサーバーにログインしたいクライアント側に置き、照合することで認証を行う仕組みです。
パスワード認証より、比較的安全性が高いとされています。
例えば、サーバー側でrsa方式のキーペアを作成するコマンドと流れは以下のような感じです。
ssh-keygen -t rsa
上記のコマンドでサーバー内の~/.ssh/ ディレクトリに、id_rsa(=秘密鍵)とid_rsa.pub(=公開鍵)が出来上がるので、秘密鍵の方を何らかの手段でクライアントPC側へ送ります。
ちなみに混乱してしまいがちなのはSSLという言葉。
SSHは前述の通り、リモートでサーバーなどの別コンピューターを操作する為に使われる暗号化されたプロトコルですが、SSLの方は、ざっくり言うとインターネット上でWEBサイトの表示などで使用される暗号化された通信プロトコルです。
どちらも暗号化されたプロトコルという点では変わりません。
以上、SSHを3分で理解する説明でしたー
20代のフリーター向けの就職支援サービス