OpenSSH 8.2 リリース準備中 / Call for testing: OpenSSH 8.2

6 Feb, 2020 - 14 minutes

OpenSSH 8.2 がリリース準備中です.

Call for testing: OpenSSH 8.2

SHA-1 の利用廃止に向けた動き, FIDO/U2F などもりだくさんです.

https://lists.mindrot.org/pipermail/openssh-unix-dev/2020-February/038215.html

Future deprecation notice
=========================

将来廃止される機能についての通知

It is now possible[1] to perform chosen-prefix attacks against the
SHA-1 algorithm for less than USD$50K. For this reason, we will be
disabling the "ssh-rsa" public key signature algorithm by default in a
near-future release.

USドル 50K より少ない金額で SHA-1 アルゴリズムに対する選択プレフィックス
攻撃が実行できることが [1] で示されている. このため, 我々は
近い将来のリリースで "ssh-rsa" 公開鍵署名アルゴリズムをデフォルトでは
無効にする予定だ.

This algorithm is unfortunately still used widely despite the
existence of better alternatives, being the only remaining public key
signature algorithm specified by the original SSH RFCs.

このアルコリズムは, よりよい代替アルゴリズムがあるにもかかわらず
もともとの SSH RFC で定義された公開鍵署名アルゴリズムのの中で
ただ1つ残ったアルゴリズムとして,
不幸なことにいまだ広く用いられている.

The better alternatives include:

次に示すものがよりよい代替だ:

 * The RFC8332 RSA SHA-2 signature algorithms rsa-sha2-256/512. These
   algorithms have the advantage of using the same key type as
   "ssh-rsa" but use the safe SHA-2 hash algorithms. These have been
   supported since OpenSSH 7.2 and are already used by default if the
   client and server support them.

   RFC8332 の RSA SHA-2 署名アルゴリズム rsa-sha-256/512.
   これらのアルゴリズムは "ssh-rsa" と同じ鍵タイプを用いる利点があり
   安全な SHA-2 ハッシュアルゴリズムを用いている. これらは
   OpenSSH 7.2 以降でサポートされており, クライアントとサーバが
   サポートしているならすでにデフォルトで用いられている.

 * The ssh-ed25519 signature algorithm. It has been supported in
   OpenSSH since release 6.5.

   ssh-ed25519 署名アルゴリズム. OpenSSH 6.5 以降でサポートされている.

 * The RFC5656 ECDSA algorithms: ecdsa-sha2-nistp256/384/521. These
   have been supported by OpenSSH since release 5.7.

   RFC5656 の ECDSA アルゴリズム: ecdsa-sha2-nistp256/384/521. These
   これらは OpenSSH 5.7 以降でサポートされている.

To check whether a server is using the weak ssh-rsa public key
algorithm, for host authentication, try to connect to it after
removing the ssh-rsa algorithm from ssh(1)'s allowed list:

サーバが, ホストの認証のために, 弱い ssh-rsa 公開鍵アルゴリズムを
利用しているか検査するには, ssh(1) の許可リストから ssh-rsa
アルゴリズムを除いたあとで接続を試行すればよい.

    ssh -oHostBasedKeyTypes=-ssh-rsa user@host

If the host key verification fails and no other supported host key
types are available, the the server software on that host should be
upgraded.

ホスト鍵検証が失敗し他にサポートされたホスト鍵の種類がない場合,
ホストのサーバソフトウェアをアップグレードする必要がある.

[1] "SHA-1 is a Shambles: First Chosen-Prefix Collision on SHA-1 and
    Application to the PGP Web of Trust" Leurent, G and Peyrin, T
    (2020) https://eprint.iacr.org/2020/014.pdf

Security
========

セキュリティ

 * ssh(1), sshd(8), ssh-keygen(1): this release removes the "ssh-rsa"
   (RSA/SHA1) algorithm from those accepted for certificate signatures
   (i.e. the client and server CASignatureAlgorithms option) and will
   use the rsa-sha2-512 signature algorithm by default when the
   ssh-keygen(1) CA signs new certificates.

   ssh(1), sshd(8), ssh-keygen(1): このリリースで "ssh-rsa" (RSA/SHA1)
   アルゴリズムを 証明書の署名のために受け入れる署名 (すなわち,
   クライアントとサーバの CASignatureAlgorithms 設定項目) から除く.
   また, ssh-keygen(1) の CA が新しい証明書に署名する際の
   デフォルトのアルゴリズムとして rsa-sha2-512 署名アルゴリズムを
   利用する.

   Certificates are at special risk to the aforementioned SHA1
   collision vulnerability as an attacker has effectively unlimited
   time in which to craft a collision that yields them a valid
   certificate, far more than the relatively brief LoginGraceTime
   window that they have to forge a host key signature.

   証明書は前述の SHA1 衝突脆弱性に対して特別なリスクがある.
   攻撃者は正当な署名を生成する衝突を工夫するのに,
   実質的に無限の時間を使える.
   ホスト鍵の署名を攻撃者が偽造するには
   比較的に短時間な LoginGraceTime で指定された時間内に行なう必要がある.

   OpenSSH releases prior to 7.2 do not support the newer RSA/SHA2
   algorithms and will refuse to accept certificates signed by an
   OpenSSH 8.2+ CA using RSA keys. Older clients/servers may use
   another CA key type such as ssh-ed25519 (supported since OpenSSH
   6.5) or one of the ecdsa-sha2-nistp256/384/521 types (supported
   since OpenSSH 5.7) instead if they cannot be upgraded.

   7.2 より前の OpenSSH のリリースは, より新しい RSA/SHA2 アルゴリズムを
   をサポートしておらず, OpenSSH 8.2 以降の CA が RSA 鍵を用いて
   署名した証明書を受け入れられなくなる. 古いクライアント/サーバは,
   アップグレードできないならば, 代わりに (OpenSSH 6.5
   以降でサポートされている) ssh-ed25519 や (OpenSSH 5.7
   以降でサポートされている) ecdsa-sha2-nistp256/384/521
   のうちの1つのような 別の CA 鍵タイプを利用することになる.


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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するいくつかの変更がある.

 * ssh(1), sshd(8): the above removal of "ssh-rsa" from the accepted
   CASignatureAlgorithms list.

   ssh(1), sshd(8): 前述のように CASignatureAlgorithms
   で受け入れるリストから "ssh-rsa" を除去

 * ssh(1), sshd(8): this release removes diffie-hellman-group14-sha1
   from the default key exchange proposal for both the client and
   server.

   ssh(1), sshd(8): クライアントとサーバのデフォルトの鍵交換候補から
   diffie-hellman-group14-sha1 をこのリリースで除く.

 * ssh-keygen(1): the command-line options related to the generation
   and screening of safe prime numbers used by the
   diffie-hellman-group-exchange-* key exchange algorithms have
   changed. Most options have been folded under the -O flag.

   ssh-keygen(1): diffie-hellman-group-exchange-* 鍵交換アルゴリズムで
   用いられる安全な素数の生成と選別に関連するコマンドラインオプションが
   変更される. たいがいのオプションが -O フラグの下に畳み込まれる.

 * sshd(8): the sshd listener process title visible to ps(1) has
   changed to include information about the number of connections that
   are currently attempting authentication and the limits configured
   by MaxStartups.

   sshd(8): ps(1) で見れるsshd のリスナープロセスのタイトルが
   変更され, 現在認証を試行している接続の数と MaxStartups
   で設定された制限の情報を含むようになる.

Changes since OpenSSH 8.1
=========================

OpenSSH 8.1 からの変更点

This release contains some significant new features.

このリリースはいくつかの重大な新機能を含んでいる.

FIDO/U2F Support
----------------

FIDO/U2F サポート

This release adds support for FIDO/U2F hardware authenticators to
OpenSSH. U2F/FIDO are open standards for inexpensive two-factor
authentication hardware that are widely used for website
authentication.  In OpenSSH FIDO devices are supported by new public
key types "ecdsa-sk" and "ed25519-sk", along with corresponding
certificate types.

このリリースでは OpenSSH に FIDO/U2F ハードウェア認証器のサポートを
追加する. U2F/FIDO は ウェブサイトの認証に広く用いられている
安価な 2 要素認証ハードウェアのオープンな標準だ. OpenSSH では
FIDO デバイスは新しい "ecdsa-sk" と "ed25519-sk" 公開鍵鍵タイプと
関連する証明書のタイプをサポートする.

ssh-keygen(1) may be used to generate a FIDO token-backed key, after
which they may be used much like any other key type supported by
OpenSSH, so long as the hardware token is attached when the keys are
used. FIDO token also generally require the user explicitly authorise
operations by touching or tapping them.

ssh-keygen(1) は, FIDO のトークンに支援された鍵を生成するに使われるようになる.
これらの鍵が利用される際にハードウェアトークンが取り付けられているならば,
OpenSSH でサポートされた他の鍵タイプのように利用できる.
FIDO トークンはさらに, トークンに触れたり押したりすることでの
ユーザの明示的な許可を一般的に要求する.

Generating a FIDO key requires the token be attached, and will usually
require the user tap the token to confirm the operation:

FIDO キーの生成にはトークンが取り付けられていることが必要で,
ユーザがトークンをタップしての操作の確認が通常要求される.

  $ ssh-keygen -t ecdsa-sk -f ~/.ssh/id_ecdsa_sk
  Generating public/private ecdsa-sk key pair.
  You may need to touch your security key to authorize key generation.
  Enter file in which to save the key (/home/djm/.ssh/id_ecdsa_sk): 
  Enter passphrase (empty for no passphrase): 
  Enter same passphrase again: 
  Your identification has been saved in /home/djm/.ssh/id_ecdsa_sk
  Your public key has been saved in /home/djm/.ssh/id_ecdsa_sk.pub

This will yield a public and private key-pair. The private key file
should be useless to an attacker who does not have access to the
physical token. After generation, this key may be used like any other
supported key in OpenSSH and may be listed in authorized_keys, added
to ssh-agent(1), etc. The only additional stipulation is that the FIDO
token that the key belongs to must be attached when the key is used.

公開鍵と秘密鍵のペアが生成される. 秘密鍵ファイルは物理トークンにアクセス
できない攻撃者には利用できないはずだ. 生成のあと, この鍵は OpenSSH の
他のサポートされた鍵のように利用できる. authorized_keys ファイルに列挙でき,
ssh-agent(1) に追加できる, などなど. 唯一の追加の条件は,
鍵を利用する際に鍵が属している FIDO トークンが取り付けられていなければならない
ことだ.

