OpenSSH 7.7 がリリースされました

2018/04/03, OpenSSH 7.7 がリリースされました.

バグ修正が中心のリリースです.

# https://www.openssh.com/txt/release-7.7

Potentially-incompatible changes
================================

潜在的に非互換な変更

This release includes a number of changes that may affect existing
configurations:

このリリースは既存の設定に影響するかもしれない変更を若干含んでいる.

 * ssh(1)/sshd(8): Drop compatibility support for some very old SSH
   implementations, including ssh.com <=2.* and OpenSSH <= 3.*. These
   versions were all released in or before 2001 and predate the final
   SSH RFCs. The support in question isn't necessary for RFC-compliant
   SSH implementations.


   ssh(1)/sshd(8): いくつかの非常に古い SSH 実装に対する互換性サポートを
   落す. ssh.com <=2.* や OpenSSH <= .3* を含む.
   これらのバージョンすべて, 2001年以前にリリースされており 最終の
   SSH RFC よりも前のものだ. これらのサポートは, RFC 準拠の
   SSH 実装には必要ない.

Changes since OpenSSH 7.6
=========================

OpenSSH 7.6 からの変更点

This is primarily a bugfix release.

これは主にバグ修正のリリースだ.


New Features
------------

新機能

 * All: Add experimental support for PQC XMSS keys (Extended Hash-
   Based Signatures) based on the algorithm described in
   https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12
   The XMSS signature code is experimental and not compiled in by
   default.

   https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12
   に記述されているアルゴリズムに基づく PQC XMSS 鍵 (拡張ハッシュベース署名)
   の実験的サポートを追加する. XMSS 署名コードは実験的で, デフォルトでは
   コンパイルされない.

 * sshd(8): Add a "rdomain" criteria for the sshd_config Match keyword
   to allow conditional configuration that depends on which routing
   domain a connection was received on (currently supported on OpenBSD
   and Linux).

   sshd(8): sshd_config の Match のキーワードに rdomain  基準を追加する.
   これにより,  (現在 OpenBSD と Linux でサポートされている)
   接続を受けとったルーティングドメインに依存した設定が可能となる

 * sshd_config(5): Add an optional rdomain qualifier to the
   ListenAddress directive to allow listening on different routing
   domains. This is supported only on OpenBSD and Linux at present.

   sshd_config(5): rdomain 識別子を ListenAddress 設定項目に追加する.
   異なるルーティングドメインでの listen を可能にする.
   現在 OpenBSD と Linux でのみサポートされる.

 * sshd_config(5): Add RDomain directive to allow the authenticated
   session to be placed in an explicit routing domain. This is only
   supported on OpenBSD at present.

   sshd_config(5) RDomain 設定項目を追加する. 認証されたセッションを
   明示的なルーティングドメインに配置できる. 現在 OpenBSD でのみ
   サポートされる.

 * sshd(8): Add "expiry-time" option for authorized_keys files to
   allow for expiring keys.

   authorized_keys ファイルのオプションに "expiry-time" を追加する.
   鍵の期限切れを可能にする.

 * ssh(1): Add a BindInterface option to allow binding the outgoing
   connection to an interface's address (basically a more usable
   BindAddress)

   ssh(1): BindInterface オプションを追加する. 外部への接続を bind する
   インタフェースのアドレスを指定できる (基本的により便利な BindAddress
   だ)

 * ssh(1): Expose device allocated for tun/tap forwarding via a new
   %T expansion for LocalCommand. This allows LocalCommand to be used
   to prepare the interface.

   ssh(1): LocalCommand のための 新しい %T 展開により tun/tap
   転送で割り当てられたデバイスをあらわにする. これは LocalCommand
   をそのインタフェイスを準備するのに使うことができる.

 * sshd(8): Expose the device allocated for tun/tap forwarding via a
   new SSH_TUNNEL environment variable. This allows automatic setup of
   the interface and surrounding network configuration automatically on
   the server.

   新しい SSH_TUNNEL 環境変数で tun/tap 転送で割り当てられたデバイスを
   あらわにする. これにより, そのインタフェイスの自動的な設定や
   そのサーバでの自動的な周囲のネットワーク設定が可能となる.

 * ssh(1)/scp(1)/sftp(1): Add URI support to ssh, sftp and scp, e.g.
   ssh://user@host or sftp://user@host/path.  Additional connection
   parameters described in draft-ietf-secsh-scp-sftp-ssh-uri-04 are not
   implemented since the ssh fingerprint format in the draft uses the
   deprecated MD5 hash with no way to specify the any other algorithm.

   ssh(1)/scp(1)/sftp(1): ssh, sftp, scp に URI サポートを追加する.
   例えば: ssh://user@host や sftp://user@host/path.
   draft-ietf-secsh-scp-sftp-ssh-uri-04 に記述されている追加の接続パラメータは
   実装されていない. このドラフトの ssh 指紋形式が廃止予定のMD5ハッシュを
   用いていて他のアルゴリズムを指定する方法がないからだ.

 * ssh-keygen(1): Allow certificate validity intervals that specify
   only a start or stop time (instead of both or neither).

   ssh-keygen(1): 証明書の検証期間で, 開始/終了日時だけを指定できるようにする
   (両方ないし指定しないか ではなく)

 * sftp(1): Allow "cd" and "lcd" commands with no explicit path
   argument. lcd will change to the local user's home directory as
   usual. cd will change to the starting directory for session (because
   the protocol offers no way to obtain the remote user's home
   directory). bz#2760

   sftp(1): 明示的なパス引数のない "cd" と "lcd" コマンドを許可する.
   lcd は例によってローカルユーザのホームディレクトリに変更する.
   cd は セッションでの開始ディレクトリに変更する (プロトコルは
   リモートユーザのホームディレクトリを得る方法を提供していないからだ).

 * sshd(8): When doing a config test with sshd -T, only require the
   attributes that are actually used in Match criteria rather than (an
   incomplete list of) all criteria.

   sshd(8): sshd -T で設定のテストをする際, Match の基準で
   すべての基準(の不完全なリスト)ではなく実際に利用される属性のみを要求する.

