SSH接続まとめ
SSH についてまとめました。
この記事は以下の構成になっています。
SSH とは
SSH とは、Secure Shell の略で、ネットワークを通じて他のコンピュータに安全に接続するための仕組み。
主にサーバーに対して遠隔操作を行う時に使われる。
SSH の前は telnet というコマンドが使われていたが、telnet はやりとりする情報をそのまま送信するのに対して、SSH は暗号化して送信するのでより安全である。
SSH で接続する流れ
SSH で接続するには以下の流れを行う。
- ターミナルで ssh コマンドを実行する
- 認証情報を入力する
- リモートサーバーへのアクセスが開始される
1. ターミナルで ssh コマンドを実行する
SSH で接続するには、以下のようにターミナルで ssh コマンドを実行する。
ssh ユーザー名@サーバーアドレス
2. 認証情報を入力する
接続先がパスワード認証の場合、リモートサーバーのユーザーアカウントのパスワードを求められるので、パスワードの入力を行う。
公開鍵認証の場合は、事前に設定した秘密鍵ファイルで認証が行われる。
認証については「SSH の認証方法」で後述。
3. リモートサーバーへのアクセスが開始される
認証が成功すると、リモートサーバーに接続され、コマンドを実行できる状態になる。具体的にはリモートサーバーのシェルにアクセスできる状態である。
SSH 接続を通して、ファイルの編集やシステムの管理などを行うことができる。
SSH の認証方法
SSH での認証方法は主にパスワードと公開鍵・秘密鍵の 2 つの方法がある。
パスワード認証
パスワード認証はその名の通り、パスワードで認証を行う方法。
先ほどの「SSH で接続する流れ」はパスワード認証にあたる。
ただしパスワードはブルートフォース攻撃や盗聴のリスクがあり、セキュリティ的によくない方法なので、公開鍵認証が推奨される。
公開鍵認証
公開鍵認証は公開鍵と秘密鍵のペアを使って認証を行う方法で、パスワードより安全である。
サーバーに公開鍵を登録し、接続時にローカルに保存された秘密鍵を使って認証する仕組み。
SSH 接続だけでなく、SSL/TLS や VPN などでも使われる。
公開鍵認証で SSH 接続する方法はこちらの記事で解説。