FIDO tokens are most commonly connected via USB but may be attached
via other means such as Bluetooth or NFC. In OpenSSH, communication
with the token is managed via a middleware library, specified by the
SecurityKeyProvider directive in ssh/sshd_config(5). OpenSSH includes
a middleware with support for USB tokens that is may be enabled in
portable OpenSSH via the --with-security-key-builtin configure flag
(it is enabled automatically in OpenBSD). This internal middleware
requires that libfido2 (https://github.com/Yubico/libfido2) and its
dependencies be installed. If the built-in middleware is enabled then
it will be used by default.

FIDO トークンは たいがい USB を用いて接続されるが, Bluetooth や
NFC といった手段でも取り付けられる. OpenSSH では, トークンとの通信は
ssh/sshd_config(5) の SecurityKeyProvider 設定項目で指定された
ミドルウェアライブラリで管理される. OpenSSH は USB トークンの
サポートのためのミドウウェアを含んでいて, 移植版 OpenSSH では
--with-security-key-builtin configure オプションで有効となる
(OpenBSD では自動的に有効だ). この内部ミドルウェアは
libfido2(https://github.com/Yubico/libfido2) と
このライブラリが依存するものがインストールされていることを要求する.
このビルトインミドルウェアが有効ならば デフォルトで利用される.

Note: FIDO/U2F tokens are required to implement the ECDSA-P256
"ecdsa-sk" key type, but hardware support for Ed25519 "ed25519-sk" is
less common. Similarly, not all hardware tokens support some of the
optional features such as resident keys.

注意: FIDO/U2F トークンは ECDSA-P256 "ecdsa-sk" 鍵タイプの実装が要求されている
が,  Ed25519 "ed25519-sk" のハードウェアサポートはより一般的ではない.
同様に, すべてのハードウェアトークンが resident key のような
追加の特徴をサポートしているわけではない.

The protocol-level changes to support FIDO/U2F keys in SSH are
documented in the PROTOCOL.u2f file in the OpenSSH source
distribution.

SSH での FIDO/U2F 鍵のサポートのためのプロトコルレベルでの変更は
OpenSSH ソース配布の PROTOCOL.u2f ファイルに文書化されている.

There are a number of supporting changes to this feature:

この特徴のための変更は次だ:

 * ssh-keygen(1): add a "no-touch-required" option when generating
   FIDO-hosted keys, that disables their default behaviour of
   requiring a physical touch/tap on the token during authentication.
   Note: not all tokens support disabling the touch requirement.

   ssh-keygen(1): FIDOに支援された鍵を生成する "no-touch-required"
   オプションを追加する. 認証の間にトークン上で物理的な タッチ/タップ
   を要求するデフォルトの振舞いを無効にする.
   注意: すべてのトークンがタッチ要求の無効をサポートするわけではない.

 * sshd(8): add a sshd_config PubkeyAuthOptions directive that
   collects miscellaneous public key authentication-related options
   for sshd(8). At present it supports only a single option
   "no-touch-required". This causes sshd to skip its default check for
   FIDO/U2F keys that the signature was authorised by a touch or press
   event on the token hardware.

   sshd(8): sshd_config に PubkeyAuthOptions 設定項目を追加する.
   sshd(8) に対するいろいろな公開鍵認証に関連したオプションを集める.
   現在唯一のオプション "no-touch-required" のみをサポートする.
   これは, sshd に対してトークンハードウェアのFIDO/U2F 鍵のデフォルトのチェック
   (署名がトークンハードウェア上でのタッチやプレスによって
   認証されたかどうか) をスキップする.

 * ssh(1), sshd(8), ssh-keygen(1): add a "no-touch-required" option
   for authorized_keys and a similar extension for certificates. This
   option disables the default requirement that FIDO key signatures
   attest that the user touched their key to authorize them, mirroring
   the similar PubkeyAuthOptions sshd_config option.

   ssh(1), sshd(8), ssh-keygen(1): authorized_keys に対する
   "no-touch-required" オプションと, 証明書に対する同様の拡張を追加する.
   このオプションは ユーザが署名を認証するために鍵に触れたかを証明する
   FIDO 鍵署名に対するデフォルトの要求を無効にする.
   同様に PubkeyAuthOptions sshd_config 設定項目と対になっている.

 * ssh-keygen(1): add support for the writing the FIDO attestation
   information that is returned when new keys are generated via the
   "-O write-attestation=/path" option. FIDO attestation certificates
   may be used to verify that a FIDO key is hosted in trusted
   hardware. OpenSSH does not currently make use of this information,
   beyond optionally writing it to disk.

   ssh-keygen(1): "-O write-attestation=/path" オプションよって新しい鍵が
   生成された際に返ってくる FIDO 認証情報を書き込みのサポートを追加する.
   FIDO 認証証明書は FIDO 鍵が信頼されたハードウェア上にあるかを検証するのに
   用いられることがある OpenSSH は現在オプションでディスクに書き込む以外では
   この情報は利用しない.

FIDO2 resident keys
-------------------

FIDO2 resident keys

FIDO/U2F OpenSSH keys consist of two parts: a "key handle" part stored
in the private key file on disk, and a per-device private key that is
unique to each FIDO/U2F token and that cannot be exported. These are
combined by the hardware at authentication time to derive the real key
that is used to sign authentication challenges.

FIDO/U2F OpenSSH 鍵は 2つの部分から構成される: "key handle" 部は
ディスク上に秘密鍵ファイル内に保存される.
デバイスごとの秘密鍵は それぞれの FIDO/U2F トークンについて唯一で
取り出すことができない. これらをハードウェアで組み合わせて認証時に
署名認証の挑戦に用いる実際の鍵を導出する.

For tokens that are required to move between computers, it can be
cumbersome to have to move the private key file first. To avoid this
requirement, tokens implementing the newer FIDO2 standard support
"resident keys", where it is possible to effectively retrieve the key
handle part of the key from the hardware.

コンピュータ間で移動する必要のあるトークンにとっては, 秘密鍵をまず
移動する必要があるのはやっかいとなりうる. この要求を避けるため,
より新しい FIDO2 標準がサポートする "resident keys" を実装したトークンは
ハードウェアから鍵の key handle 部分を効率的に取り出すことができる.

OpenSSH supports this feature, allowing resident keys to be generated
using the ssh-keygen(1) "-O resident" flag. This will produce a
public/private key pair as usual, but it will be possible to retrieve
the private key part from the token later. This may be done using
"ssh-keygen -K", which will download all available resident keys from
the tokens attached to the host and write public/private key files
for them. It is also possible to download and add resident keys
directly to ssh-agent(1) without writing files to the file-system
using "ssh-add -K".

OpenSSH はこの特徴をサポートする. ssh-keygen(1) の "-O resident"
を用いて resident keys を生成できる. これは 公開鍵/秘密鍵のペアを
通常のように生成するが, 後でトークンから秘密鍵の部分を取り出せる.
"ssh-keygen -K" を用いると, ホストに取り付けられたトークンから
すべての resident keys を ダウンロードし
公開鍵/秘密鍵ファイルに書き込む. "ssh-add -K" を用いると
ファイルシステムへファイルを書き込むことなく ssh-agent(1) に直接
resident keys をダウンロードできる.

Resident keys are indexed on the token by the application string and
user ID. By default, OpenSSH uses an application string of "ssh:" and
an empty user ID. If multiple resident keys on a single token are
desired then it may be necessary to override one or both of these
defaults using the ssh-keygen(1) "-O application=" or "-O user="
options. Note: OpenSSH will only download and use resident keys whose
application string begins with "ssh:"

resident keys は アプリケーション文字列とユーザIDにてトークン上で
インデックスされる. デフォルトで OpenSSH は アプリケーション文字列として
"ssh:" を利用する. ユーザID は利用しない(空). 1つのトークン上に複数の 
resident keys を配置したいなら, ssh-keygen(1) の "-O application=" か
"-O user=" オプションを用いて デフォルトの1つないし両方を上書きする
必要がある. 注意: OpenSSH は "ssh:" で始まるアプリケーション文字列を
持つ resident keys のみをダウンロード/使用する.

Storing both parts of a key on a FIDO token increases the likelihood
of an attacker being able to use a stolen token device. For this
reason, tokens should enforce PIN authentication before allowing
download of keys, and users should set a PIN on their tokens before
creating any resident keys.

FIDO トークン上に鍵の両方の部分を保持するのは, 攻撃者が盗んだトークン
デバイスを利用できる蓋然性を増やす. このため, 鍵のダウンロードの前に
PIN 認証をトークンは強制すべきで, ユーザは resident keys を作成する前に
トークンに PIN を設定すべきだ.

Other New Features
------------------

他の新機能

 * sshd(8): add an Include sshd_config keyword that allows including
   additional configuration files via glob(3) patterns. bz2468

   sshd(8): Include sshd_config キーワードを追加する. glob(3)
   のパターンで追加の設定ファイルを含むことができる. bz2468

 * ssh(1)/sshd(8): make the LE (low effort) DSCP code point available
   via the IPQoS directive; bz2986,

   ssh(1)/sshd(8): IPQoS 設定項目で LE(low effort) DSCP コードポイント
   が利用できる. bz2986

 * ssh(1): when AddKeysToAgent=yes is set and the key contains no
   comment, add the key to the agent with the key's path as the
   comment. bz2564

   ssh(1): AddKeysToAgent=yes が設定されていて鍵にコメントがない場合,
   エージェントへの鍵の追加時に鍵のパスがコメントとなる. bz2564
    
 * ssh-keygen(1), ssh-agent(1): expose PKCS#11 key labels and X.509
   subjects as key comments, rather than simply listing the PKCS#11
   provider library path. PR138

   ssh-keygen(1), ssh-agent(1): PKCS#11 のプロバイダライブラリ
   パスを単純に列挙するのではなく, 鍵のコメントとして PKCS#11 鍵ラベルと
   X.509 subject を露出する. PR138

 * ssh-keygen(1): allow PEM export of DSA and ECDSA keys; bz3091

   ssh-keygen(1): DSA と ECDSA 鍵の PEM エキスポートが可能になる; bz3091

 * ssh(1), sshd(8): make zlib compile-time optional, available via the
   Makefile.inc ZLIB flag on OpenBSD or via the --with-zlib configure
   option for OpenSSH portable.

   ssh(1), sshd(8): zlib がコンパイル時に選択可能になった(なしでもコンパイルできるようになった).
   OpenBSD の Makefile.inc ZLIB フラグか 移植版 OpenSSH の --with-zlib configure
   オプションで利用可能.

 * sshd(8): when clients get denied by MaxStartups, send a
   notification prior to the SSH2 protocol banner according to
   RFC4253 section 4.2.

   sshd(8): MaxStartups の制限でクライアントが接続できなかった場合
   RFC4253 4.2 節に従い SSH2 のプロトコルバナーより前に通知を送る.

 * ssh(1), ssh-agent(1): when invoking the $SSH_ASKPASS prompt
   program, pass a hint to the program to describe the type of
   desired prompt.  The possible values are "confirm" (indicating
   that a yes/no confirmation dialog with no text entry should be
   shown), "none" (to indicate an informational message only), or
   blank for the original ssh-askpass behaviour of requesting a
   password/phrase.

   ssh(1), ssh-agent(1): $SSH_ASKPASS プロンプトプログラムを起動する際
   望まれるプロンプトの種類を記述するヒントをプログラムに渡す.
   可能な値は "confirm" (テキストエントリが表示されない yes/no
   確認ダイアログを指定), "none" (情報メッセージのみを指定), もしくは
   元々のパスワード/パスフレーズを要求する ssh-askpass の振舞いのための
   ブランクだ.

 * ssh(1): allow forwarding a different agent socket to the path
   specified by $SSH_AUTH_SOCK, by extending the existing ForwardAgent
   option to accepting an explicit path or the name of an environment
   variable in addition to yes/no.

   ssh(1): $SSH_AUTH_SOCK で指定されたパスとは異なるエージェントソケットの
   転送を可能にする. 既存の ForwardAgent 設定項目を拡張し, yes/no
   だけではなく 明示的なパスや環境変数の名前を受け入れる.
   
 * ssh-keygen(1): add a new signature operations "find-principals" to
   look up the principal associated with a signature from an allowed-
   signers file.

   ssh-keygen(1): 新しい署名の操作 "find-principals" を追加する.
   許可された署名者のファイルから署名に基づく principal を検索する.
    
 * sshd(8): expose the number of currently-authenticating connections
   along with the MaxStartups limit in the process title visible to
   "ps".

   sshd(8): "ps" で見えるプロセスタイトルに 現在認証中の接続数と
   MaxStartups の制限を露出する.

Bugfixes
--------

バグ修正

 * sshd(8): make ClientAliveCountMax=0 have sensible semantics: it
   will now disable connection killing entirely rather than the
   current behaviour of instantly killing the connection after the
   first liveness test regardless of success. bz2627

   sshd(8): ClientAliveCountMax=0 にちゃんとした意味を持たせる:
   完全に接続を切断するようになる. 現在の振舞いは,
   最初の生存テストのあとで成功/失敗にかかわらず接続を単に切断する.
   bz2627
    
 * sshd(8): clarify order of AllowUsers / DenyUsers vs AllowGroups /
   DenyGroups in the sshd(8) manual page. bz1690

   sshd(8): sshd(8) のマニュアルで, AllowUsers / DenyUsers と
   AllowGroups / DenyGroups の順序を明確にする. bz1690

 * sshd(8): better describe HashKnownHosts in the manual page. bz2560

   sshd(8): マニュアルでの HashKnownHosts の記述を改善する. bz2560

 * sshd(8): clarify that that permitopen=/PermitOpen do no name or
   address translation in the manual page. bz3099

   sshd(8): マニュアルでの permitopen=/PermitOpen の記述で,
   名前やアドレスの変換をしないことを明確にする. bz3009

 * sshd(8): allow the UpdateHostKeys feature to function when
   multiple known_hosts files are in use. When updating host keys,
   ssh will now search subsequent known_hosts files, but will add
   updated host keys to the first specified file only. bz2738

   ssh(1) な気がする.

   sshd(8): 複数の known_hosts ファイルを利用する際に
   UpdateHostKeys が機能するようにする. ホスト鍵を更新する際
   ssh は最初以外のknown_hosts 鍵も検索するようになるが
   最初に指定されたファイルにのみ更新されたホスト鍵を追加する.
   bz2738
    
 * All: replace all calls to signal(2) with a wrapper around
   sigaction(2). This wrapper blocks all other signals during the
   handler preventing races between handlers, and sets SA_RESTART
   which should reduce the potential for short read/write operations.

   すべて: sigaction(2) の wrapper で signal(2) のすべての呼び出しを
   更新する. この wrapper は ハンドラ内で他のすべてのシグナルをブロックして
   ハンドラ間の競合を防止し, 短い read/write 操作の可能性を減らす
   SA_RESTART を指定する.
    
 * sftp(1): fix a race condition in the SIGCHILD handler that could
   turn in to a kill(-1); bz3084

   sftp(1): kill(-1) で発生する SIGCHILD ハンドラの競合状態を修正する.
   bz3084

 * sshd(8): fix a case where valid (but extremely large) SSH channel
   IDs were being incorrectly rejected. bz3098

   sshd(8): 正当な(ただし非常に大きい) SSH チャンネル ID が
   不正に拒否されている場合を修正する. bz3098

 * ssh(1): when checking host key fingerprints as answers to new
   hostkey prompts, ignore whitespace surrounding the fingerprint
   itself.

   ssh(1): 新しいホストキーのプロンプトの回答としてホスト鍵指紋を
   チェックする際, 指紋自体の周りの空白を無視する.

 * All: wait for file descriptors to be readable or writeable during
   non-blocking connect, not just readable. Prevents a timeout when
   the server doesn't immediately send a banner (e.g. multiplexers
   like sslh)

   すべて: ノンブロッキングの接続で, 読み込み可能だけではなく
   読み込み可能か書き込み可能になるまでファイルデスクリプタを待つ.
   サーバがすぐにバナーを送ってこない場合
   (たとえば sslh のようなマルチプレクサ) のタイムアウトを防ぐ.
 
 * sshd_config(5): document the sntrup4591761x25519-sha512@tinyssh.org
   key exchange algorithm. PR#151

   sshd_config(5): sntrup4591761x25519-sha512@tinyssh.org
   鍵交換アルゴリズムについて記述する. PR#151

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

移植性

 * sshd(8): multiple adjustments to the Linux seccomp sandbox:
   - Non-fatally deny IPC syscalls in sandbox
   - Allow clock_gettime64() in sandbox (MIPS / glibc >= 2.31)
   - Allow clock_nanosleep_time64 in sandbox (ARM) bz3100
   - Allow clock_nanosleep() in sandbox (recent glibc) bz3093

 * sshd(8): Linux seccomp サンドボックスへの複数の調整:
   - サンドボックスで IPC syscalls を致命的ではなく否定する
   - サンドボックスで clock_gettime64() を許可する (MIPS / glibc >= 2.31)
   - サンドボックスで clock_nanosleep_time64 を許可する (ARM) bz3100
   - サンドボックスで clock_nanosleep() を許可する (recent glibc) bz3093

 * Explicit check for memmem declaration and fix up declaration if the
   system headers lack it. bz3102

 * memmem 宣言の明示的なチェックとシステムヘッダで宣言がない場合に宣言を修正する.
   bz3102

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

9 Oct, 2019 - 8 minutes

2019/10/09, OpenSSH 8.1 がリリースされました.

https://www.openssh.com/txt/release-8.1

Security
========

セキュリティ

 * ssh(1), sshd(8), ssh-add(1), ssh-keygen(1): an exploitable integer
   overflow bug was found in the private key parsing code for the XMSS
   key type. This key type is still experimental and support for it is
   not compiled by default. No user-facing autoconf option exists in
   portable OpenSSH to enable it. This bug was found by Adam Zabrocki
   and reported via SecuriTeam's SSD program.

   ssh(1), sshd(8), ssh-add(1), ssh-keygen(1): XMSS 鍵タイプの秘密鍵を
   をパースするコードに悪用可能な整数オーバフローが見つかった. この鍵
   タイプはまだ実験的でコンパイル時にデフォルトでサポートされない.
   移植版 OpenSSH にこれを有効にするユーザ向けのオプションは存在しない.
   このバグは Adam Zabrocki によって発見され, SecuriTeam の SSD
   プログラムによって報告された.

 * ssh(1), sshd(8), ssh-agent(1): add protection for private keys at
   rest in RAM against speculation and memory side-channel attacks like
   Spectre, Meltdown and Rambleed. This release encrypts private keys
   when they are not in use with a symmetric key that is derived from a
   relatively large "prekey" consisting of random data (currently 16KB).

   ssh(1), sshd(8), ssh-agent(1): RAMに存在する秘密鍵に対して,
   Spectre, Meltdown, Rambleed のような推測やメモリサイドチャネル攻撃
   に対する保護を追加する. ランダムなデータ (現在は 16KB) で構成される
   相対的に大きな "prekey" から導出される対称鍵を秘密鍵が利用していない場合,
   このリリースでは秘密鍵を暗号化する.

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

潜在的に非互換な変更

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

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

 * ssh-keygen(1): when acting as a CA and signing certificates with
   an RSA key, default to using the rsa-sha2-512 signature algorithm.
   Certificates signed by RSA keys will therefore be incompatible
   with OpenSSH versions prior to 7.2 unless the default is
   overridden (using "ssh-keygen -t ssh-rsa -s ...").

   ssh-keygen(1): CA として振舞い RSA 鍵で証明書に署名する場合,
   rsa-sha2-512 署名アルゴリズムをデフォルトで利用する.
   RSA 鍵で署名された証明書は, デフォルトを上書きしないと
   ("ssh-keygen -t ssh-rsa -s ..." を用いる) 7.2 より前の OpenSSH
   のバージョンを非互換となる.

Changes since OpenSSH 8.0
=========================

OpenSSH 8.0 からの変更

This release is focused on bug-fixing.

このリリースはバグ修正に焦点を当てている.

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

新機能

 * ssh(1): Allow %n to be expanded in ProxyCommand strings

   ssh(1): ProxyCommand 文字列中の展開に %n を許可する.

 * ssh(1), sshd(8): Allow prepending a list of algorithms to the
   default set by starting the list with the '^' character, E.g.
   "HostKeyAlgorithms ^ssh-ed25519"

   ssh(1), sshd(8): '^' 文字を用いてアルゴリスムのリストを始めることで
   アルゴリズムのデフォルトの集合の前にアルゴリズムのリストを追加できる.
   例えば "HostKeyAlgorithms ^ssh-ed25519"

 * ssh-keygen(1): add an experimental lightweight signature and
   verification ability. Signatures may be made using regular ssh keys
   held on disk or stored in a ssh-agent and verified against an
   authorized_keys-like list of allowed keys. Signatures embed a
   namespace that prevents confusion and attacks between different
   usage domains (e.g. files vs email).

   ssh-keygen(1): 実験的な軽量な署名と検証の能力を追加する.
   署名はディスクか ssh-agent に格納された通常の ssh 鍵を用いて
   作成され, 検証は authorized_keys のような許可された鍵のリストに対して
   行なわれる. 署名は, 衝突や異なる利用ドメイン(例えば ファイルとEメール)
   の間の攻撃を防ぐ名前空間を埋め込む.

 * ssh-keygen(1): print key comment when extracting public key from a
   private key.  bz#3052

   ssh-keygen(1): 秘密鍵から公開鍵を抽出する際に鍵のコメントを表示する.
   bz#3052

 * ssh-keygen(1): accept the verbose flag when searching for host keys
   in known hosts (i.e. "ssh-keygen -vF host") to print the matching
   host's random-art signature too. bz#3003

   ssh-keygen(1)): known hosts 中のホスト鍵の検索時に verbose フラグを
   受け入れる (例えば "ssh-keygen -vF host""]) このとき
   ホストのランダムアートな署名も表示する. bz#3003

 * All: support PKCS8 as an optional format for storage of private
   keys to disk.  The OpenSSH native key format remains the default,
   but PKCS8 is a superior format to PEM if interoperability with
   non-OpenSSH software is required, as it may use a less insecure
   key derivation function than PEM's.

   すべて: 秘密鍵をディスクに保存するオプションの形式として PKCS8
   をサポートする. OpenSSH のネイティブな鍵形式はデフォルトのままだが,
   PKCS8 は 非OpenSSH ソフトウェアとの相互互換性が要求される場合
   PEM よりもすぐれた形式だ. たとえ PEM よりも より安全でない鍵導出関数
   が利用されていても.

Bugfixes
--------

バグ修正

 * ssh(1): if a PKCS#11 token returns no keys then try to login and
   refetch them. Based on patch from Jakub Jelen; bz#2430

   ssh(1): PKCS#11 トークンが鍵を返さない場合, ログインを試み
   鍵をリフレッシュする. Jakub Jelen のパッチを基とする. bz#2430

 * ssh(1): produce a useful error message if the user's shell is set
   incorrectly during "match exec" processing. bz#2791

   ssh(1): ユーザのシェルが "match exec" 処理中に不正に設定されたら
   わかりやすいエラーメッセージを生成する.

 * sftp(1): allow the maximum uint32 value for the argument passed
   to -b which allows better error messages from later validation.
   bz#3050

   sftp(1): それ以降の検証からよりよいエラーメッセージを出すために
   -b で渡される引数に uint32 の最大値を許可する. bz#3050

 * ssh(1): avoid pledge sandbox violations in some combinations of
   remote forwarding, connection multiplexing and ControlMaster.

   ssh(1): リモート転送と接続の多重化と ControlMaster の組合せによる
   サンドボックスの侵入を回避する.

 * ssh-keyscan(1): include SHA2-variant RSA key algorithms in KEX
   proposal; allows ssh-keyscan to harvest keys from servers that
   disable old SHA1 ssh-rsa. bz#3029

   ssh-keyscan(1): KEX の提案に SHA2に由来する RSA 鍵アルゴリズムを含む.
   ssh-keyscan が 古い SHA1 ssh-rsa を無効にしたサーバから
   鍵を収集することを許可する.

 * sftp(1): print explicit "not modified" message if a file was
   requested for resumed download but was considered already complete.
   bz#2978

   sftp(1): ファイルが中断されたダウンロードを要求され,
   すでに完了していると 思われる場合, 明確な "not modified" メッセージを
   を表示する. bz#2978

 * sftp(1): fix a typo and make <esc><right> move right to the
   closest end of a word just like <esc><left> moves left to the
   closest beginning of a word.

   sftp(1): typo を修正する. また <esc><left> が 単語の最短の
   先頭まで左に移動するように, <esc><right> で単語の最短の終了
   まで右に移動するようにする.

 * sshd(8): cap the number of permitopen/permitlisten directives
   allowed to appear on a single authorized_keys line.

   sshd(8): 単一の authorized_keys 行に現れることを許す
   permitopen/permitlisten 設定項目の数に上限を設ける.

 * All: fix a number of memory leaks (one-off or on exit paths).

   すべて: (一度限りや終了のパス上の) 多数のメモリーリークを修正する.

 * Regression tests: a number of fixes and improvements, including
   fixes to the interop tests, adding the ability to run most tests
   on builds that disable OpenSSL support, better support for running
   tests under Valgrind and a number of bug-fixes.

   回帰テスト: 多数の修正と改善. 相互互換性のテストの修正や OpenSSL 
   サポートが無効な場合のビルドのより大くのテストの追加, Valgrind 下での
   テストの実行のよりよいサポートとたくさんのバグ修正.

 * ssh(1), sshd(8): check for convtime() refusing to accept times that
   resolve to LONG_MAX Reported by Kirk Wolf bz2977

   ssh(1), sshd(8): LONG_MAX に解決される時間を拒否するよう convtme()
   のためのチェックを行なう. Kirk Wolf による報告 bz2977

 * ssh(1): slightly more instructive error message when the user
   specifies multiple -J options on the command-line. bz3015

   ssh(1): ユーザがコマンドラインで複数の -J オプションを指定した場合に
   よりわかりやすいエラーメッセージを表示する.

 * ssh-agent(1): process agent requests for RSA certificate private
   keys using correct signature algorithm when requested. bz3016

   ssh-agent(1): 要求時に正しい署名アルゴリズムを用いる RSA
   証明書秘密鍵に対する要求を処理する. bz3016

 * sftp(1): check for user@host when parsing sftp target. This
   allows user@[1.2.3.4] to work without a path.  bz#2999

   sftp(1): sftp 対象のパース時に user@host をチェックする.
   これにより パスなしで user@[1.2.3.4] を許可する.
   bz#2999

 * sshd(8): enlarge format buffer size for certificate serial
   number so the log message can record any 64-bit integer without
   truncation. bz#3012

   sshd(8): 証明書のシリアル番号のバッファサイズを増大し, 
   打ち切りなしで任意の 64ビット整数をログメッセージに記録
   できるようになる. bz#3012

 * sshd(8): for PermitOpen violations add the remote host and port to
   be able to more easily ascertain the source of the request. Add the
   same logging for PermitListen violations which where not previously
   logged at all.

   sshd(8): PermitOpen の違反で, リクエストのソースをより簡単に確認
   できるように リモートホストとポートを追加する.
   また, それまでまったくログされていない PermitListen による違反が,
   同様に記録される.

 * scp(1), sftp(1): use the correct POSIX format style for left
   justification for the transfer progress meter. bz#3002

   scp(1), sftp(1): 転送プログレムメーターの左詰めに
   正しい POSIX 形式のスタイルを利用する. bz#3002

 * sshd(8) when examining a configuration using sshd -T, assume any
   attribute not provided by -C does not match, which allows it to work
   when sshd_config contains a Match directive with or without -C.
   bz#2858

   sshd(8): sshd -T を用いて設定の検査をする場合, -C によって提供されない
   どんな属性とも一致しないと仮定する. -C があってもなくても Match
   設定項目を含む sshd_config で動作するようにする. bz#2858

 * ssh(1), ssh-keygen(1): downgrade PKCS#11 "provider returned no
   slots" warning from log level error to debug. This is common when
   attempting to enumerate keys on smartcard readers with no cards
   plugged in. bz#3058

   ssh(1), ssh-keygen(1): PKCS#11 の "provider returned no slots"
   警告のログレベルを error から debug にダウングレードする.
   カードが挿入されていないスマートカードリーダー上での
   鍵を列挙しようとする試行時の共通の振舞いだ. bz#3058

 * ssh(1), ssh-keygen(1): do not unconditionally log in to PKCS#11
   tokens. Avoids spurious PIN prompts for keys not selected for
   authentication in ssh(1) and when listing public keys available in
   a token using ssh-keygen(1). bz#3006

   ssh(1), ssh-keygen(1): PKCS#11 トークンに絶対にログインしない.
   ssh(1) の認証で選択されていない鍵に対する偽のPINプロンプトや
   ssh-keygen(1) を用いたトークンで利用可能な公開鍵の列挙を防ぐ.
   bz#3006

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

移植性

 * ssh(1): fix SIGWINCH delivery of Solaris for multiplexed sessions
   bz#3030

   ssh(1): 多重化されたセッションでの SIGWINCH 転送を修正. bz#3030

 * ssh(1), sshd(8): fix typo that prevented detection of Linux VRF

   ssh(1), sshd(8): Linux VRF での 予防された検出での typo を修正する

 * sshd(8): add no-op implementation of pam_putenv to avoid build
   breakage on platforms where the PAM implementation lacks this
   function (e.g. HP-UX). bz#3008

   sshd(8): PAMの実装が pam_putenv を欠いている (例えば HP-UX)
   プラットフォームでのビルドの失敗を回避するために pam_putenv の
   なにもしない実装を追加する. ba#3008

 * sftp-server(8): fix Solaris privilege sandbox from preventing
   the legacy sftp rename operation from working (was refusing to
   allow hard links to files owned by other users). bz#3036

   sftp-server(8): (ハードリンクを他のユーザが所有するファイルに対して拒否する)
   働きから レガシーな sftp の rename 操作を防止する Solaris
   の特権サンドボックスを修正する. bz#3036

 * All: add a proc_pidinfo()-based closefrom() for OS X to avoid
   the need to brute-force close all high-numbered file descriptors.
   bz#3049

   すべて: proc_pidinfo() ベースの closefrom() を OS X に追加する.
   すべてのファイルデスクリプタをブルートフォースで閉める必要を
   回避する. bz#3049

 * sshd(8): in the Linux seccomp-bpf sandbox, allow mprotect(2) with
   PROT_(READ|WRITE|NONE) only. This syscall is used by some hardened
   heap allocators. Github PR#142

   sshd(8): Linux の seccomp-bpf サンドボックス中で, PROT_(READ|WRITE|NONE)
   のみを mprotect(2) に許す. このシステムコールは, いくかの強化された
   ヒープアロケーターで用いられている. Github PR#142

 * sshd(8): in the Linux seccomp-bpf sandbox, allow the s390-specific
   ioctl for ECC hardware support.

   sshd(8): Linux の seccomp-bpf サンドボックス中で, ECC ハードウェア
   サポートのために s390 特有の ioctl を許可する.

 * All: use "doc" man page format if the mandoc(1) tool is present on
   the system. Previously configure would not select the "doc" man
   page format if mandoc was present but nroff was not.

   All: mandoc(1) ツールがシステムにある場合 "doc" man ページ形式を
   利用する. 以前の設定では, mandoc が存在し nroff が存在しない場合に
   "doc" man ページ形式を選択していなかった.

 * sshd(8): don't install duplicate STREAMS modules on Solaris; check
   if STREAMS modules are already installed on a pty before installing
   since when compiling with XPG>=4 they will likely be installed
   already. Prevents hangs and duplicate lines on the terminal.
   bz#2945 and bz#2998,

   sshd(8): ソラリスで重複した STREAMS モジュールをインストールしない.
   XPG>=4 でコンパイルする場合, STREAMS モジュールがインストール
   されている可能性が高いのでインストール前に pty 上に STREAMS
   モジュールが既にインストールされているか検査する. 
   ターミナル上でのハングや重複行を防ぐ. bz#2945 と bz#2998

OpenSSH 8.1 リリース準備中 / Call for testing: OpenSSH 8.1

1 Oct, 2019 - 7 minutes

OpenSSH 8.1 がリリース準備中です.

Call for testing: OpenSSH 8.1

バグ修正に重点がおかれたリリースになる模様です.

https://lists.mindrot.org/pipermail/openssh-unix-dev/2019-October/037946.html

Security
========

セキュリティ

 * ssh(1), sshd(8), ssh-agent(1): add protection for private keys at
   rest in RAM against speculation and memory sidechannel attacks like
   Spectre, Meltdown and Rambleed. This release encrypts private keys
   when they are not in use with a symmetic key that is derived from a
   relatively large "prekey" consisting of random data (currently 16KB).
   Attackers must recover the entire prekey before they are able to
   decrypt the protected private keys, but the current generation of
   attacks have bit error rates that render this unlikely to be
   practical.

   ssh(1), sshd(8), ssh-agent(1): RAMに存在する秘密鍵に対して,
   Spectre, Meltdown, Rambleed のような推測やメモリサイドチャネル攻撃
   に対する保護を追加する. ランダムなデータ (現在は 16KB) で構成される
   相対的に大きな "prekey" から導出される対称鍵を秘密鍵が利用していない場合,
   このリリースでは秘密鍵を暗号化する.
   攻撃者は保護された秘密鍵を復号する前に完全な prekey
   を復元しなければならない, 現在の世代の攻撃はこれを実際に行なうには
   ビット誤り率が高い.

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

潜在的に非互換な変更

This release includes one change that may affect existing
configurations:

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

 * ssh-keygen(1): when acting as a CA and signing certificates with
   an RSA key, default to using the rsa-sha2-512 signature algorithm.
   Certificates signed by RSA keys will therefore be incompatible
   with OpenSSH versions prior to 7.2 unless the default is
   overridden (using "ssh-keygen -t ssh-rsa -s ...").

   ssh-keygen(1): CA として振舞い RSA 鍵で証明書に署名する場合,
   rsa-sha2-512 署名アルゴリズムをデフォルトで利用する.
   RSA 鍵で署名された証明書は, デフォルトを上書きしないと
   ("ssh-keygen -t ssh-rsa -s ..." を用いる) 7.2 より前の OpenSSH
   のバージョンを非互換となる.

Changes since OpenSSH 8.0
=========================

OpenSSH 8.0 からの変更

This release is focused on bugfixing.

このリリースはバグ修正に集中している.

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

新機能

 * ssh(1): Allow %n to be expanded in ProxyCommand strings

   ssh(1): ProxyCommand 文字列中の展開に %n を許可する.

 * ssh(1), sshd(8): Allow prepending a list of algorithms to the
   default set by starting the list with the '^' character, E.g.
   "HostKeyAlgorithms ^ssh-ed25519"

   ssh(1), sshd(8): '^' 文字を用いてアルゴリスムのリストを始めることで
   アルゴリズムのデフォルトの集合の前にアルゴリズムのリストを追加できる.
   例えば "HostKeyAlgorithms ^ssh-ed25519"

 * ssh-keygen(1): add an experimental lightweight signature and
   verification ability. Signatures may be made using regular ssh keys
   held on disk or stored in a ssh-agent and verified against an
   authorized_keys-like list of allowed keys. Signatures embed a
   namespace that prevents confusion and attacks between different
   usage domains (e.g. files vs email).

   ssh-keygen(1): 実験的な軽量署名と検証の能力を追加する.
   署名はディスクか ssh-agent に格納された通常の ssh 鍵を用いて
   作成され, 検証は authorized_keys のような許可された鍵のリストに対して
   行なわれる. 署名は, 衝突や異なる利用ドメイン(例えば ファイルとEメール)
   の間の攻撃を防ぐ名前空間を埋め込む.

 * ssh-keygen(1): print key comment when extracting publc key from a
   private key.  bz#3052

   ssh-keygen(1): 秘密鍵から公開鍵を抽出る際に鍵のコメントを表示する.
   bz#3052

 * ssh-keygen(1): accept the verbose flag when searching for host keys
   in known hosts (i.e. "ssh-keygen -vF host") to print the matching
   host's random-art signature too. bz#3003

   ssh-keygen(1)): known hosts の ホスト鍵の検索時に verbose フラグを
   受け入れる (例えば "ssh-keygen -vF host""]) このとき
   ホストのランダムアートな署名も表示する. bz#3003

 * All: support PKCS8 as an optional format for storage of private
   keys to disk.  The OpenSSH native key format remains the default,
   but PKCS8 is a superior format to PEM if interoperability with
   non-OpenSSH software is required, as it may use a less insecure
   key derivation function than PEM's.

   All: 秘密鍵をディスクに保存するオプションの形式として PKCS8
   をサポートする. OpenSSH のネイティブな鍵形式はデフォルトのままだが,
   PKCS8 は 非OpenSSH ソフトウェアとの相互互換性が要求される場合
   PEM よりもすぐれた形式だ. たとえ PRM よりも より安全でない鍵導出関数
   が利用されていても.

Bugfixes
--------

バグ修正

 * ssh(1): if a PKCS#11 token returns no keys then try to login and
   refetch them. Based on patch from Jakub Jelen; bz#2430

   ssh(1): PKCS#11 トークンが鍵を返さない場合, ログインを試み
   鍵をリフレッシュする. Jakub Jelen のパッチを基とする. bz#2430

 * ssh(1): produce a useful error message if the user's shell is set
   incorrectly during "match exec" processing. bz#2791

   ssh(1): ユーザのシェルが "match exec" 処理中に不正に設定されたら
   わかりやすいエラーメッセージを生成する.

 * sftp(1): allow the maximimum uint32 value for the argument passed
   to -b which allows better error messages from later validation.
   bz#3050

   sftp(1): それ以降の検証からよりよいエラーメッセージを出すために
   -b で渡される引数に uint32 の最大値を許可する.

 * ssh(1): avoid pledge sandbox violations in some combinations of
   remote forwarding, connection multiplexing and ControlMaster.

   ssh(1): リモート転送と接続の多重化と ControlMaster の組合せによる
   サンドボックスの侵入を回避する.

 * ssh-keyscan(1): include SHA2-variant RSA key algorithms in KEX
   proposal; allows ssh-keyscan to harvest keys from servers that
   disable olde SHA1 ssh-rsa. bz#3029

   ssh-keyscan(1): KEX の提案に SHA2に由来する RSA 鍵アルゴリズムを含む.
   ssh-keyscan が 古い SHA1 ssh-rsa を無効にしたサーバから
   鍵を収集することを許可する.

 * sftp(1): print explicit "not modified" message if a file was
   requested for resumed download but was considered already complete.
   bz#2978

   sftp(1): ファイルが中断されたダウンロードを要求され,
   すでに完了していると 思われる場合, 明白な "not modified" メッセージを
   を表示する. bz#2978

 * sftp(1): fix a typo and make <esc><right> move right to the
   closest end of a word just like <esc><left> moves left to the
   closest beginning of a word.

   sftp(1): typo を修正する. また <esc><left> が 単語の最短の
   先頭まで左に移動するように, <esc><right> で単語の最短の終了
   まで右に移動するようにする.

 * sshd(8): cap the number of permiopen/permitlisten directives
   allowed to appear on a single authorized_keys line.

   sshd(8): 単一の authorized_keys 行に現れることを許す
   permiopen/permitlisten 設定項目の数に上限を設ける.

 * All: fix a number of memory leaks (one-off or on exit paths).

   All: (一度限りや終了のパス上の) 多数のメモリーリークを修正する.

 * Regression tests: a number of fixes and improvments, including
   fixes to the interop tests, adding the ability to run most tests
   on builds that disable OpenSSL support, better support for running
   tests under Valgrind and a number of bugfixes.

   回帰テスト: 多数の修正と改善. 相互互換性のテストの修正や OpenSSL 
   サポートが無効な場合のビルドのより大くのテストの追加, Valgrind 下での
   テストの実行のよりよいサポートとたくさんのバグ修正.

 * ssh(1), sshd(8): check for convtime() refusing to accept times that
   resolve to LONG_MAX Reported by Kirk Wolf bz2977

   ssh(1), sshd(8): LONG_MAX に解決される時間を拒否するよう convtme()
   のためのチェックを行なう. Kirk Wolf による報告 bz#2977

 * ssh(1): slightly more instructive error message when the user
   specifies multiple -J options on the commandline. bz3015

   ssh(1): ユーザがコマンドラインで複数の -J オプションを指定した場合に
   よりわかりやすいエラーメッセージを表示する.

 * ssh-agent(1): process agent requests for RSA certificate private
   keys using correct signature algorithm when requested. bz3016

   ssh-agent(1): 要求時に正しい署名アルゴリズムを用いる RSA
   証明書秘密鍵に対する要求を処理する.

 * sftp(1): check for user@host when parsing sftp target. This
   allows user@[1.2.3.4] to work without a path.  bz#2999

   sftp(1): sftp 対象のパース時に user@host をチェッする. 
   これにより パスなしで user@[1.2.3.4] を許可する.
   bz#2999

 * sshd(8): enlarge format buffer size for certificate serial
   number so the log message can record any 64-bit integer without
   truncation. bz#3012

   sshd(8): 証明書のシリアル番号のバッファサイズを増大し, 
   打ち切りなしで任意の 64ビット整数をログメッセージに記録
   できるようになる.

 * sshd(8): for PermitOpen violations add the remote host and port to
   be able to more easily ascertain the source of the request. Add the
   same logging for PermitListen violations which where not previously
   logged at all.

   sshd(8): PermitOpen による違反が, 要求の源をより簡単に確認できるように
   リモートホストとポートを追加する.
   それまでまったくログされていない PermitListen による違反が, 
   同様に記録される.

 * scp(1), sftp(1): use the correct POSIX format style for left
   justification for the transfer progress meter. bz#3002

   scp(1), sftp(1): 転送プログレムメーターの左詰めに
   正しい POSIX 形式のスタイルを利用する. bz#3002

 * sshd(8) when examining a configureation using sshd -T, assume any
   attibute not provided by -C does not match, which allows it to work
   when sshd_config contains a Match directive with or without -C.
   bz#2858

   sshd(8): sshd -T を用いて設定の検査をする場合, -C のよって提供される
   どんな属性も一致しないと仮定する. -C があってもなくても Match
   設定項目を含む sshd_config で動作するようにする. bz#2858

 * ssh(1), ssh-keygen(1): downgrade PKCS#11 "provider returned no
   slots" warning from log level error to debug. This is common when
   attempting to enumerate keys on smartcard readers with no cards
   plugged in. bz#3058

   ssh(1), ssh-keygen(1): デバッグのためのログレベルエラーから
   PKCS#11 の "provider returned no slots" 警告のダウングレードする.
   スマートカードが挿入されていない場合のスマートカードリーダーの
   鍵列挙試行における共有の振舞いだ. bz#3058

 * ssh(1), ssh-keygen(1): do not unconditionally log in to PKCS#11
   tokens. Avoids spurious PIN prompts for keys not selected for
   authentication in ssh(1) and when listing public keys available in
   a token using ssh-keygen(1). bz#3006

   ssh(1), ssh-keygen(1): PKCS#11 トークンに絶対にログインしない.
   ssh(1) の認証で選択されていない鍵に対する偽のPINプロンプトや
   ssh-keygen(1) を用いたトークンで利用可能な公開鍵の列挙を防ぐ.

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

移植性

 * ssh(1): fix SIGWINCH delivery of Solaris for multiplexed sessions
   bz#3030

   ssh(1): 多重化されたセッションでの SIGWINCH 転送を修正. bz#3030

 * ssh(1), sshd(8): fix typo that prevented detection of Linux VRF

   ssh(1), sshd(8): Linux VRF での 予防された検出での typo を修正する

 * sshd(8): add no-op implementation of pam_putenv to avoid build
   breakage on platforms where the PAM implementation lacks this
   function (e.g. HP-UX). bz#3008

   sshd(8): PAMの実装が pam_putenv を欠いている (例えば HP-UX)
   プラットフォームでのビルドの失敗を回避するために pam_putenv の
   なにもしない実装を追加する. ba#3008

 * sftp-server(8): fix Solaris privilege sandbox from preventing
   the legacy sftp rename operation from working (was refusing to
   allow hard links to files owned by other users). bz#3036

   sftp-server(8): (ハードリンクを他のユーザが所有するファイルに対して拒否する)
   働きから レガシーな sftp の rename 操作を防止するSolaris
   の特権サンドボックスを修正する.

 * All: add a proc_pidinfo()-based closefrom() for OS X to avoid
   the need to brute-force close all high-numbered file descriptors.
   bz#3049

   proc_pidinfo() ベースの closefrom() を OS X に追加する.
   すべてのファイルデスクリプタをブルートフォースで閉める必要を
   回避する.

 * sshd(8): in the Linux seccomp-bpf sandbox, allow mprotect(2) with
   PROT_(READ|WRITE|NONE) only. This syscall is used by some hardened
   heap allocators. Github PR#142

   sshd(8): Linux の seccomp-bpf サンドボックス中で, PROT_(READ|WRITE|NONE) 
   のみを mprotect(2) に許す. このシステムコールは, いくかの強化された
   ヒープアロケーターで用いられている. Github PR#142

 * sshd(8): in the Linux seccomp-bpf sandbox, allow the s390-specific
   ioctl for ecc hardware support.

   sshd(8): Linux の seccomp-bpf サンドボックス中で, ecc のハードウェア
   サポートのために s390 特有の ioctl を許可する.

 * All: use "doc" man page format if the mandoc(1) tool is present on
   the system. Previously configure would not select the "doc" man
   page format if mandoc was present but nroff was not.

   All: mandoc(1) ツールがシステムにある場合 "doc" man ページ形式を
   利用する. 以前の設定では, mandoc が存在し nroff が存在しない倍に
   "doc" man ページ形式を選択していなかった.

 * sshd(8): don't install duplicate STREAMS modules on Solaris; check
   if STREAMS modules are already installed on a pty before installing
   since when compiling with XPG>=4 they will likely be installed
   already. Prevents hangs and duplicate lines on the terminal.
   bz#2945 and bz#2998,

   sshd(8): ソラリスで重複した STREAMS モジュールをインストールしない.
   XPG>=4 でコンパイルする場合, STREAMS モジュールがインストールされている可能性が高いので
   インストール前に pty 上に STREAMS モジュールが既にインストールされているか
   検査する. ターミナル上でのハングや重複行を防ぐ. bz#2945 と bz#2998

Dynabook UZ63/L を購入し Ubuntu 19.04 を入れた

29 Sep, 2019 - 2 minutes

Dynabook UZ63/L 2019冬Webモデル オニキスブルー を購入しました. Windows 10 は消し, Ubuntu 19.04 をインストールしました.

その前に 2019年夏モデル LAVIE Pro Mobile 13.3型ワイド PM750・550/NAシリーズ(モバイルパソコン) を買おうと思ってたのですが, 手続きを進めておくと HTTPS で mixed content がありブラウザで鍵マークがでなくなってしまうので断念しました.

2019年02月 引っ越し 引っ越す理由編

31 May, 2019 - 3 minutes

2019年02月 に引っ越しました. だらだらと引っ越し関係の記事を書きます.

2015年05月 から 2019年02月 までは 東京都新宿区市谷本村町に住んでいました. 前回の引っ越しでは, 会社の設立のために登記可能かつ居住可能な物件を探して すぐに見つかった物件にしました. これは運が良かったです.

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

18 Apr, 2019 - 10 minutes

2019/04/17, OpenSSH 8.0 がリリースされました.

https://www.openssh.com/txt/release-8.0

Security
========

セキュリティ

This release contains mitigation for a weakness in the scp(1) tool
and protocol (CVE-2019-6111): when copying files from a remote system
to a local directory, scp(1) did not verify that the filenames that
the server sent matched those requested by the client. This could
allow a hostile server to create or clobber unexpected local files
with attacker-controlled content.

このリリースは, scp(1) ツールとプロトコルの問題 (CVE-2019-6111) の緩和を含んでいる:
リモートのシステムからローカルのディレクトリにファイルをコピーする際に,
scp(1) は, サーバが送信したファイル名がクライアントによって要求されたものと
一致するかどうかを検証していない. これを利用して, 悪意のあるサーバが攻撃者が
制御する内容で予期しないローカルファイルを作成したり変更する可能性がある.

This release adds client-side checking that the filenames sent from
the server match the command-line request,

このリリースでサーバから送られたファイル名がコマンドラインの要求と
一致するかどうかのクライアント側でのチェックを追加する.

The scp protocol is outdated, inflexible and not readily fixed. We
recommend the use of more modern protocols like sftp and rsync for
file transfer instead.

scp プロトコルは時代遅れで, 柔軟性がなく, 簡単に修正できない.
ファイル転送には scp の代わりに sftp や rsync にようなより
現代的なプロトコルの利用を推奨する.

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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するかもしれない変更がいくつか含まれている:

 * scp(1): Relating to the above changes to scp(1); the scp protocol
   relies on the remote shell for wildcard expansion, so there is no
   infallible way for the client's wildcard matching to perfectly
   reflect the server's. If there is a difference between client and
   server wildcard expansion, the client may refuse files from the
   server. For this reason, we have provided a new "-T" flag to scp
   that disables these client-side checks at the risk of
   reintroducing the attack described above.

   scp(1): 前述の変更に関係: scp プロトコルはリモートシェル上の
   ワイルドカード展開に依存している. そのため, クライアントの
   ワイルドカードの一致に対してサーバのそれを反映する絶対確実な
   方法は存在しない. クライアントとサーバのワイルドカード展開が
   異なる場合, クライアントはサーバからのファイルを拒否するかもしれない.
   このため, 我々は 新しい "-T" フラグを scp に提供する.
   これは, 前述した攻撃を再導入するリスクを承知の上でこれらのクライアント側の
   チェックを無効にする.

 * sshd(8): Remove support for obsolete "host/port" syntax. Slash-
   separated host/port was added in 2001 as an alternative to
   host:port syntax for the benefit of IPv6 users. These days there
   are establised standards for this like [::1]:22 and the slash
   syntax is easily mistaken for CIDR notation, which OpenSSH
   supports for some things. Remove the slash notation from
   ListenAddress and PermitOpen; bz#2335

   sshd(8): 旧式の "host/port" 構文のサポートを除く. スラッシュ区切りの
   host/port は IPv6 ユーザのために host:port 構文の代替として 2001 年に
   追加された. [::1]:22 のような確立した標準が最近は存在し,
   スラッシュ構文は OpenSSH でもサポートしている箇所がある
   CIDR 表記と間違えやすい. ListenAddress と PermitOpen から
   スラッシュ表記を除く; bz#2335

Changes since OpenSSH 7.9
=========================

OpenSSH 7.9 からの変更

This release is focused on new features and internal refactoring.

このリリースは, 新しい機能と内部のリファクタリグに重点を置いている.

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

新機能

 * ssh(1), ssh-agent(1), ssh-add(1): Add support for ECDSA keys in
   PKCS#11 tokens.

   ssh(1), ssh-agent(1), ssh-add(1): PKCS#11 トークン中の ECDSA 鍵
   のサポートを追加する.

 * ssh(1), sshd(8): Add experimental quantum-computing resistant
   key exchange method, based on a combination of Streamlined NTRU
   Prime 4591^761 and X25519.

   ssh(1), sshd(8): 実験的な量子コンピューティング耐性鍵交換法を
   追加する. Streamlined NTRU 4591^761 と X25519 の組合せに基づく.

 * ssh-keygen(1): Increase the default RSA key size to 3072 bits,
   following NIST Special Publication 800-57's guidance for a
   128-bit equivalent symmetric security level.

   ssh-keygen(1): デフォルトの RSA 鍵のサイズを 3072 ビットに増やす.
   128 ビットの共通鍵暗号と同等のセキュリティレベルに対する
   NIST Special Publication 800-57 のガイダンスに従うため.

 * ssh(1): Allow "PKCS11Provider=none" to override later instances of
   the PKCS11Provider directive in ssh_config; bz#2974

   ssh(1): ssh_config で PKCS11Provider 設定項目の後の設定を上書きするため
   "PKCS11Provider=none" を許可する; bz#2974

 * sshd(8): Add a log message for situations where a connection is
   dropped for attempting to run a command but a sshd_config
   ForceCommand=internal-sftp restriction is in effect; bz#2960

   sshd(8): sshd_config での ForceCommand=internal-sftp 制限が有効にも
   かかわらず, コマンドを走らせようとして接続が落ちる場合のログ
   メッセージを追加する; bz#2960

 * ssh(1): When prompting whether to record a new host key, accept
   the key fingerprint as a synonym for "yes". This allows the user
   to paste a fingerprint obtained out of band at the prompt and
   have the client do the comparison for you.

   ssh(1): 新しいホスト鍵を記録するかどうかのプロンプトを出している場合に,
   鍵の指紋を "yes" の同意語として受けつける. これにより, ユーザが
   外部から得た指紋をペーストしてクライアントに比較させられる.

 * ssh-keygen(1): When signing multiple certificates on a single
   command-line invocation, allow automatically incrementing the
   certificate serial number.

   ssh-keygen(1): 単一のコマンドラインから複数の証明書に署名する場合,
   証明書のシリアル番号を自動的に増加させられるようになる.

 * scp(1), sftp(1): Accept -J option as an alias to ProxyJump on
   the scp and sftp command-lines.

   scp(1), sftp(1): scp と sftp のコマンドラインで ProxyJump の
   エイリアスとして -J オプションを受けつける.

 * ssh-agent(1), ssh-pkcs11-helper(8), ssh-add(1): Accept "-v"
   command-line flags to increase the verbosity of output; pass
   verbose flags though to subprocesses, such as ssh-pkcs11-helper
   started from ssh-agent.

   ssh-agent(1), ssh-pkcs11-helper(8), ssh-add(1): 出力の冗長性を
   増す "-v" コマンドラインオプションを受けつける. ssh-agent から
   起動される ssh-pkcs11-helper の場合のように, サブプロセスへ
   冗長オプションは渡される.

 * ssh-add(1): Add a "-T" option to allowing testing whether keys in
   an agent are usable by performing a signature and a verification.

   ssh-add(1): エージェント内で鍵が署名と検証の実行に利用できるかを
   テストすることを許す "-T" オプションを追加する.

 * sftp-server(8): Add a "lsetstat@openssh.com" protocol extension
   that replicates the functionality of the existing SSH2_FXP_SETSTAT
   operation but does not follow symlinks. bz#2067

   sftp-server(8): 既存の SSH2_FXP_SETSTAT の機能と同等だがシンボリックリンクは
   追従しない, "lsetstat@openssh.com" プロトコル拡張を追加する.

 * sftp(1): Add "-h" flag to chown/chgrp/chmod commands to request
   they do not follow symlinks.

   sftp(1): シンボリックリンクを追従しないように要求する "-h" フラグを
   chown/chgrp/chmod コマンドに追加する.

 * sshd(8): Expose $SSH_CONNECTION in the PAM environment. This makes
   the connection 4-tuple available to PAM modules that wish to use
   it in decision-making. bz#2741

   PAM 環境で $SSH_CONNECTION を露出する. これにより, 意思決定に
   $SSH_CONNECTION を利用したい PAM モジュールが 接続 4タプル
   (訳注: source ip, ocsp URL, issuer name hash, serial number) を
   利用できる. bz#2741

 * sshd(8): Add a ssh_config "Match final" predicate Matches in same
   pass as "Match canonical" but doesn't require hostname
   canonicalisation be enabled. bz#2906

   sshd(8): "Match canonical" と同じパスにマッチするが, ホスト名の
   正規化が有効なことを要求しない "Match final" 述語を ssh_config に
   追加する. bz#2906

 * sftp(1): Support a prefix of '@' to suppress echo of sftp batch
   commands; bz#2926

   sftp(1): sftp バッチコマンドのエコーを抑制する '@' プレフィックスを
   サポートする.

 * ssh-keygen(1): When printing certificate contents using
   "ssh-keygen -Lf /path/certificate", include the algorithm that
   the CA used to sign the cert.

   ssh-keygen(1): "ssh-keygen -Lf /path/certificate" を用いて
   証明書の内容を出力する場合に, 証明書に署名をした CA が用いた
   アルゴリズムを含める.

Bugfixes
--------

バグ修正

 * sshd(8): Fix authentication failures when sshd_config contains
   "AuthenticationMethods any" inside a Match block that overrides
   a more restrictive default.

   sshd(8): sshd_config が "AuthenticationMethods any" を Match ブロック
   内に含んでいて より制約のあるデフォルトを上書きしている場合の
   認証失敗を修正する.

 * sshd(8): Avoid sending duplicate keepalives when ClientAliveCount
   is enabled.

   sshd(8): ClientAliveCount が有効な場合に重複した keepalive の送信を
   やめる.

 * sshd(8): Fix two race conditions related to SIGHUP daemon restart.
   Remnant file descriptors in recently-forked child processes could
   block the parent sshd's attempt to listen(2) to the configured
   addresses. Also, the restarting parent sshd could exit before any
   child processes that were awaiting their re-execution state had
   completed reading it, leaving them in a fallback path.

   sshd(8): SIGHUP でのデーモン再起動に関連する 2 つの競合状態を修正する.
   最近フォークされた子プロセスの残りのファイルデスクリプタが
   親の sshd が 設定されたアドレスで listen(2) しようとするのを
   ブロックする場合があった. また, 再実行状態を待っていた子プロセスが
   読み取りを完了する前に親の sshd を再起動が終了し,
   フォールバックパスに子プロセスが残る場合があった.

 * ssh(1): Fix stdout potentially being redirected to /dev/null when
   ProxyCommand=- was in use.

   ssh(1): ProxyCommand=- を利用する場合に stdout が /dev/null に
   リダイレクトされる潜在的な可能性を修正する.

 * sshd(8): Avoid sending SIGPIPE to child processes if they attempt
   to write to stderr after their parent processes have exited;
   bz#2071

   sshd(8): 子プロセスが 親プロセスが終了した後で stderr に書きこもうと
   する場合に SIGPIPE を 子プロセスに送るのをやめる. bz#2071

 * ssh(1): Fix bad interaction between the ssh_config ConnectTimeout
   and ConnectionAttempts directives - connection attempts after the
   first were ignoring the requested timeout; bz#2918

   ssh_config の ConnectTimeout, と ConnectionAttempts 設定項目間の
   悪い相互作用を修正する.  1回目より後の接続試行で要求されたタイムアウトを
   無視していた. bz#2918

 * ssh-keyscan(1): Return a non-zero exit status if no keys were
   found; bz#2903

   ssh-keyscan(1): 鍵が見つからなかった場合に 0 でない終了ステータスを
   返す. bz#2903

 * scp(1): Sanitize scp filenames to allow UTF-8 characters without
   terminal control sequences;  bz#2434

   scp(1): 端末制御シーケンスを含まない UTF-8 文字列を許すように scp の
   ファイル名を無害化する; bz#2434

 * sshd(8): Fix confusion between ClientAliveInterval and time-based
   RekeyLimit that could cause connections to be incorrectly closed.
   bz#2757

   sshd(8): 接続を不正に終了させてしまう ClientAliveInterval と
   時間ベースの RekeyLimit の間の混乱を修正する. bz#2757

 * ssh(1), ssh-add(1): Correct some bugs in PKCS#11 token PIN
   handling at initial token login. The attempt to read the PIN
   could be skipped in some cases, particularly on devices with
   integrated PIN readers. This would lead to an inability to
   retrieve keys from these tokens. bz#2652

   ssh(1), ssh-add(1): 最初のトークンログイン時の PKCS#11 トークン
   PIN の扱いのいくつかのバグを修正する. いくつかの場合, 特に PIN 読み取り機が
   統合されたデバイス上で, PIN の 読み取りの試行がスキップされる場合があった.
   これにより, これらのトークンから鍵を取り出すことができなくなっていた.
   bz#2652

 * ssh(1), ssh-add(1): Support keys on PKCS#11 tokens that set the
   CKA_ALWAYS_AUTHENTICATE flag by requring a fresh login after the
   C_SignInit operation. bz#2638

   ssh(1), ssh-add(1): C_SignInit 操作の後に新しいログインを要求する
   CKA_ALWAYS_AUTHENTICATE フラグを設定する PKCS#11 トークンの鍵を
   サポートする.

 * ssh(1): Improve documentation for ProxyJump/-J, clarifying that
   local configuration does not apply to jump hosts.

   ssh(1): ProxyJump/-J の文書を改善し, ローカルの設定がホストのジャンプに
   適用されないことを明確にする.

 * ssh-keygen(1): Clarify manual - ssh-keygen -e only writes
   public keys, not private.

   ssh-keygen(1): マニュアルを明確化する. ssh-keygen -e は
   公開鍵のみ書き込み, 秘密鍵に書き込まない.

 * ssh(1), sshd(8): be more strict in processing protocol banners,
   allowing \r characters only immediately before \n.

   ssh(1), sshd(8): プロトコルバナーの処理をより厳格にする.
   \r 文字は \n の直前のみ許可する.

 * Various: fix a number of memory leaks, including bz#2942 and
   bz#2938

   いろいろ: たくさんのメモリリークを修正する, bz#2942 と bz#2938 を含む.

 * scp(1), sftp(1): fix calculation of initial bandwidth limits.
   Account for bytes written before the timer starts and adjust the
   schedule on which recalculations are performed. Avoids an initial
   burst of traffic and yields more accurate bandwidth limits;
   bz#2927

   scp(1), sftp(1): 最初の帯域制限の計算を修正する.
   タイマーがスタートする前の書き込みバイト数を考慮し,
   再計算が行なわれるスケジュールを調整する. 最初のトラフィックの
   バースを防ぎ, より正確な帯域制限を生成する; bz#2927

 * sshd(8): Only consider the ext-info-c extension during the initial
   key eschange. It shouldn't be sent in subsequent ones, but if it
   is present we should ignore it. This prevents sshd from sending a
   SSH_MSG_EXT_INFO for REKEX for buggy these clients. bz#2929

   sshd(8): 最初の鍵交換中の ext-intro-c 拡張のみを考慮する. 
   これは最初の鍵交換より後で送られるべきではないが, 送られても
   無視するべきだ. これにより, バグのあるクライアントに sshd が
   SSH_MSG_EXT_INFO を鍵交換のために送るのを防ぐ. bz#2929

 * ssh-keygen(1): Clarify manual that ssh-keygen -F (find host in 
   authorized_keys) and -R (remove host from authorized_keys) options
   may accept either a bare hostname or a [hostname]:port combo.
   bz#2935

   ssh-keygen(1): ssh-keygen -F (authorized_keys 中でホストをさがす) と
   -R (authorized_keys からホストを除く) オプションが生のホスト名も
   [hostname]:port の組合せも受け付けることをマニュアルで明確にする.
   bz#2935

 * ssh(1): Don't attempt to connect to empty SSH_AUTH_SOCK; bz#2936

   ssh(1): 空の SSH_AUTH_SOCK に接続しないようにする; bz#2936

 * sshd(8): Silence error messages when sshd fails to load some of
   the default host keys. Failure to load an explicitly-configured
   hostkey is still an error, and failure to load any host key is
   still fatal. pr/103

   sshd(8): sshd がデフォルトのホスト鍵のいくつかのロードに失敗した場合に
   エラーメッセージを出さなくする. 明示的に設定されたホスト鍵のロードの
   失敗は error のままで, どのホスト鍵のロードにも失敗したなら
   fatal のまま. pr/103

 * ssh(1): Redirect stderr of ProxyCommands to /dev/null when ssh is
   started with ControlPersist; prevents random ProxyCommand output
   from interfering with session output.

   ssh(1): ssh が ControlPersist で始まったなら, ProxyCommand の stderr
   は /dev/null にリダイレクトする. ランダムな ProxyCommand の出力が
   セッションの出力に干渉するのを防ぐ.

 * ssh(1): The ssh client was keeping a redundant ssh-agent socket
   (leftover from authentication) around for the life of the
   connection; bz#2912

   ssh(1): ssh のクラアイントは 冗長な ssh-agent ソケット (認証からの残り)
   を接続の間中保持していた; bz#2912

 * sshd(8): Fix bug in HostbasedAcceptedKeyTypes and
   PubkeyAcceptedKeyTypes options. If only RSA-SHA2 siganture types
   were specified, then authentication would always fail for RSA keys
   as the monitor checks only the base key (not the signature
   algorithm) type against *AcceptedKeyTypes. bz#2746

   HostbasedAcceptedKeyTypes と PubkeyAcceptedKeyTypes 設定項目の
   バグを修正する. RSA-SHA2 署名タイプのみ指定された場合,
   モニターが*AcceptedKeyTypes に対して  (署名アルゴリズムではなく)
   ベースの鍵のタイプのみをチェックし, 認証が RSA 鍵に対して常に失敗してしまう.

 * ssh(1): Request correct signature types from ssh-agent when
   certificate keys and RSA-SHA2 signatures are in use.

   ssh(1): 証明書の鍵と RSA-SHA2 署名を利用中に ssh-agent から
   正しい署名タイプを要求する.

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

移植性

 * sshd(8): On Cygwin, run as SYSTEM where possible, using S4U for
   token creation if it supports MsV1_0 S4U Logon.

   sshd(8): Cygwin 上で, MsV1_0 S4U ログオンをサポートしているならば
   トークンの生成に S4U を利用して, 可能ならば SYSTEM として走る

 * sshd(8): On Cygwin, use custom user/group matching code that
   respects the OS' behaviour of case-insensitive matching.

   sshd(8): Cygwin 上で, 大文字小文字を区別しない OS の振舞いを
   尊重したカスタムの user/group 一致コードを利用する.

 * sshd(8): Don't set $MAIL if UsePAM=yes as PAM typically specifies
   the user environment if it's enabled; bz#2937

   sshd(8): PAM が有効な場合に PAM が典型的にユーザの環境を設定するように
   UsePAM=yes の場合に $MAIL を設定しない. bz#2937

 * sshd(8) Cygwin: Change service name to cygsshd to avoid collision
   with Microsoft's OpenSSH port.

   sshd(8) Cygwin: Microsoft の OpenSSH 移植と衝突しないようにサービス名を
   cygssdh に変更する.

 * Allow building against OpenSSL -dev (3.x)

   OpenSSH 開発版 (3.x) でのビルドを可能にする

 * Fix a number of build problems against version configurations and
   versions of OpenSSL. Including bz#2931 and bz#2921

   OpenSSL のバージョン設定とバージョンに対するビルドのたくさんの問題を
   修正する. bz#2931 と bz#2921 を含む

 * Improve warnings in cygwin service setup. bz#2922

   cygwin のサービス設定での警告を改善する. bz#2922

 * Remove hardcoded service name in cygwin setup. bz#2922

   cygwin設定のでハードコードされたサービス名を除く. bz#2922

OpenSSH 8.0 リリース準備中 / Call for testing: OpenSSH 8.0

28 Mar, 2019 - 10 minutes

OpenSSH 8.0 がリリース準備中です.

Call for testing: OpenSSH 8.0

新機能とリファクタリングに重点がおかれたリリースになる模様です.

https://lists.mindrot.org/pipermail/openssh-unix-dev/2019-March/037672.html (暫定版)

Security
========

セキュリティ

This release contains mitigation for a weakness in the scp(1) tool
and protocol (CVE-2019-6111): when copying files from a remote system
to a local directory, scp(1) did not verify that the filenames that
the server sent matched those requested by the client. This could
allow a hostile server to create or clobber unexpected local files
with attacker-controlled content.

このリリースは, scp(1) ツールとプロトコルの問題 (CVE-2019-6111) の緩和を含んでいる:
リモートのシステムからローカルのディレクトリにファイルをコピーする際に,
scp(1) は, サーバが送信したファイル名がクライアントによって要求されたものと
一致するかどうかを検証していない. これを利用して, 悪意のあるサーバが攻撃者が
制御する内容で予期しないローカルファイルを作成したり変更する可能性がある.

This release adds client-side checking that the filenames sent from
the server match the command-line request,

このリリースでサーバから送られたファイル名がコマンドラインの要求と
一致するかどうかのクライアント側でのチェックを追加する.

The scp protocol is outdated, inflexible and not readily fixed. We
recommend the use of more modern protocols like sftp and rsync for
file transfer instead.

scp プロトコルは時代遅れで, 柔軟性がなく, 簡単に修正できない.
ファイル転送には scp の代わりに sftp や rsync にようなより
現代的なプロトコルの利用を推奨する.

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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するかもしれない変更がいくつか含まれている:

 * scp(1): Relating to the above changes to scp(1); the scp protocol
   relies on the remote shell for wildcard expansion, so there is no
   infallible way for the client's wildcard matching to perfectly
   reflect the server's. If there is a difference between client and
   server wildcard expansion, the client may refuse files from the
   server. For this reason, we have provided a new "-T" flag to scp
   that disables these client-side checks at the risk of
   reintroducing the attack described above.

   scp(1): 前述の変更に関係: scp プロトコルはリモートシェル上の
   ワイルドカード展開に依存している. そのため, クライアントの
   ワイルドカードの一致に対してサーバのそれを反映する絶対確実な
   方法は存在しない. クライアントとサーバのワイルドカード展開が
   異なる場合, クライアントはサーバからのファイルを拒否するかもしれない.
   このため, 我々は 新しい "-T" フラグを scp に提供する.
   これは, 前述した攻撃を再導入するリスクを承知の上でこれらのクライアント側の
   チェックを無効にする.

 * sshd(8): Remove support for obsolete "host/port" syntax. Slash-
   separated host/port was added in 2001 as an alternative to
   host:port syntax for the benefit of IPv6 users. These days there
   are establised standards for this like [::1]:22 and the slash
   syntax is easily mistaken for CIDR notation, which OpenSSH
   supports for some things. Remove the slash notation from
   ListenAddress and PermitOpen; bz#2335

   sshd(8): 旧式の "host/port" 構文のサポートを除く. スラッシュ区切りの
   host/port は IPv6 ユーザのために host:port 構文の代替として 2001 年に
   追加された. [::1]:22 のような確立した標準が最近は存在し,
   スラッシュ構文は OpenSSH でもサポートしている箇所がある
   CIDR 表記と間違えやすい. ListenAddress と PermitOpen から
   スラッシュ表記を除く; bz#2335

Changes since OpenSSH 7.9
=========================

OpenSSH 7.9 からの変更

This release is focused on new features and internal refactoring.

このリリースは, 新しい機能と内部のリファクタリグに重点を置いている.

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

新機能

 * ssh(1), ssh-agent(1), ssh-add(1): Add support for ECDSA keys in
   PKCS#11 tokens.

   ssh(1), ssh-agent(1), ssh-add(1): PKCS#11 トークン中の ECDSA 鍵
   のサポートを追加する.

 * ssh(1), sshd(8): Add experimental quantum-computing resistant
   key exchange method, based on a combination of Streamlined NTRU
   Prime 4591^761 and X25519.

   ssh(1), sshd(8): 実験的な量子コンピューティング耐性鍵交換法を
   追加する. Streamlined NTRU 4591^761 と X25519 の組合せに基づく.

 * ssh-keygen(1): Increase the default RSA key size to 3072 bits,
   following NIST Special Publication 800-57's guidance for a
   128-bit equivalent symmetric security level.

   ssh-keygen(1): デフォルトの RSA 鍵のサイズを 3072 ビットに増やす.
   128 ビットの共通鍵暗号と同等のセキュリティレベルに対する
   NIST Special Publication 800-57 のガイダンスに従うため.

 * ssh(1): Allow "PKCS11Provide=none" to override later instances of
   the PKCS11Provide directive in ssh_config; bz#2974

   ssh(1): ssh_config で PKCS11Provide 設定項目の後の設定を上書きするため
   "PKCS11Provide=none" を許可する; bz#2974

 * sshd(8): Add a log message for situations where a connection is
   dropped for attempting to run a command but a sshd_config
   ForceCommand=internal-sftp restriction is in effect; bz#2960

   sshd(8): sshd_config での ForceCommand=internal-sftp 制限が有効にも
   かかわらず, コマンドを走らせようとして接続が落ちる場合のログ
   メッセージを追加する; bz#2960

 * ssh(1): When prompting whether to record a new host key, accept
   the key fingerprint as a synonym for "yes". This allows the user
   to paste a fingerprint obtained out of band at the prompt and
   have the client do the comparison for you.

   ssh(1): 新しいホスト鍵を記録するかどうかのプロンプトを出している場合に,
   鍵の指紋を "yes" の同意語として受けつける. これにより, ユーザが
   外部から得た指紋をペーストしてクライアントに比較させられる.

 * ssh-keygen(1): When signing multiple certificates on a single
   command-line invocation, allow automatically incrementing the
   certificate serial number.

   ssh-keygen(1): 単一のコマンドラインから複数の証明書に署名する場合,
   証明書のシリアル番号を自動的に増加させられるようになる.

 * scp(1), sftp(1): Accept -J option as an alias to ProxyJump on
   the scp and sftp command-lines.

   scp(1), sftp(1): scp と sftp のコマンドラインで ProxyJump の
   エイリアスとして -J オプションを受けつける.

 * ssh-agent(1), ssh-pkcs11-helper(8), ssh-add(1): Accept "-v"
   command-line flags to increase the verbosity of output; pass
   verbose flags though to subprocesses, such as ssh-pkcs11-helper
   started from ssh-agent.

   ssh-agent(1), ssh-pkcs11-helper(8), ssh-add(1): 出力の冗長性を
   増す "-v" コマンドラインオプションを受けつける. ssh-agent から
   起動される ssh-pkcs11-helper の場合のように, サブプロセスへ
   冗長オプションは渡される.

 * ssh-add(1): Add a "-T" option to allowing testing whether keys in
   an agent are usable by performing a signature and a verification.

   ssh-add(1): エージェント内で鍵が署名と検証の実行に利用できるかを
   テストすることを許す "-T" オプションを追加する.

 * sftp-server(8): Add a "lsetstat@openssh.com" protocol extension
   that replicates the functionality of the existing SSH2_FXP_SETSTAT
   operation but does not follow symlinks. bz#2067

   sftp-server(8): 既存の SSH2_FXP_SETSTAT の機能と同等だがシンボリックリンクは
   追従しない, "lsetstat@openssh.com" プロトコル拡張を追加する.

 * sftp(1): Add "-h" flag to chown/chgrp/chmod commands to request
   they do not follow symlinks.

   sftp(1): シンボリックリンクを追従しないように要求する "-h" フラグを
   chown/chgrp/chmod コマンドに追加する.

 * sshd(8): Expose $SSH_CONNECTION in the PAM environment. This makes
   the connection 4-tuple available to PAM modules that wish to use
   it in decision-making. bz#2741

   PAM 環境で $SSH_CONNECTION を露出する. これにより, 意思決定に
   $SSH_CONNECTION を利用したい PAM モジュールが 接続 4タプル
   (訳注: source ip, ocsp URL, issuer name hash, serial number) を
   利用できる. bz#2741

 * sshd(8): Add a ssh_config "Match final" predicate Matches in same
   pass as "Match canonical" but doesn't require hostname
   canonicalisation be enabled. bz#2906

   sshd(8): "Match canonical" と同じパスにマッチするが, ホスト名の
   正規化が有効なことを要求しない "Match final" 述語を ssh_config に
   追加する. bz#2906

 * sftp(1): Support a prefix of '@' to suppress echo of sftp batch
   commands; bz#2926

   sftp(1): sftp バッチコマンドのエコーを抑制する '@' プレフィックスを
   サポートする.

 * ssh-keygen(1): When printing certificate contents using
   "ssh-keygen -Lf /path/certificate", include the algorithm that
   the CA used to sign the cert.

   ssh-keygen(1): "ssh-keygen -Lf /path/certificate" を用いて
   証明書の内容を出力する場合に, 証明書に署名をした CA が用いた
   アルゴリズムを含める.

Bugfixes
--------

バグ修正

 * sshd(8): Fix authentication failures when sshd_config contains
   "AuthenticationMethods any" inside a Match block that overrides
   a more restrictive default.

   sshd(8): sshd_config が "AuthenticationMethods any" を Match ブロック
   内に含んでいて より制約のあるデフォルトを上書きしている場合の
   認証失敗を修正する.

 * sshd(8): Avoid sending duplicate keepalives when ClientAliveCount
   is enabled.

   sshd(8): ClientAliveCount が有効な場合に重複した keepalive の送信を
   やめる.

 * sshd(8): Fix two race conditions related to SIGHUP daemon restart.
   Remnant file descriptors in recently-forked child processes could
   block the parent sshd's attempt to listen(2) to the configured
   addresses. Also, the restarting parent sshd could exit before any
   child processes that were awaiting their re-execution state had
   completed reading it, leaving them in a fallback path.

   sshd(8): SIGHUP でのデーモン再起動に関連する 2 つの競合状態を修正する.
   最近フォークされた子プロセスの残りのファイルデスクリプタが
   親の sshd が 設定されたアドレスで listen(2) しようとするのを
   ブロックする場合があった. また, 再実行状態を待っていた子プロセスが
   読み取りを完了する前に親の sshd を再起動が終了し,
   フォールバックパスに子プロセスが残る場合があった.

 * ssh(1): Fix stdout potentially being redirected to /dev/null when
   ProxyCommand=- was in use.

   ssh(1): ProxyCommand=- を利用する場合に stdout が /dev/null に
   リダイレクトされる潜在的な可能性を修正する.

 * sshd(8): Avoid sending SIGPIPE to child processes if they attempt
   to write to stderr after their parent processes have exited;
   bz#2071

   sshd(8): 子プロセスが 親プロセスが終了した後で stderr に書きこもうと
   する場合に SIGPIPE を 子プロセスに送るのをやめる. bz#2071

 * ssh(1): Fix bad interaction between the ssh_config ConnectTimeout
   and ConnectionAttempts directives - connection attempts after the
   first were ignoring the requested timeout; bz#2918

   ssh_config の ConnectTimeout, と ConnectionAttempts 設定項目間の
   悪い相互作用を修正する.  1回目より後の接続試行で要求されたタイムアウトを
   無視していた. bz#2918

 * ssh-keyscan(1): Return a non-zero exit status if no keys were
   found; bz#2903

   ssh-keyscan(1): 鍵が見つからなかった場合に 0 でない終了ステータスを
   返す. bz#2903

 * scp(1): Sanitize scp filenames to allow UTF-8 characters without
   terminal control sequences;  bz#2434

   scp(1): 端末制御シーケンスを含まない UTF-8 文字列を許すように scp の
   ファイル名を無害化する; bz#2434

 * sshd(8): Fix confusion between ClientAliveInterval and time-based
   RekeyLimit that could cause connections to be incorrectly closed.
   bz#2757

   sshd(8): 接続を不正に終了させてしまう ClientAliveInterval と
   時間ベースの RekeyLimit の間の混乱を修正する. bz#2757

 * ssh(1), ssh-add(1): Correct some bugs in PKCS#11 token PIN
   handling at initial token login. The attempt to read the PIN
   could be skipped in some cases, particularly on devices with
   integrated PIN readers. This would lead to an inability to
   retrieve keys from these tokens. bz#2652

   ssh(1), ssh-add(1): 最初のトークンログイン時の PKCS#11 トークン
   PIN の扱いのいくつかのバグを修正する. いくつかの場合, 特に PIN 読み取り機が
   統合されたデバイス上で, PIN の 読み取りの試行がスキップされる場合があった.
   これにより, これらのトークンから鍵を取り出すことができなくなっていた.
   bz#2652

 * ssh(1), ssh-add(1): Support keys on PKCS#11 tokens that set the
   CKA_ALWAYS_AUTHENTICATE flag by requring a fresh login after the
   C_SignInit operation. bz#2638

   ssh(1), ssh-add(1): C_SignInit 操作の後に新しいログインを要求する
   CKA_ALWAYS_AUTHENTICATE フラグを設定する PKCS#11 トークンの鍵を
   サポートする.

 * ssh(1): Improve documentation for ProxyJump/-J, clarifying that
   local configuration does not apply to jump hosts.

   ssh(1): ProxyJump/-J の文書を改善し, ローカルの設定がホストのジャンプに
   適用されないことを明確にする.

 * ssh-keygen(1): Clarify manual - ssh-keygen -e only writes
   public keys, not private.

   ssh-keygen(1): マニュアルを明確化する. ssh-keygen -e は
   公開鍵のみ書き込み, 秘密鍵に書き込まない.

 * ssh(1), sshd(8): be more strict in processing protocol banners,
   allowing \r characters only immediately before \n.

   ssh(1), sshd(8): プロトコルバナーの処理をより厳格にする.
   \r 文字は \n の直前のみ許可する.

 * Various: fix a number of memory leaks, including bz#2942 and
   bz#2938

   いろいろ: たくさんのメモリリークを修正する, bz#2942 と bz#2938 を含む.

 * scp(1), sftp(1): fix calculation of initial bandwidth limits.
   Account for bytes written before the timer starts and adjust the
   schedule on which recalculations are performed. Avoids an initial
   burst of traffic and yields more accurate bandwidth limits;
   bz#2927

   scp(1), sftp(1): 最初の帯域制限の計算を修正する.
   タイマーがスタートする前の書き込みバイト数を考慮し,
   再計算が行なわれるスケジュールを調整する. 最初のトラフィックの
   バースを防ぎ, より正確な帯域制限を生成する; bz#2927

 * sshd(8): Only consider the ext-info-c extension during the initial
   key eschange. It shouldn't be sent in subsequent ones, but if it
   is present we should ignore it. This prevents sshd from sending a
   SSH_MSG_EXT_INFO for REKEX for buggy these clients. bz#2929

   sshd(8): 最初の鍵交換中の ext-intro-c 拡張のみを考慮する. 
   これは最初の鍵交換より後で送られるべきではないが, 送られても
   無視するべきだ. これにより, バグのあるクライアントに sshd が
   SSH_MSG_EXT_INFO を鍵交換のために送るのを防ぐ. bz#2929

 * ssh-keygen(1): Clarify manual that ssh-keygen -F (find host in 
   authorized_keys) and -R (remove host from authorized_keys) options
   may accept either a bare hostname or a [hostname]:port combo.
   bz#2935

   ssh-keygen(1): ssh-keygen -F (authorized_keys 中でホストをさがす) と
   -R (authorized_keys からホストを除く) オプションが生のホスト名も
   [hostname]:port の組合せも受け付けることをマニュアルで明確にする.
   bz#2935

 * ssh(1): Don't attempt to connect to empty SSH_AUTH_SOCK; bz#2936

   ssh(1): 空の SSH_AUTH_SOCK に接続しないようにする; bz#2936

 * sshd(8): Silence error messages when sshd fails to load some of
   the default host keys. Failure to load an explicitly-configured
   hostkey is still an error, and failure to load any host key is
   still fatal. pr/103

   sshd(8): sshd がデフォルトのホスト鍵のいくつかのロードに失敗した場合に
   エラーメッセージを出さなくする. 明示的に設定されたホスト鍵のロードの
   失敗は error のままで, どのホスト鍵のロードにも失敗したなら
   fatal のまま. pr/103

 * ssh(1): Redirect stderr of ProxyCommands to /dev/null when ssh is
   started with ControlPersist; prevents random ProxyCommand output
   from interfering with session output.

   ssh(1): ssh が ControlPersist で始まったなら, ProxyCommand の stderr
   は /dev/null にリダイレクトする. ランダムな ProxyCommand の出力が
   セッションの出力に干渉するのを防ぐ.

 * ssh(1): The ssh client was keeping a redundant ssh-agent socket
   (leftover from authentication) around for the life of the
   connection; bz#2912

   ssh(1): ssh のクラアイントは 冗長な ssh-agent ソケット (認証からの残り)
   を接続の間中保持していた; bz#2912

 * sshd(8): Fix bug in HostbasedAcceptedKeyTypes and
   PubkeyAcceptedKeyTypes options. If only RSA-SHA2 siganture types
   were specified, then authentication would always fail for RSA keys
   as the monitor checks only the base key (not the signature
   algorithm) type against *AcceptedKeyTypes. bz#2746

   HostbasedAcceptedKeyTypes と PubkeyAcceptedKeyTypes 設定項目の
   バグを修正する. RSA-SHA2 署名タイプのみ指定された場合,
   モニターが*AcceptedKeyTypes に対して  (署名アルゴリズムではなく)
   ベースの鍵のタイプのみをチェックし, 認証が RSA 鍵に対して常に失敗してしまう.

 * ssh(1): Request correct signature types from ssh-agent when
   certificate keys and RSA-SHA2 signatures are in use.

   ssh(1): 証明書の鍵と RSA-SHA2 署名を利用中に ssh-agent から
   正しい署名タイプを要求する.

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

移植性

 * sshd(8): On Cygwin, run as SYSTEM where possible, using S4U for
   token creation if it supports MsV1_0 S4U Logon.

   sshd(8): Cygwin 上で, MsV1_0 S4U ログオンをサポートしているならば
   トークンの生成に S4U を利用して, 可能ならば SYSTEM として走る

 * sshd(8): On Cygwin, use custom user/group matching code that
   respects the OS' behaviour of case-insensitive matching.

   sshd(8): Cygwin 上で, 大文字小文字を区別しない OS の振舞いを
   尊重したカスタムの user/group 一致コードを利用する.

 * sshd(8): Don't set $MAIL if UsePAM=yes as PAM typically specifies
   the user environment if it's enabled; bz#2937

   sshd(8): PAM が有効な場合に PAM が典型的にユーザの環境を設定するように
   UsePAM=yes の場合に $MAIL を設定しない. bz#2937

 * sshd(8) Cygwin: Change service name to cygsshd to avoid collision
   with Microsoft's OpenSSH port.

   sshd(8) Cygwin: Microsoft の OpenSSH 移植と衝突しないようにサービス名を
   cygssdh に変更する.

 * Allow building against OpenSSL -dev (3.x)

   OpenSSH 開発版 (3.x) でのビルドを可能にする

 * Fix a number of build problems against version configurations and
   versions of OpenSSL. Including bz#2931 and bz#2921

   OpenSSL のバージョン設定とバージョンに対するビルドのたくさんの問題を
   修正する. bz#2931 と bz#2921 を含む

 * Improve warnings in cygwin service setup. bz#2922

   cygwin のサービス設定での警告を改善する. bz#2922

 * Remove hardcoded service name in cygwin setup. bz#2922

   cygwin設定のでハードコードされたサービス名を除く. bz#2922

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

19 Oct, 2018 - 4 minutes

2018/10/19, OpenSSH 7.9 がリリースされました.

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

https://www.openssh.com/txt/release-7.9

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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するかもしれない変更がいくつか含まれている:

 * ssh(1), sshd(8): the setting of the new CASignatureAlgorithms
   option (see below) bans the use of DSA keys as certificate
   authorities.

   ssh(1), sshd(8): (後述する)新しい CASignatureAlgorithms の設定が
   認証局での DSA 鍵の利用を禁止する.

 * sshd(8): the authentication success/failure log message has
   changed format slightly. It now includes the certificate
   fingerprint (previously it included only key ID and CA key
   fingerprint).

   sshd(8): 認証成功/失敗ログメッセージの形式が少し変わる.
   証明書の指紋も含むようになる (以前は 鍵の ID と認証局の
   鍵の指紋のみを含んでいた).

Changes since OpenSSH 7.8
=========================

This is primarily a bugfix release.

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

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

新機能

 * ssh(1), sshd(8): allow most port numbers to be specified using
   service names from getservbyname(3) (typically /etc/services).

   ssh(1), sshd(8): (典型的に /etc/services に記載される) getservbyname(3
   からのサービス名を用いたほとんどのポート番号の指定を許可する.

 * ssh(1): allow the IdentityAgent configuration directive to accept
   environment variable names. This supports the use of multiple
   agent sockets without needing to use fixed paths.

   ssh(1): IdentityAgent 設定項目が環境変数名を受け入れる. これにより,
   固定したパスの利用を必要とせずに複数のエージェントソケットの
   利用をサポートする.

 * sshd(8): support signalling sessions via the SSH protocol.
   A limited subset of signals is supported and only for login or
   command sessions (i.e. not subsystems) that were not subject to
   a forced command via authorized_keys or sshd_config. bz#1424

   sshd(8): SSH プロトコル経由のセッションでのシグナルをサポートする.
   制限されたシグナルのサブセットがサポートされ, ログインセッションか
   authorized_keys や sshd_config でコマンドを強制されていないコマンド
   セッションでのみ利用できる (すなわちサブシステムでは無効).

 * ssh(1): support "ssh -Q sig" to list supported signature options.
   Also "ssh -Q help" to show the full set of supported queries.

   ssh(1): "ssh -Q sig" でサポートされた署名オプションを列挙する.
   また, "ssh -Q help" でサポートされた検索のフルセットを示す.

 * ssh(1), sshd(8): add a CASignatureAlgorithms option for the
   client and server configs to allow control over which signature
   formats are allowed for CAs to sign certificates. For example,
   this allows banning CAs that sign certificates using the RSA-SHA1
   signature algorithm.

   ssh(1), sshd(8): CASignatureAlgorithms 設定項目を追加する.
   クライアントとサーバの設定で, 認証局が証明書に署名する
   署名の形式を制御できるようになる. 例えば, RSA-SHA1 署名
   アルゴリズムを用いて証明書に署名する認証局を禁止できる.

 * sshd(8), ssh-keygen(1): allow key revocation lists (KRLs) to
   revoke keys specified by SHA256 hash.

   sshd(8), ssh-keygen(1): 鍵失効リスト(KRL) で SHA256 ハッシュで
   鍵を指定して無効にできる.

 * ssh-keygen(1): allow creation of key revocation lists directly
   from base64-encoded SHA256 fingerprints. This supports revoking
   keys using only the information contained in sshd(8)
   authentication log messages.

   ssh-keygen(1): base64 エンコードされた SHA256 指紋から直接
   鍵失効リストを作成できる. sshd(8) の認証ログメッセージに含まれる
   情報だけから鍵を失効できる.

Bugfixes
--------

バグ修正

 * ssh(1), ssh-keygen(1): avoid spurious "invalid format" errors when
   attempting to load PEM private keys while using an incorrect
   passphrase. bz#2901

   ssh(1), ssh-keygen(1): 不正なパスフレーズを用いて PEM 秘密鍵を
   ロードしようとした際のおかしな "invalid format" エラーを回避する.

 * sshd(8): when a channel closed message is received from a client,
   close the stderr file descriptor at the same time stdout is
   closed. This avoids stuck processes if they were waiting for
   stderr to close and were insensitive to stdin/out closing. bz#2863

   sshd(8): クライアントからチャンネルを閉じるメッセージを受け取った際に
   stdout が閉じるのと同時に stderr ファイルディスクリプタを閉じる.
   stderr が閉じられるのを待ち stdin/out が閉じられても感知しない
   プロセスが動かなくなるのを避ける. bz#2863

 * ssh(1): allow ForwardX11Timeout=0 to disable the untrusted X11
   forwarding timeout and support X11 forwarding indefinitely.
   Previously the behaviour of ForwardX11Timeout=0 was undefined.

   ssh(1): 信用されていない X11 転送のタイムアウトを無効にし 無期限に
   X11 転送をサポートする ForwardX11Timeout=0 設定が可能になる.
   以前は ForwardX11Timeout=0 の振舞いは未定義だった.

 * sshd(8): when compiled with GSSAPI support, cache supported method
   OIDs regardless of whether GSSAPI authentication is enabled in the
   main section of sshd_config. This avoids sandbox violations if
   GSSAPI authentication was later enabled in a Match block. bz#2107

   sshd(8): GSSAPI サポートありでコンパイルされた場合, sshd_config の
   メイン部分で GSSAPI が有効かどうかに関係なくサポートされた
   メソッドの OID をキャッシュする. GSSAPI 認証が後で Match ブロックで
   有効になった場合に, サンドボックスの破壊を避ける.

 * sshd(8): do not fail closed when configured with a text key
   revocation list that contains a too-short key. bz#2897

   sshd(8): 非常に短い鍵を含むテキストの鍵失効リストありで設定した
   場合に失敗しない. bz#2897
   (https://bugzilla.mindrot.org/show_bug.cgi?id=2897 によると 7.6
   以降でログインできなくなる模様)

 * ssh(1): treat connections with ProxyJump specified the same as
   ones with a ProxyCommand set with regards to hostname
   canonicalisation (i.e. don't try to canonicalise the hostname
   unless CanonicalizeHostname is set to 'always'). bz#2896

   ssh(1): ホスト名正規化に関して ProxyJump で指定された接続を
   ProxyCommand で設定された接続と同じように扱う (すなわち,
   CanonicalizeHostname が 'always' に設定されていなければ
   ホスト名の正規化を試みない). bz#2896

 * ssh(1): fix regression in OpenSSH 7.8 that could prevent public-
   key authentication using certificates hosted in a ssh-agent(1)
   or against sshd(8) from OpenSSH <7.8.

   ssh(1): OpenSSH 7.8 より前の ssh-agent(1) で保持された
   証明書にを用いたもしくは OpenSSH 7.8 より前の sshd(8)に対する
   公開鍵認証が妨げられる OpenSSH 7.8 での 退行を修正する.

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

移植性

 * All: support building against the openssl-1.1 API (releases 1.1.0g
   and later). The openssl-1.0 API will remain supported at least
   until OpenSSL terminates security patch support for that API version.

   すべて: openssl-1.1 API (リリース 1.1.0g 以降)
   に対するビルドをサポートする. openssl-1.0 API は 少なくとも 
   1.0 API へのセキュリティパッチサポートを
   OpenSSL が止めるまではサポートされるだろう.

 * sshd(8): allow the futex(2) syscall in the Linux seccomp sandbox;
   apparently required by some glibc/OpenSSL combinations.

   sshd(8): Linux seccomp サンドボックスで futex(2) システムコールを
   許可する; いくつかの glibc/OpenSSL の組合せで必要となる模様だ.

 * sshd(8): handle getgrouplist(3) returning more than
   _SC_NGROUPS_MAX groups. Some platforms consider this limit more
   as a guideline.

   sshd(8): _SC_NGROUPS_MAX よりも多いグループを返す getgrouplist(3)
   を扱う. いくつかのプラットフォームはこの制限をガイドラインとして
   考慮している.

OpenSSH 7.9 リリース準備中 / Call for testing: OpenSSH 7.9

11 Oct, 2018 - 4 minutes

OpenSSH 7.9 がリリース準備中です.

Call for testing: OpenSSH 7.9

主にバグ修正のリリースです.

https://lists.mindrot.org/pipermail/openssh-unix-dev/2018-October/037245.html (暫定版)

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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するかもしれない変更がいくつか含まれている:

 * ssh(1), sshd(8): the setting of the new CASignatureAlgorithms
   option (see below) bans the use of DSA keys as certificate
   authorities.

   ssh(1), sshd(8): (後述する)新しい CASignatureAlgorithms の設定が
   認証局での DSA 鍵の利用を禁止する.

 * sshd(8): the authentication success/failure log message has
   changed format slightly. It now includes the certificate
   fingerprint (previously it included only key ID and CA key
   fingerprint).

   sshd(8): 認証成功/失敗ログメッセージの形式が少し変わる.
   証明書の指紋も含むようになる (以前は 鍵の ID と認証局の
   鍵の指紋のみを含んでいた).

Changes since OpenSSH 7.8
=========================

This is primarily a bugfix release.

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

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

新機能

 * ssh(1), sshd(8): allow most port numbers to be specified using
   service names from getservbyname(3) (typically /etc/services).

   ssh(1), sshd(8): (典型的に /etc/services に記載される) getservbyname(3
   からのサービス名を用いたほとんどのポート番号の指定を許可する.

 * ssh(1): allow the IdentityAgent configuration directive to accept
   environment variable names. This supports the use of multiple
   agent sockets without needing to use fixed paths.

   ssh(1): IdentityAgent 設定項目が環境変数名を受け入れる. これにより,
   固定したパスの利用を必要とせずに複数のエージェントソケットの
   利用をサポートする.

 * sshd(8): support signalling sessions via the SSH protocol.
   A limited subset of signals is supported and only for login or
   command sessions (i.e. not subsystems) that were not subject to
   a forced command via authorized_keys or sshd_config. bz#1424

   sshd(8): SSH プロトコル経由のセッションでのシグナルをサポートする.
   制限されたシグナルのサブセットがサポートされ, ログインセッションか
   authorized_keys や sshd_config でコマンドを強制されていないコマンド
   セッションでのみ利用できる (すなわちサブシステムでは無効).

 * ssh(1): support "ssh -Q sig" to list supported signature options.
   Also "ssh -Q help" to show the full set of supported queries.

   ssh(1): "ssh -Q sig" でサポートされた署名オプションを列挙する.
   また, "ssh -Q help" でサポートされた検索のフルセットを示す.

 * ssh(1), sshd(8): add a CASignatureAlgorithms option for the
   client and server configs to allow control over which signature
   formats are allowed for CAs to sign certificates. For example,
   this allows banning CAs that sign certificates using the RSA-SHA1
   signature algorithm.

   ssh(1), sshd(8): CASignatureAlgorithms 設定項目を追加する.
   クライアントとサーバの設定で, 認証局が証明書に署名する
   署名の形式を制御できるようになる. 例えば, RSA-SHA1 署名
   アルゴリズムを用いて証明書に署名する認証局を禁止できる.

 * sshd(8), ssh-keygen(1): allow key revocation lists (KRLs) to
   revoke keys specified by SHA256 hash.

   sshd(8), ssh-keygen(1): 鍵失効リスト(KRL) で SHA256 ハッシュで
   鍵を指定して無効にできる.

 * ssh-keygen(1): allow creation of key revocation lists directly
   from base64-encoded SHA256 fingerprints. This supports revoking
   keys using only the information contained in sshd(8)
   authentication log messages.

   ssh-keygen(1): base64 エンコードされた SHA256 指紋から直接
   鍵失効リストを作成できる. sshd(8) の認証ログメッセージに含まれる
   情報だけから鍵を失効できる.

Bugfixes
--------

バグ修正

 * ssh(1), ssh-keygen(1): avoid spurious "invalid format" errors when
   attempting to load PEM private keys while using an incorrect
   passphrase. bz#2901

   ssh(1), ssh-keygen(1): 不正なパスフレーズを用いて PEM 秘密鍵を
   ロードしようとした際のおかしな "invalid format" エラーを回避する.

 * sshd(8): when a channel closed message is received from a client,
   close the stderr file descriptor at the same time stdout is
   closed. This avoids stuck processes if they were waiting for
   stderr to close and were insensitive to stdin/out closing. bz#2863

   sshd(8): クライアントからチャンネルを閉じるメッセージを受け取った際に
   stdout が閉じるのと同時に stderr ファイルディスクリプタを閉じる.
   stderr が閉じられるのを待ち stdin/out が閉じられても感知しない
   プロセスが動かなくなるのを避ける. bz#2863

 * ssh(1): allow ForwardX11Timeout=0 to disable the untrusted X11
   forwarding timeout and support X11 forwarding indefinitely.
   Previously the behaviour of ForwardX11Timeout=0 was undefined.

   ssh(1): 信用されていない X11 転送のタイムアウトを無効にし 無期限に
   X11 転送をサポートする ForwardX11Timeout=0 設定が可能になる.
   以前は ForwardX11Timeout=0 の振舞いは未定義だった.

 * sshd(8): when compiled with GSSAPI support, cache supported method
   OIDs regardless of whether GSSAPI authentication is enabled in the
   main section of sshd_config. This avoids sandbox violations if
   GSSAPI authentication was later enabled in a Match block. bz#2107

   sshd(8): GSSAPI サポートありでコンパイルされた場合, sshd_config の
   メイン部分で GSSAPI が有効かどうかに関係なくサポートされた
   メソッドの OID をキャッシュする. GSSAPI 認証が後で Match ブロックで
   有効になった場合に, サンドボックスの破壊を避ける.

 * sshd(8): do not fail closed when configured with a text key
   revocation list that contains a too-short key. bz#2897

   sshd(8): 非常に短い鍵を含むテキストの鍵失効リストありで設定した
   場合に失敗しない. bz#2897
   (https://bugzilla.mindrot.org/show_bug.cgi?id=2897 によると 7.6
   以降でログインできなくなる模様)

 * ssh(1): treat connections with ProxyJump specified the same as
   ones with a ProxyCommand set with regards to hostname
   canonicalisation (i.e. don't try to canonicalise the hostname
   unless CanonicalizeHostname is set to 'always'). bz#2896

   ssh(1): ホスト名正規化に関して ProxyJump で指定された接続を
   ProxyCommand で設定された接続と同じように扱う (すなわち,
   CanonicalizeHostname が 'always' に設定されていなければ
   ホスト名の正規化を試みない). bz#2896

 * ssh(1): fix regression in OpenSSH 7.8 that could prevent public-
   key authentication using certificates hosted in a ssh-agent(1)
   or against sshd(8) from OpenSSH <7.8.

   ssh(1): OpenSSH 7.8 より前の ssh-agent(1) で保持された
   証明書にを用いたもしくは OpenSSH 7.8 より前の sshd(8)に対する
   公開鍵認証が妨げられる OpenSSH 7.8 での 退行を修正する.

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

移植性

 * All: support building against the openssl-1.1 API. The
   openssl-1.0 API will remain supported at least until OpenSSL
   terminates security patch support for that API version.

   すべて: openssl-1.1 API に対するビルドをサポートする. openssl-1.0
   API は 少なくとも 1.0 API へのセキュリティパッチサポートを
   OpenSSL が止めるまではサポートされるだろう.

 * sshd(8): allow the futex(2) syscall in the Linux seccomp sandbox;
   apparently required by some glibc/OpenSSL combinations.

   sshd(8): Linux seccomp サンドボックスで futex(2) システムコールを
   許可する; いくつかの glibc/OpenSSL の組合せで必要となる模様だ.

 * sshd(8): handle getgrouplist(3) returning more than
   _SC_NGROUPS_MAX groups. Some platforms consider this limit more
   as a guideline.

   sshd(8): _SC_NGROUPS_MAX よりも多いグループを返す getgrouplist(3)
   を扱う. いくつかのプラットフォームはこの制限をガイドラインとして
   考慮している.

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

24 Aug, 2018 - 7 minutes

2018/08/24, OpenSSH 7.8 がリリースされました.

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

https://www.openssh.com/txt/release-7.8

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

潜在的に非互換な変更

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

このリリースは既存の設定に影響するかもしれないいくつかの変更を含む:

 * ssh-keygen(1): write OpenSSH format private keys by default
   instead of using OpenSSL's PEM format. The OpenSSH format,
   supported in OpenSSH releases since 2014 and described in the
   PROTOCOL.key file in the source distribution, offers substantially
   better protection against offline password guessing and supports
   key comments in private keys. If necessary, it is possible to write
   old PEM-style keys by adding "-m PEM" to ssh-keygen's arguments
   when generating or updating a key.

   ssh-keygen(1): デフォルトでOpenSSL の PEM 形式を使う代わりに
   OpenSSH 形式の秘密鍵を書き込む. OpenSSH 形式は,
   2014 年以降の OpenSSH のリリースでサポートされており,
   ソース配布の PROTOCOL.key ファイルで記述されている.
   この形式は, オフラインのパスワード推測に対して実質的に
   よりよい保護を提供し, 秘密鍵の中の鍵コメントをサポートしている.
   必要があれば,  鍵を生成したり更新する際に ssh-keygen の引数に
   "-m PEM" と加えることで古い PEM 形式の鍵を書き込むことが可能だ.

 * sshd(8): remove internal support for S/Key multiple factor
   authentication. S/Key may still be used via PAM or BSD auth.

   sshd(8): S/Key 多要素認証の内部サポートを除く. S/Key は
   PAM か BSD認証経由でまだ利用できるだろう.

 * ssh(1): remove vestigal support for running ssh(1) as setuid. This
   used to be required for hostbased authentication and the (long
   gone) rhosts-style authentication, but has not been necessary for
   a long time. Attempting to execute ssh as a setuid binary, or with
   uid != effective uid will now yield a fatal error at runtime.

   ssh(1): ssh(1) を setuid で走らせる痕跡のないサポートを除く.
   これは, ホストベース認証や (太古の) rhost 認証で必要とされていた
   ものだが, 長い間必要がなくなっている. ssh を setuid バイナリとして
   実行しようとしたり, uid と実効 uid が異なる状態で実効しようとすると
   今後実行時に致命的エラーを生成するようになる

 * sshd(8): the semantics of PubkeyAcceptedKeyTypes and the similar
   HostbasedAcceptedKeyTypes options have changed. These now specify
   signature algorithms that are accepted for their respective
   authentication mechanism, where previously they specified accepted
   key types. This distinction matters when using the RSA/SHA2
   signature algorithms "rsa-sha2-256", "rsa-sha2-512" and their
   certificate counterparts. Configurations that override these
   options but omit these algorithm names may cause unexpected
   authentication failures (no action is required for configurations
   that accept the default for these options).

   sshd(8): PubkeyAcceptedKeyTypes と類似の HostbasedAcceptedKeyTypes
   設定項目の形式を変更する. これらは, 今後それらそれぞれの
   認証メカニズムで受けいれる署名アルゴリズムを指定できる.
   以前は受け入れる鍵のタイプを指定していた. RSA/SHA2 の署名アルゴリズム
   "rsa-sha2-256" と "rsa-sha2-512" と それらの証明書を用いる場合に
   この区別が意味を持つ.
   これらの設定項目を上書きするがこれらのアルゴリズム名を除いた
   設定は, 予期しない認証の失敗を引き起すかもしれない.
   (これらのの設定項目についてデフォルトのままの設定であればなにも
   対応の必要はない).

 * sshd(8): the precedence of session environment variables has
   changed. ~/.ssh/environment and environment="..." options in
   authorized_keys files can no longer override SSH_* variables set
   implicitly by sshd.

   sshd(8): セッション変数の設定の優先順位を変更する. ~/.ssh/environment
   と authorized_keys 中の environment="..." オプションは,
   ssdh で暗黙的に設定される SSH_* 変数をもはや上書きできない.

 * ssh(1)/sshd(8): the default IPQoS used by ssh/sshd has changed.
   They will now use DSCP AF21 for interactive traffic and CS1 for
   bulk.  For a detailed rationale, please see the commit message:
   https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/readconf.c#rev1.284

   ssh(1)/sshd(8): ssh/sshd で用いられるデフォルトの IPQoS を変更する.
   今後 インタラクティブなトラフィックでは DSCP AF21 を用い,
   バルクなトラフィックでは CS1 を用いる. 詳細な根拠は,
   次のコミットメッセージを参照:
   https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/readconf.c#rev1.284

Changes since OpenSSH 7.7
=========================

OpenSSH 7.7 からの変更点

This is primarily a bugfix release.

これは基本的にバグ修正のリリースだ.

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

新機能

 * ssh(1)/sshd(8): add new signature algorithms "rsa-sha2-256-cert-
   v01@openssh.com" and "rsa-sha2-512-cert-v01@openssh.com" to
   explicitly force use of RSA/SHA2 signatures in authentication.

   ssh(1)/sshd(8): 新しい署名アルゴリズム
   "rsa-sha2-256-cert-v01@openssh.com" と
   "rsa-sha2-512-cert-v01@openssh.com" を追加する.
   これらは 認証での RSA/SHA2 署名を明示的に強制する.

 * sshd(8): extend the PermitUserEnvironment option to accept a
   whitelist of environment variable names in addition to global
   "yes" or "no" settings.

   sshd(8): PermitUserEnvironment 設定項目を拡張し,
   全体の "yes" か "no" の設定に加えて, 環境変数名のホワイトリスト
   を受け入れる.

 * sshd(8): add a PermitListen directive to sshd_config(5) and a
   corresponding permitlisten= authorized_keys option that control
   which listen addresses and port numbers may be used by remote
   forwarding (ssh -R ...).

   sshd(8): sshd_config(5) に PermitListen 設定項目を追加し,
   対応する permitlisten= authorized_keys オプションを追加する.
   これらは, リモート転送 (ssh -R ...) で用いられる
   アドレスとポート番号を制御する.

 * sshd(8): add some countermeasures against timing attacks used for
   account validation/enumeration. sshd will enforce a minimum time
   or each failed authentication attempt consisting of a global 5ms
   minimum plus an additional per-user 0-4ms delay derived from a
   host secret.

   sshd(8): アカウント検証/列挙に用いられるタイミング攻撃に対する
   いくつかの対抗策を追加する. sshd は 
   全体的な 5ms と
   ホストの秘密(鍵?)から導出されるユーザごとの 追加の 0-4ms の
   によって構成される時間をすべての失敗した認証試行に強制する.

 * sshd(8): add a SetEnv directive to allow an administrator to
   explicitly specify environment variables in sshd_config.
   Variables set by SetEnv override the default and client-specified
   environment.

   sshd(8): SetEnv 設定項目で sshd_config 内の環境変数を
   管理者が明示的に指定できるようにする. SetEnv で設定された
   変数は, デフォルトやクライアントに指定された環境を上書きする.

 * ssh(1): add a SetEnv directive to request that the server sets
   an environment variable in the session. Similar to the existing
   SendEnv option, these variables are set subject to server
   configuration.

   ssh(1): SetEnv 設定項目に セッション中にサーバが環境変数を設定する要求を
   追加する. 既存の SendEnv 設定項目と同様に, これらの変数はサーバの
   設定に従って設定される.

 * ssh(1): allow "SendEnv -PATTERN" to clear environment variables
   previously marked for sending to the server. bz#1285

   ssh(1): サーバに送られたと以前マークされた環境変数を
   クリアする "SendEnv -PATTERN" を許可する.

 * ssh(1)/sshd(8): make UID available as a %-expansion everywhere
   that the username is available currently. bz#2870

   ssh(1)/sshd(8): ユーザ名が現在利用可能などこでも %-展開として
   UID を利用可能にする. bz#2870

 * ssh(1): allow setting ProxyJump=none to disable ProxyJump
   functionality. bz#2869

   ssh(1): ProxyJump を機能的に無効にする ProxyJump=none の設定を
   許可する.

Bugfixes
--------

バグ修正

 * sshd(8): avoid observable differences in request parsing that could
   be used to determine whether a target user is valid.

   sshd(8): ターゲットのユーザが有効かどうか判定するのに利用可能だった
   リクエストのパースの観測可能な差異を除く

 * all: substantial internal refactoring

   全体: 相当な内部のリファクタリング

 * ssh(1)/sshd(8): fix some memory leaks; bz#2366

   ssh(1)/sshd(8): いくつかのメモリリークの修正; bz#2366

 * ssh(1): fix a pwent clobber (introduced in openssh-7.7) that could
   occur during key loading, manifesting as crash on some platforms.

   ssh(1): (openssh-7.7 で導入されてしまった) pwent clobber 
   (ファイルディスクリプタのcloseし忘れか?) を修正.
   この問題は 鍵のロード時に発生し, いくつかのプラットフォームでは
   クラッシュする.

 * sshd_config(5): clarify documentation for AuthenticationMethods
   option; bz#2663

   sshd_config(5): AuthenticationMethods 設定項目の記述を明確にする;
   bz#2663

 * ssh(1): ensure that the public key algorithm sent in a
   public key SSH_MSG_USERAUTH_REQUEST matches the content of the
   signature blob. Previously, these could be inconsistent when a
   legacy or non-OpenSSH ssh-agent returned a RSA/SHA1 signature
   when asked to make a RSA/SHA2 signature.

   ssh(1): 公開鍵の SSH_MSG_USERAUTH_REQUEST の中で送られる
   公開鍵アルゴリズムが, その署名ブロブの内容と一致するかを補償する.
   以前, 古いないしOpenSSHでない ssh-agent が RSA/SHA2
   署名を作るように求められた場合に RSA/SHA1 署名を返す場合に
   これらは一貫していないことがありえた.

 * sshd(8): fix failures to read authorized_keys caused by faulty
   supplemental group caching. bz#2873

   sshd(8): 欠陥のある補足的なグループキャッシングにより authorized_keys
   の読み込みの失敗を修正する. bz#2873

 * scp(1): apply umask to directories, fixing potential mkdir/chmod
   race when copying directory trees bz#2839

   scp(1): ディレクトリに umask を適用する. ディレクトリツリーを
   コピーする際の潜在的な mkdir/chmod 競合を修正する. bz#2839

 * ssh-keygen(1): return correct exit code when searching for and
   hashing known_hosts entries in a single operation; bz#2772

   ssh-keygen(1): 単一の操作で known_hosts のエントリを
   検索しハッシュする際に正しい終了コードを返却する. bz#2772

 * ssh(1): prefer the ssh binary pointed to via argv[0] to $PATH when
   re-executing ssh for ProxyJump. bz#2831

   ssh(1): ProxyJump で ssh を再実行するう際に $PATH よりも
   argv[0] が指す ssh バイナリを優先する. bz#2831

 * sshd(8): do not ban PTY allocation when a sshd session is
   restricted because the user password is expired as it breaks
   password change dialog. (regression in openssh-7.7).

   sshd(8): sshd のセッションが制限されている場合に PTY 確保を
   禁止しない. ユーザのパスワードが期限切れになっている場合に
   パスワード変更の対話がうまくいかなくなるから.
   (openssh-7.7 で退行していた)

 * ssh(1)/sshd(8): fix error reporting from select() failures.

   ssh(1)/sshd(8): select() の失敗からのエラーレポートを修正する.

 * ssh(1): improve documentation for -w (tunnel) flag, emphasising
   that -w implicitly sets Tunnel=point-to-point. bz#2365

   ssh(1): -w (tunnel) フラグの文書を改善する. -w は暗黙的に
   Tunnel=point-to-point を設定することを強調する. bz#2365

 * ssh-agent(1): implement EMFILE mitigation for ssh-agent. ssh-agent
   will no longer spin when its file descriptor limit is exceeded.
   bz#2576

   ssh-agent(1): ssh-agent に EMFILE の緩和を実装する. ssh-agent は
   そのファイルディスクリププタ制限を超過した場合に空転しない
   ようになる.

 * ssh(1)/sshd(8): disable SSH2_MSG_DEBUG messages for Twisted Conch
   clients. Twisted Conch versions that lack a version number in
   their identification strings will mishandle these messages when
   running on Python 2.x (https://twistedmatrix.com/trac/ticket/9422)

   ssh(1)/sshd(8): Twisted Conch クライアントのために SSH2_MSG_DEBUG 
   メッセージを無効にする. Twisted Conch のバージョンは, その
   認識文字列にバージョン番号が欠けているので, Python 2.x 上で走らせる
   場合に SSH2_MSG_DEBUG メッセージを間違えて扱う
   (https://twistedmatrix.com/trac/ticket/9422)

 * sftp(1): notify user immediately when underlying ssh process dies
   expectedly. bz#2719

   sftp(1): 基底の ssh プロセスが予想通り死んだ場合にユーザにすぐに
   通知する.

 * ssh(1)/sshd(8): fix tunnel forwarding; regression in 7.7 release.
   bz#2855

   ssh(1)/sshd(8): トンネル転送を修正する. 7.7 リリースで退行してた.
   bz#2855

 * ssh-agent(1): don't kill ssh-agent's listening socket entirely if
   it fails to accept(2) a connection. bz#2837

   ssh-agent(1): accept(2) で接続を失敗した場合に ssh-agent が
   listen するソケットを完全には kill しない. bz#2837

 * sshd(8): relax checking of authorized_keys environment="..."
   options to allow underscores in variable names (regression
   introduced in 7.7). bz#2851

   sshd(8): authorized_keys の environment="..." オプションのチェックを
   緩和し, 変数名に アンダースコアを許す (7.7 で導入された退行).
   bz#2851

 * ssh(1): add some missing options in the configuration dump output
   (ssh -G). bz#2835

   ssh(1): 設定ダンプ出力(ssh -G)で抜けていたいくつかの設定項目を追加する.

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

移植性

 * sshd(8): Expose details of completed authentication to PAM auth
   modules via SSH_AUTH_INFO_0 in the PAM environment. bz#2408

   sshd(8): PAM 環境の SSH_AUTH_INFO_0 によって
   完全な認証の詳細を PAM 認証モジュールに露出する.

 * Fix compilation problems caused by fights between zlib and OpenSSL
   colliding uses of "free_func"

   zlib と OpenSSL 間の "free_func" の利用の衝突の戦いによる
   コンパイルの問題を修正する.

 * Improve detection of unsupported compiler options. Recently these
   may have manifested as "unsupported -Wl,-z,retpoline" warnings
   during linking.

   サポートされていないコンパイラのオプションの検出を改善する.
   最近 サポートされていないオプションがリンク中に
   "unsupported -Wl,-z,retpoline" の警告として明らかになっている
   場合があった.

 * sshd(8): some sandbox support for Linux/s390 bz#2752.

   sshd(8): Linux/s390 に対するいくつかのサンドボックスのサポート.
   bz#2752

 * regress tests: unbreak key-options.sh test on platforms without
   openpty(3). bz#2856

   回帰テスト: openpty(3) がないプラットフォームで key-options.sh 
   テストが壊れないようにする.

 * use getrandom(2) for PRNG seeding when built without OpenSSL.
   
   OpenSSL がない環境でビルドされた場合に PRNG のシードに
   getrandom(2) を利用する.