5.2. セキュアシェルsshのしくみ/How the secure shell works

ssh(secure shell)は、暗号化された通信路を経由してリモートマシンに ログインして、リモートマシン上のシェルを操作するための通信プログラムです。

多くのスーパーコンピューターは、操作するためにsshが必要になります。

Ssh (secure shell) is a communication program through which you can send commands to the shell on a remote computer, through an encrypted communication channel.

Many supercomputers require the use of ssh to operate.

ユーザは手元のローカルマシン上で、リモートマシンを指定してsshコマンドを起動します。 sshコマンドは暗号化された通信のクライアントプログラムです。 sshコマンドは指定されたリモートマシン上の sshサーバープログラムと通信をします。 sshサーバープログラムは、接続してきたユーザを認証した上で、ユーザのために シェルプログラムを起動します。ユーザーがローカルマシン上でタイプした内容は リモートマシン上の シェル に送られ、そこでコマンドとして実行されます (Fig.1)。

The user invokes the ssh command at the local machine, specifying the remote machine. The ssh command is a client program for encrypted communication. The ssh command will communicate with the ssh server program on the remote machine. The ssh server program will first authenticate the client program that contacted the server, then starts a shell program for the client. The key strokes that the user types on the local machine will be sent to the shell program on the remote machine, and it will be executed as a command (Fig. 1).

../../_images/ssh-communication.png

Fig.1 ssh communication

sshの使い方を理解する上で、仕組みをあるていど分かっている必要があるので、 仕組みについて簡単に説明します。初めに暗号アルゴリズムによって得られる 機能を紹介し、そのあとでsshにおいてそれらがどのように組み合わされている のかを説明します。

In order to learn how to use ssh, it helps to understand how it works, at a brief level. So we will quickly explain. At first, functionalities of encryption algorithms are introduced, and after that, how ssh combines those functionailities are explained.

sshの通信では、共通鍵暗号と公開鍵暗号と呼ばれる種類の暗号が使われます。 暗号アルゴリズムは、通信路の暗号化に使われることに加えて、サーバの認証、 ログインしようとするユーザの認証に使われます。

Ssh uses what is called symmetric key cryptography and public key cryptography. Cryptographic algorithms are used for several purposes; encryption of the communication channel, authentication of the server, and authentication of the client.

5.2.1. sshの通信開始に至る手順

sshの通信開始に至る手順についての記述を現在見直し中です。