SSH3: HTTP/3 を使う、より高速で高機能なセキュアシェル
- SSH3 の概要: SSH3 は SSH プロトコルを全面的に見直し、その意味論を HTTP のメカニズム上にマッピングしたもの。SSH3 は安全なチャネル確立のために QUIC+TLS1.3 を使用し、ユーザー認証には HTTP の認証メカニズムを活用する。
SSH3 はより高速
- セッション確立速度: SSH3 は SSHv2 と比べてセッション確立がはるかに速い。SSHv2 は 5〜7 回のネットワーク往復時間を必要とするが、SSH3 はわずか 3 回の往復時間で済む。
SSH3 は安全
- セキュリティメカニズム: SSH3 は TLS 1.3、QUIC、HTTP のような強力で長年にわたり検証されてきたメカニズムに依存している。これらのプロトコルは、すでにインターネット上のセキュリティが重要なアプリケーションで広く利用されている。
SSH3 の公開サーバーは隠せる
- サーバーの隠蔽: SSH3 サーバーは秘密のリンクの背後に隠されており、特定のリンクへ HTTP リクエストを行った認証試行にのみ応答する。これにより、インターネット利用者から SSH3 サーバーを 見えない状態 にできる。
SSH3 はすでに高機能
- 新機能: UDP ポートフォワーディング、X.509 証明書の使用、サーバーの隠蔽、鍵不要のユーザー認証(OpenID Connect)などが可能。
- OpenSSH 機能の実装:
~/.ssh/authorized_keys の解析、~/.ssh/config の解析、証明書ベースのサーバー認証、known_hosts メカニズム、ssh-agent の自動使用、SSH エージェントフォワーディング、TCP ポートフォワーディングなど、OpenSSH の人気機能を実装している。
SSH3 をインストールする
- ソースからコンパイル: 最新の Golang バージョンが必要で、ソースコードをダウンロードしてバイナリをコンパイルする手順を踏む。
- SSH3 サーバーのデプロイ: SSH3 サーバーをホストにデプロイする必要があり、X.509 証明書と秘密鍵が必要。
ssh3-server 実行ファイルの使い方も提供されている。
- SSH3 クライアントの使用: SSH3 サーバーが起動したら、SSH3 クライアントを使って接続できる。
ssh3 実行ファイルの使い方も提供されている。
GN⁺の意見
- 重要性: SSH3 は従来の SSH プロトコルと比べて、より高速なセッション確立と強化されたセキュリティを提供する。特に HTTP/3 ベースの新しい認証方式とサーバー隠蔽機能は、セキュリティ面で大きな利点がある。
- 興味深さ: 既存の SSH ユーザーにとっては、OpenSSH の人気機能をそのまま使える点が魅力的。また、UDP ポートフォワーディングのような新機能は、ネットワーク管理者やユーザーに新たな可能性を開く。
- 面白さ: SSH3 の実験的な性質と新機能は、IT 専門家に新しいツールを探索し実験する楽しさを提供する。OpenID Connect による鍵不要の認証方式は、ユーザー体験を革新的に変える可能性を持つ。
1件のコメント
Hacker Newsの意見
このような多様な意見は、SSH over QUICという概念について興味深い議論を提供しており、技術的な長所と短所、そしてセキュリティ面での考慮事項を扱っている。