XNUMXか月の開発期間を経て
主な変更点:
- セキュリティの変更:
- ssh-agent では、SSH 認証用に作成されていない FIDO キー (キー ID が文字列「ssh:」で始まらない) を使用する場合、SSH プロトコルで使用されるメソッドを使用してメッセージが署名されるかどうかをチェックするようになりました。 この変更により、FIDO キーを使用して Web 認証リクエストの署名を生成する機能をブロックする FIDO キーを持つリモート ホストに ssh-agent をリダイレクトすることはできなくなります (ブラウザが SSH リクエストに署名できる場合の逆のケースは、最初は除外されます)キー識別子に「ssh:」プレフィックスが使用されているため)。
- ssh-keygen の常駐キー生成には、FIDO 2.1 仕様で説明されている credProtect アドオンのサポートが含まれています。このアドオンは、トークンから常駐キーを抽出する可能性のある操作を実行する前に PIN を要求することで、キーの追加の保護を提供します。
- 互換性を破壊する可能性のある変更:
- FIDO/U2F をサポートするには、libfido2 ライブラリのバージョン 1.5.0 以上を使用することをお勧めします。 旧エディションの利用機能は一部実装されていますが、その場合、常駐キー、PINリクエスト、複数トークンの接続などの機能は利用できなくなります。
- ssh-keygen では、デジタル署名の確認を検証するために必要な認証データが確認情報の形式に追加されており、FIDO キーの生成時にオプションで保存されます。
- OpenSSH が FIDO トークンにアクセスするためにレイヤーと対話するときに使用される API が変更されました。
- OpenSSH のポータブル バージョンをビルドする場合、configure スクリプトと付随するビルド ファイルを生成するために automake が必要になりました (公開されたコード tar ファイルからビルドする場合、configure を再生成する必要はありません)。
- ssh および ssh-keygen で PIN 検証を必要とする FIDO キーのサポートが追加されました。 PIN を使用してキーを生成するために、「verify-required」オプションが ssh-keygen に追加されました。 このようなキーを使用する場合、署名作成操作を実行する前に、ユーザーは PIN コードを入力してアクションを確認するように求められます。
- sshd では、authorized_keys 設定に「verify-required」オプションが実装されており、トークンを使用した操作中にユーザーの存在を確認する機能の使用が必要になります。 FIDO 標準では、このような検証のためのオプションがいくつか提供されていますが、現在 OpenSSH は PIN ベースの検証のみをサポートしています。
- sshd と ssh-keygen には、FIDO Webauthn 標準に準拠するデジタル署名を検証するためのサポートが追加されました。これにより、FIDO キーを Web ブラウザで使用できるようになります。
- SSH の CertificateFile 設定で、
ControlPath、IdentityAgent、IdentityFile、LocalForward、および
RemoteForward では、「${ENV}」の形式で指定された環境変数の値を置き換えることができます。 - ssh および ssh-agent には、ssh-askpass 呼び出しを有効または無効にするために使用できる $SSH_ASKPASS_REQUIRE 環境変数のサポートが追加されました。
- ssh の AddKeysToAgent ディレクティブの ssh_config に、キーの有効期間を制限する機能が追加されました。 指定された制限が期限切れになると、キーは ssh-agent から自動的に削除されます。
- scp および sftp では、「-A」フラグを使用して、ssh-agent を使用した scp および sftp へのリダイレクトを明示的に許可できるようになりました (リダイレクトはデフォルトで無効になっています)。
- ホストキー名を指定する ssh 設定での「%k」置換のサポートが追加されました。 この機能を使用すると、キーを別のファイルに配布できます (たとえば、「UserKnownHostsFile ~/.ssh/known_hosts.d/%k」)。
- 「ssh-add -d -」操作を使用して、削除するキーを標準入力から読み取ることができるようにします。
- sshd では、接続プルーニング プロセスの開始と終了がログに反映され、MaxStartups パラメーターを使用して制御されます。
OpenSSH 開発者はまた、次の理由により、SHA-1 ハッシュを使用するアルゴリズムが今後廃止されることを思い出しました。
OpenSSH の新しいアルゴリズムへの移行をスムーズにするために、次のリリースでは UpdateHostKeys 設定がデフォルトで有効になり、クライアントがより信頼性の高いアルゴリズムに自動的に移行されます。 移行に推奨されるアルゴリズムには、RFC2 RSA SHA-256 に基づく rsa-sha512-8332/2 (OpenSSH 7.2 以降サポートされ、デフォルトで使用される)、ssh-ed25519 (OpenSSH 6.5 以降サポート)、および ecdsa-sha2-nistp256/384/521 ベースが含まれます。 RFC5656 ECDSA (OpenSSH 5.7 以降でサポート)。
出所: オープンネット.ru