
サーバーと契約する時によく見かけるSSH通信
この記事では、
・SSHとはなんなのか
・SSHの仕組みについて
・どんなメリットがあるのか
簡単に解説していきたいと思います。
SSHとはなんなのか
SSHとは「Secure Shell」の略で、ネットワークを経由して他のコンピュータ(サーバー)に接続し遠隔操作するための仕組みで、
最大のポイントはその名の通り安全(secure)に通信を行う暗号化方式の一つです。
どのように安全なのかというと、
コマンドを実行したり、他のコンピューターにファイル転送したりする為のプログラムの通信内容が暗号化されることで、
通信の機密が保たれ安全性を高めます。
これにより、
メールアドレスやパスワードをユーザーが入力する際、第三者が盗聴することができないということになります。
サイトのURLの頭にhttp「s」がついているサイトは安全と言えるでしょう。(大抵は鍵のアイコンがURL頭にあります)
SSHの仕組み
離れた場所にあるサーバーへ安全に接続するため、SSHは複雑にできています。
さらに、サーバーへのログインが適正かどうかチェックする認証方法は、複数用意されおり
代表的なものには「パスワード認証方式」と「公開鍵認証方式」の2つあります。
SSHの設定方法により選択可能となっています。
パスワード認証方式
サーバーのユーザーアカウントに設定しているものです。
方式としては手軽ですが他の認証方法としては危険です。
このパスワードが流失してしまうと、
悪意をもった第三者からサーバーにログインされてしまう可能性があるからです。
公開認証方式
初期設定作業が大変ですが、通信の安全性はとても高い方式です。方法はいくつかありますが、
「鍵」と呼ばれるファイルをしっかり保管さえすれば、「鍵」のないユーザーからのログインは原則できません。
これにより、悪意をもった第三者からの不正なログインを防ぐことができます。
SSHサーバー上での動きは複雑でわかりづらいですが、流れのポイントは、以下のようにまとめることができると思います。
事前の準備(初回のみ、サーバー管理者が実施)
1、「鍵」作成
2、サーバーとクライアントで必要な「鍵」をそれぞれ保管
通常の利用(ログイン作業)
1、SSHクライアントを操作し、SSHサーバーにログインしたい意思を伝える
2、相互に「鍵」を照合し、正しいか確認
3、通信の暗号化などの手続き(暗号化や復号化、それらをするための情報のやりとり)
4、暗号化された通信が開始
SSHのメリット
1、安全な通信が行えること
2、サーバー上でファイルの操作を行うことができる
2はUNIXの知識・操作するコマンド・アプリケーションの知識
が、必要となり上級者向けのサービスとなります。
もちろんFTP通信でも問題なくファイルのダウンロードなどが行えますが、
SSHでは、FTPの10分の1の速さで行えると言われています。
そのため大量のファイルのアップロード・ファイルロードの時間短縮をすることができます。
さらに、サーバー上で直接ファイル(HTMLファイル等)を編集することが可能なので、
FTPで一端ローカルにダウンロードして保存、
編集後、再度アップロードするなどの手間がはぶけます。
もちろん最大のメリットは、
暗号化による通信ですので、
通信を盗聴される危険性を回避して、安全に操作することができます。