ホーム テクノロジー セキュリティ SSH とは何ですか?またその仕組みは何ですか?

SSH とは何ですか?またその仕組みは何ですか?


SSH は、ネットワーク内のリモート コンピュータにアクセスするための安全なネットワーク プロトコルです。

コンピュータはネットワークを通じて相互に通信します。したがって、ネットワーク研究者は、他のマシンと通信するための一連のルールを定義し、Telnet などのプロトコルの開発を開始しました。これを使用すると、あるユーザーが別のコンピューターを制御できるようになります。

しかし、それらは安全ではありません。つまり、ネットワークの真ん中にいる人は誰でも、転送されているデータを傍受して読み取ることができます。 90 年代半ばに、Telnet プロトコルの信頼できる後継として、 sshというより安全なプロトコルが導入されました。

セキュアシェル + SSH とは何ですか?またその仕組みは何ですか?
セキュアシェル +  SSH とは何ですか?またその仕組みは何ですか? +  SSH とは何ですか?またその仕組みは何ですか?
セキュアシェル + SSH とは何ですか?またその仕組みは何ですか? + SSH とは何ですか?またその仕組みは何ですか?

業界で働いているソフトウェア開発者またはシステム管理者であれば、少なくとも 1 回は ssh を使用したことがあるかもしれません。知っておくべき必須スキルの 1 つであるため、まだ学習していない場合は、今すぐ学習しましょう。

SSHとは何ですか?

SSHSecure Shell 、またはSecure Socket Shell は、リモート マシン (主にリモート サーバー) に安全にアクセスして通信するのに役立つネットワーク プロトコルです。

強力な暗号化を提供し、リモート システムとアプリケーションの管理、コマンドの実行、ファイルの共有などのためにネットワーク管理者や開発者によって広く使用されています。

SSHの必要性

SSH は、 rloginrshTelnetなどの安全でないリモート アクセス プロトコルが直面するセキュリティ問題を解決するために 1995 年に作成されました。

次に、1969 年に開発されたTeletype Network の略である Telnet について話しましょう。これは、リモート サーバー (地球上のどこにでも) にアクセスするためにコンピュータ上で実行される単純なコマンド ライン ツールです。そして、あたかもリモート サーバーの直前 (サーバーから数マイル離れた場所でも) に座っているかのように、そのサーバー上で実行されるコマンドを送信します。 Telnet は、ネットワーク上でメッセージを平文で送受信します

実行するコマンドは、プログラムの実行、ディレクトリの作成、ファイルの作成/削除/転送、サービスの開始/停止などです。

ネットワーク内の別のマシンに接続する場合の問題は、送信されるデータが多くのネットワークを通過することです。それまでの間、その一部は安全ではない可能性があり、送信データが傍受され、目的のターゲット マシンに到達する前に変更される可能性があります。

暗号化通信 + SSH とは何ですか?またその仕組みは何ですか?
暗号化通信 +  SSH とは何ですか?またその仕組みは何ですか? +  SSH とは何ですか?またその仕組みは何ですか?
暗号化通信 + SSH とは何ですか?またその仕組みは何ですか? + SSH とは何ですか?またその仕組みは何ですか?

セキュリティがそれほど重要ではなかった初期の頃は、すべての通信はプレーン テキストで行われていました。したがって、クライアントとサーバーの間でインターネット上で送信されるデータは簡単に傍受される可能性があります。また、メッセージは暗号化されていないため、読み取られる可能性があります。

したがって、平文プロトコルは非常に安全でなく、パスワードや秘密などの機密データの送信には決して使用されません。そのため、SSH は従来のリモート アクセス ネットワーク プロトコルの安全な代替手段と考えられています。

どのように機能するのでしょうか?

SSH は、クライアント/サーバー アーキテクチャを使用して、ssh クライアントを ssh サーバーに接続することにより、ネットワーク上で安全な通信を実現します。デフォルトでは、ssh サーバーは標準の TCP ポート 22 をリッスンします (セキュリティを強化するためにこれを変更できます)。

公開キー暗号化技術を使用して、クライアントとサーバー間の認証を行います。さらに、このプロトコルは、クライアントとサーバー間のメッセージ交換に強力な対称暗号化およびハッシュ アルゴリズムを使用して、プライバシーとデータの整合性を確保します。

SSH暗号化通信 + SSH とは何ですか?またその仕組みは何ですか?
SSH暗号化通信 +  SSH とは何ですか?またその仕組みは何ですか? +  SSH とは何ですか?またその仕組みは何ですか?
SSH暗号化通信 + SSH とは何ですか?またその仕組みは何ですか? + SSH とは何ですか?またその仕組みは何ですか?

