ホームページ >運用・保守 >Linuxの運用と保守 >LinuxでSSHのバージョンを確認する方法

LinuxでSSHのバージョンを確認する方法

青灯夜游
青灯夜游オリジナル
2023-02-15 11:28:336862ブラウズ

確認方法: 1. テキストエディタで「/etc/ssh/sshd_config」を開き、「プロトコル」欄を確認し、「プロトコル 2」と表示されていれば、サーバーは SSH2 のみをサポートしています。 「プロトコル 1」と表示される サーバーが両方を同時にサポートしていることを意味します。 2. ssh に特定の SSH プロトコルの使用を強制し、SSH サーバーの応答を確認して判断します。 3. 「sudo scanssh -s ssh ip address」という構文で scanssh ツールを使用します。

LinuxでSSHのバージョンを確認する方法

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Secure Shell (SSH) を使用すると、暗号化された安全な通信チャネルを介してリモート ログインまたはコマンドのリモート実行が可能になります。 SSH は、telnet、rsh、rlogin などの安全でないプレーンテキスト プロトコルを置き換えるように設計されています。 SSH は、認証、暗号化、データの整合性、認可、転送/トンネリングなど、多くの必要な機能を提供します。

SSH には 2 つのバージョン 1 と 2 (SSH1 と SSH2) が存在します。これら 2 つの違いは何ですか? Linux で SSH プロトコルのバージョンを確認するにはどうすればよいですか?

SSH1 と SSH2

SSH プロトコル仕様にはマイナーなバージョンの違いがいくつかありますが、主なメジャー バージョンは 2 つあります。 SSH1 (バージョン 1.XX) および SSH2 (バージョン 2.00)。

実際、SSH1 と SSH2 はまったく異なる 2 つのプロトコルであり、互換性がありません。 SSH2 は、SSH1 の多くの側面を大幅に改善します。まず、SSH はマクロ設計です。複数の異なる機能 (認証、送信、接続など) が 1 つのプロトコルにパッケージ化されています。SSH2 は、MAC ベースの整合性チェック、柔軟なセッション キーの更新など、SSH1 よりも強力なセキュリティ機能をもたらします。 、完全にネゴシエートされた暗号化アルゴリズム、公開キー証明書など。

SSH2 は IETF によって標準化されており、その実装は業界で広く導入され、受け入れられています。 SSH2 の人気と SSH1 に対する暗号化の利点により、多くの製品が SSH1 のサポートを終了しました。この記事の執筆時点では、OpenSSH はまだ SSH1 と SSH2 をサポートしていますが、最新のすべての Linux ディストリビューションでは、OpenSSH サーバーはデフォルトで SSH1 を無効にしています。

Linux の SSH バージョンの確認

方法 1

ローカルの OpenSSH サーバーを確認する場合SSH プロトコルのバージョンについては、/etc/ssh/sshd_config ファイルを参照してください。テキストエディタで /etc/ssh/sshd_config を開き、「プロトコル」フィールドを確認します。

次のように表示された場合、サーバーは SSH2 のみをサポートしていることを意味します。

Protocol 2

次のように表示されている場合は、サーバーが SSH1 と SSH2 の両方をサポートしていることを意味します。

Protocol 1

方法 2

OpenSSH サービスがリモート サーバーで実行されているために /etc/ssh/sshd_config にアクセスできない場合。 ssh と呼ばれる SSH クライアントを使用して、サポートされているプロトコルを確認できます。具体的には、ssh に特定の SSH プロトコルの使用を強制し、SSH サーバーの応答をチェックします。

次のコマンドは、ssh に SSH1 の使用を強制します:

ssh -1 user@remote_server

次のコマンドは、ssh に SSH2 の使用を強制します:

ssh -2 user@remote_server

リモート SSH サーバーが SSH2 のみをサポートしている場合は、最初の「 -1」オプションを使用すると、次のようなエラー メッセージが表示されます。

Protocol major versions differ: 1 vs. 2

SSH サーバーが SSH1 と SSH2 の両方をサポートしている場合、両方のコマンドが有効です。

方法 3

バージョンを確認するもう 1 つの方法は、scanssh という SSH スキャン ツールを実行することです。このコマンド ライン ツールは、IP アドレスのグループまたはローカル ネットワーク全体をチェックして SSH1 互換の SSH サーバーをアップグレードする場合に便利です。

以下は、基本的な SSH バージョンのスキャン構文です。

sudo scanssh -s ssh -n [ports] [IP addresses or CIDR prefix]

「-n」オプションでは、スキャンする SSH ポートを指定できます。 Duhao 分離を使用して複数のポートをスキャンできます。このオプションを使用しない場合、scanssh はデフォルトでポート 22 をスキャンします。

次のコマンドを使用して、192.168.1.0/24 ローカル ネットワーク内の SSH サーバーを検出し、SSH プロトコルのバージョンを確認します:

sudo scan -s ssh 192.168.1.0/24

LinuxでSSHのバージョンを確認する方法

If scanssh特定の IP アドレスが「SSH-1.XX-XXXX」を報告することは、関連付けられた SSH サーバーでサポートされる最小バージョンが SSH1 であることを意味します。リモート サーバーが SSH2 のみをサポートする場合、scanssh は「SSH-2.0-XXXX」と表示します。

関連する推奨事項: 「Linux ビデオ チュートリアル

以上がLinuxでSSHのバージョンを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。