Bugfixes
--------

バグ修正

 * ssh(1)/sshd(8): More strictly check signature types during key
   exchange against what was negotiated. Prevents downgrade of RSA
   signatures made with SHA-256/512 to SHA-1.

   ssh(1)/sshd(8): 鍵交換の間により厳密に署名のタイプを交渉されたものか
   どうかチェックする. RSA 署名が SHA-256/512 を用いて
   作られたものから SHA-1 で作られたものにダウングレードするのを防止する.

 * sshd(8): Fix support for client that advertise a protocol version
   of "1.99" (indicating that they are prepared to accept both SSHv1 and
   SSHv2). This was broken in OpenSSH 7.6 during the removal of SSHv1
   support. bz#2810

   sshd(8): クライアントの "1.99" プロトコルバージョンの広告のサポートを修正する
   (SSHv1 と SSHv2 両方を受けつける準備があることを示す) OpenSSH 7.6
   での SSHv1 のサポートの除去により壊れていた. bz#2810

 * ssh(1): Warn when the agent returns a ssh-rsa (SHA1) signature when
   a rsa-sha2-256/512 signature was requested. This condition is possible
   when an old or non-OpenSSH agent is in use. bz#2799

   ssh(1): rsa-sha2-256/512 署名が要求された場合にエージェントが
   ssh-rsa(SHA1) 署名を返したら警告する. 古いエージェントや OpenSSH
   でないエージェントが利用されていると, この条件がありえる. bz#2799

 * ssh-agent(1): Fix regression introduced in 7.6 that caused ssh-agent
   to fatally exit if presented an invalid signature request message.

   無効な署名要求メッセージが提示されると ssh-agent が致命的に終了する
   7.6 で導入された回帰テストの問題を修正する.

 * sshd_config(5): Accept yes/no flag options case-insensitively, as
   has been the case in ssh_config(5) for a long time. bz#2664

   sshd_config(5): yes/no のフラグ設定項目を大文字小文字を区別せず
   受付けるようにする. ssh_config(5) では長い間このようになっているように
   bz#2664

 * ssh(1): Improve error reporting for failures during connection.
   Under some circumstances misleading errors were being shown. bz#2814

   ssh(1): 接続中の失敗に対するエラーレポートを改善する. いくつかの
   状況下で, 誤解を招くエラーが表示されていた. bz#2814

 * ssh-keyscan(1): Add -D option to allow printing of results directly
   in SSHFP format. bz#2821

   ssh-keyscan(1): SSHFP 形式で直接結果を表示する -D
   オプションを追加する.

 * regress tests: fix PuTTY interop test broken in last release's SSHv1
   removal. bz#2823

   回帰テスト: 前のリリースの SSHv1 の除去で壊れた PuTTY
   相互運用性テストを修正する.

 * ssh(1): Compatibility fix for some servers that erroneously drop the
   connection when the IUTF8 (RFC8160) option is sent.

   ssh(1): IUTF8(RFC8160) オプションが送られた場合に誤って接続を落とす
   いくつかのサーバに対する互換性の修正

 * scp(1): Disable RemoteCommand and RequestTTY in the ssh session
   started by scp (sftp was already doing this.)

   scp(1): (sftp ではすでにそうしているように) scp で開始された ssh
   セッションでは RemoteCommand と RequestTTY を無効にする.

 * ssh-keygen(1): Refuse to create a certificate with an unusable
   number of principals.

   ssh-keygen(1): 利用できない数のプリンシパルを持つ証明書の作成を
   拒否する.

 * ssh-keygen(1): Fatally exit if ssh-keygen is unable to write all the
   public key during key generation. Previously it would silently
   ignore errors writing the comment and terminating newline.

   ssh-keygen(1): ssh-keygen が 鍵生成時にすべての公開鍵を保存できなければ
   致命的に終了する. 以前は, コメントを書く場合と改行で終端する場合に
   エラーを静かに無視していた.

 * ssh(1): Do not modify hostname arguments that are addresses by
   automatically forcing them to lower-case. Instead canonicalise them
   to resolve ambiguities (e.g. ::0001 => ::1) before they are matched
   against known_hosts. bz#2763

   ssh(1): ホスト名引数はIPアドレスの場合には自動的に小文字化するが,
   そうでなければ変更しない. かわりに, known_hosts にマッチさせる前に,
   あいまいさを解決するため(例えば ::0001 => ::1) ホスト名引数を正規化する.

 * ssh(1): Don't accept junk after "yes" or "no" responses to hostkey
   prompts. bz#2803

   ssh(1): ホスト鍵のプロンプトの "yes" か "no" の応答のあとにゴミを
   受け付けない. bz#2803

 * sftp(1): Have sftp print a warning about shell cleanliness when
   decoding the first packet fails, which is usually caused by shells
   polluting stdout of non-interactive startups. bz#2800

   sftp(1): 非対話の起動で標準出力が汚染されたシェルによって通常引き起こされる
   最初のパケットのデコードが失敗した場合に,
   シェルの清潔さについての警告を sftp が出力する.

 * ssh(1)/sshd(8): Switch timers in packet code from using wall-clock
   time to monotonic time, allowing the packet layer to better function
   over a clock step and avoiding possible integer overflows during
   steps.

   ssh(1)/sshd(8): パケッドコード中のタイマーで, wall-clock 時間から
   monotonic 時間を利用するように変更する. パケット層で,
   クロックのステップに対するよりより扱いが可能となり, ステップ間での
   潜在的な整数オーバーフローを回避する.

 * Numerous manual page fixes and improvements.

   たくさんのマニュアルページの修正と改善.


Portability
-----------

移植性

 * sshd(8): Correctly detect MIPS ABI in use at configure time. Fixes
   sandbox violations on some environments.

   sshd(8): configure 時に MIPS API が利用できるか正しく検知する.
   いくつかの環境でサンドボックスの破壊を修正する.

 * sshd(8): Remove UNICOS support. The hardware and software are literal
   museum pieces and support in sshd is too intrusive to justify
   maintaining.

   sshd(8): UNICOS サポートを除去する.  ハードウェアもソフトウェアも文字通りの
   博物館もので, sshd でのサポートで保守を正当化するには邪魔ものすぎる

 * All: Build and link with "retpoline" flags when available to mitigate
   the "branch target injection" style (variant 2) of the Spectre
   branch-prediction vulnerability.

   すべて: Spectre 分岐予測脆弱性の "branch target injection" スタイル(variant 2) を緩和する
   ことができる, retpoline フラグ付きでのビルドとリンク.

 * All: Add auto-generated dependency information to Makefile.

   すべて: Makefile に自動生成された依存情報を追加する.

 * Numerous fixed to the RPM spec files.

   RPM spec ファイルを沢山修正した.