Linux は、そのセキュリティ耐久性により、リモート サーバーに広く使用されているオペレーティング システムです。インターネット上で Linux オペレーティング システムを使用するサーバーの多くは、何年もの間、多くの障害や再起動をすることなく稼働しています。

ほとんどの SSH セッション (リモート サーバーにアクセスする期間) では、次の 2 つの操作のみが行われます。

  • 認証
  • コマンドの実行

SSH サーバーは、さまざまな方法を使用してクライアントを認証できます。

一般的な方法は次の 2 つです。

  • パスワードベース
  • キーベース

パスワードベースの認証は、 OpenSSH がインストールされているクライアントの認証に使用されるデフォルトの方法です。これは最も基本的な ssh 認証ですが、最も安全な認証ではありません。

パスワードがサーバーに安全に送信されても​​、最新のブルート フォース攻撃によって認証が回避される可能性があります。

キーベースの認証は、信頼性が高く安全な代替手段である SSH キー ペアを生成することにより、システムのセキュリティをさらに向上させます。

サーバーがクライアントを正常に認証すると、クライアント間に安全な接続が確立されます。

SSHを使用したリモートサーバーへのアクセス

Mac/Linux ユーザーの場合は、OpenSSH がデフォルトですでにインストールされているため、ターミナルを使用して ssh コマンドを直接入力して実行できます。

Windows ユーザーの場合、ssh コマンドを実行するには、サードパーティのターミナル エミュレータ クライアントを 1 つインストールする必要があります。 PuTTY は、Windows オペレーティング システム用の最も人気のある ssh クライアントです。

SSH を使用してリモート サーバーに接続するには、少なくとも 2 つのことを知っておく必要があります。

  • サーバーホスト
  • ユーザー名

基本的な ssh コマンドの構文は次のとおりです。

 $ ssh <user-name> @ <host> -p <port-no>

user-name は接続しようとしているリモート マシンのユーザー名 (ローカル マシン上のユーザーではありません) で、ホストは IP アドレスまたはドメイン名のいずれかです。

OverTheWire Web サイトを使用してリモート サーバーに接続する例を見てみましょう。無料のウォーゲーム チャレンジ Web サイトです。

それでは、ssh を使用してバンディットチャレンジに接続してみましょう。これは、SSH を使用してログインする方法を教える Web サイトで利用可能なチャレンジの 1 つです。

資格:

ユーザー名とパスワード: bandit0
ホストとポート: Bandit.labs.overthewire.org 、2220

次のコマンドを入力して Enter キーを押すと、次のようになります。

 $ ssh bandit0@bandit.labs.overthewire.org -p 2220

認証のためにパスワードの入力を求められます。次に、パスワードを入力して Enter キーを押します。

SSH ログインの例 + SSH とは何ですか?またその仕組みは何ですか?
SSH ログインの例 +  SSH とは何ですか?またその仕組みは何ですか? +  SSH とは何ですか?またその仕組みは何ですか?
SSH ログインの例 + SSH とは何ですか?またその仕組みは何ですか? + SSH とは何ですか?またその仕組みは何ですか?

入力したパスワードが正しければ、リモート サーバーに正常にログインでき、ターミナルは上の画像のようになります。

これで、リモート マシンのターミナルを使用してコマンドを入力して実行し、必要な操作を実行できるようになります。

SSH セッションを終了する場合は、 exitコマンドを入力します。

 $ exit 

SSHセッションの終了 + SSH とは何ですか?またその仕組みは何ですか?
SSHセッションの終了 +  SSH とは何ですか?またその仕組みは何ですか? +  SSH とは何ですか?またその仕組みは何ですか?
SSHセッションの終了 + SSH とは何ですか?またその仕組みは何ですか? + SSH とは何ですか?またその仕組みは何ですか?

SSH セッションから正常にログアウトすると、 接続が閉じられました」というメッセージが表示されます。

結論

SSH の人気の背後にある主な理由は、サーバーとクライアント間の通信全体が暗号化されることです。

ほとんどの人は、ssh の使用は複雑であり、その仕組みについての知識を得るのは簡単ではないと考えていますが、思っているよりも簡単です。これで、SSH の基本的な動作、その背後にあるセキュリティの側面、および SSH が通信において重要な役割を果たす理由が理解できました。

次に、システム管理者になるためのリソースをいくつか調べてください。

「 SSH とは何ですか?またその仕組みは何ですか?」についてわかりやすく解説!絶対に観るべきベスト2動画

SSH 公開鍵認証とは何か?【聞いて覚えるプログラミングシリーズ #13】
SSH接続とは何か?簡単に説明します【テックアイエス漫画】