日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
SSH_CONFIG(5) FreeBSD ファイルフォーマットマニュアル SSH_CONFIG(5)
名称
ssh_config -- OpenSSH クライアント設定ファイル
解説
ssh(1) は、次の順序で続くソースから設定データを取得します:
1. コマンド行オプション
2. ユーザ設定ファイル (~/.ssh/config)
3. システム全体の設定ファイル (/etc/ssh/ssh_config)
特に明記されていない限り、各パラメータについて、最初に取得された値が使用
されます。設定ファイルは、Host 指定によって区切られたセクションを含み、そ
のセクションは、指定で与えられたパターンの 1 つと一致するホストに対しての
み適用されます。一致するホスト名は、通常、コマンド行で与えられるホスト名
です (例外については、CanonicalizeHostname オプションを参照)。
各パラメータに対して最初の取得された値が使用されるので、よりホスト特有の
宣言は、ファイルの始めの近くで与えられるべきで、一般的なデフォルトは、終
りに与えられるべきです。
ファイルは、1 行ごとに 1 つのキーワード引数のペアを含んでいます。`#' で始
まる行と空行は、コメントとして解釈されます。引数は、オプションで空白を含
んでいる引数を表すためにダブルクォート (") で囲まれます。設定オプション
は、空白類またはオプションの空白類と正確に 1 つの `=' によって区切られま
す。後の形式は、ssh, scp と sftp の -o オプションを使用して設定オプション
を指定するとき、空白類を引用する必要を避けるために役に立ちます。
指定できるキーワードとそれらの意味は、次の通りです (キーワードは、大文字
小文字を区別せず、引数は、大文字小文字を区別することに注意してください):
Host キーワードの後に与えられるパターンの 1 つと一致するそれらのホスト
のためだけに (次の Host または Match キーワードまで) 続く宣言を制
限します。1 つ以上のパターンが提供されるなら、それらは、空白類に
よって区切られるべきです。パターンとしての単一 `*' は、すべてのホ
ストのためのグローバルなデフォルトを提供するために使用することが
できます。ホストは、通常、コマンド行で与えられる hostname 引数で
す (例外については、CanonicalizeHostname オプションを参照)。
パターンエントリは、その前に感嘆符 (`!') を付けることによって否定
されます。否定されたエントリが一致するなら、Host エントリは、行の
他のパターンが一致するかどうかにかかわらず無視されます。したがっ
て、否定された照合は、ワイルドカードの照合の例外を提供するために
役に立ちます。
パターンに関する詳細については、「パターン」を参照してください。
Match Match キーワードに続く条件が満たされるときのみ使用される、(次の
Host または Match キーワードまで) 次の宣言を制限します。Match 条
件は、1 つ以上の基準またはすべての基準に一致する単一のトークン
all を使用して指定されます。利用可能な基準キーワードは、次の通り
です: canonical, final, exec, host, originalhost, user と
localuser。all 基準は、単独で、または canonical または final の直
後に現れなければなりません。他の基準は、任意に組み合わされます。
すべての基準ですが、all, canonical と final は、引数を必要としま
す。基準は、感嘆符 (`!') を前に追加することによって打ち消されま
す。
canonical キーワードは、設定ファイルがホスト名の正規化 (canoni
calization) の後に再解析されるときだけ、一致します
(CanonicalizeHostname オプションを参照してください)。これは、正規
のホスト名前だけで動作する条件を指定するために役に立ちます。
final キーワードは、(CanonicalizeHostname が有効であるかどうかに
関わらず)、再解析される設定とこの最終パスの間のみ一致します。
CanonicalizeHostname が有効であるなら、canonical と final は、同
じパスの間に一致します。
exec キーワードは、ユーザのシェルの下で指定されたコマンドを実行し
ます。コマンドが 0 の終了ステータスを返すなら、条件は、真であると
見なされます。空白類文字を含んでいるコマンドは、引用されなければ
なりません。exec への引数は、「トークン」セクションで説明される
トークンが受け付けます。
他のキーワードの基準は、単一のエントリまたはコンマで区切られたリ
ストでなければならず、「パターン」セクションに記述されているワイ
ルドカードと否定の操作を使用します。host キーワードのための基準
は、Hostname または CanonicalizeHostname オプションによってあらゆ
る置換の後に、ターゲットのホスト名に対して照合されます。
originalhost キーワードは、それがコマンド行で指定されたように、ホ
スト名に対して照合します。user キーワードは、リモートホストのター
ゲットのユーザ名に対して照合します。localuser キーワードは、
ssh(1) を実行しているローカルユーザの名前に対して照合します (この
キーワードは、システム全体の ssh_config ファイルに役に立ちます)。
AddKeysToAgent
鍵が実行している ssh-agent(1) に自動的に追加されるべきかどうかを
指定します。このオプションが yes に設定され、鍵がファイルからロー
ドされるなら、鍵とそのパスフレーズは、あたかも ssh-add(1) によっ
てのように、デフォルトの存続期間でエージェントに追加されます。こ
のオプションが、ask に設定されるなら、ssh(1) は、鍵を追加する前に
SSH_ASKPASS プログラムを使用して確認を必要とします (詳細について
は、ssh-add(1) を参照)。このオプションが、confirm に設定されるな
ら、鍵の各使用は、あたかも -c オプションが ssh-add(1) に指定され
たかのように、確認されなければなりません。このオプションが、no に
設定されるなら、鍵は、エージェントに追加されません。代りに、この
オプションは、それが自動的に削除された後に、ssh-agent(1) の鍵の寿
命を指定するために sshd_config(5) の「時間の形式」セクションに説
明されている形式を使用して時間間隔として指定されます。引数は、no
(デフォルト), yes, confirm (オプションで時間の間隔が続きます)、
ask または時間の間隔でなければなりません。
AddressFamily
接続するとき、どのアドレスファミリを使用するかを指定します。有効
な引数は、any (デフォルト)、inet (IPv4 のみ使用する) または inet6
(IPv6 のみ使用する) です。
BatchMode
yes に設定されるなら、パスワードのプロンプトとホスト鍵の確認要求
のようなユーザの相互作用は、無効にされます。このオプションは、
ssh(1) とやりとりするユーザが存在しないスクリプトとその他のバッチ
ジョブで役に立ちます。引数は、yes または no (デフォルト) でなけれ
ばなりません。
BindAddress
接続の発信元アドレスとしてローカルマシンで指定されたアドレスを使
用します。2 つ以上のアドレスがあるシステムでのみ役に立ちます。
BindInterface
接続の送信元アドレスとしてローカルマシンで指定されたインタフェー
スのアドレスを使用します。
CanonicalDomains
CanonicalizeHostname が有効にされるとき、このオプションは、指定さ
れた宛先ホストを検索するドメイン接尾辞のリストを指定します。
CanonicalizeFallbackLocal
ホスト名の正規化が失敗するとき、エラーで失敗するかどうかを指定し
ます。デフォルトの yes は、システムのリゾルバの検索規則を使用し
て、無条件でホスト名を検索することを試みます。no の値によって
ssh(1) は、CanonicalizeHostname が有効にされ、ターゲットのホスト
名が、CanonicalDomains によって指定されるドメインのいずれがを見つ
けることができないなら、即座に失敗します。
CanonicalizeHostname
明示的なホスト名の正規化が実行されるかどうかを制御されます。デ
フォルトの no は、あらゆる名前を書き直すことを実行せず、システム
のリゾルバは、すべてのホスト名の検索を扱います。yes に設定される
なら、ProxyCommand または ProxyJump を使用しない接続に対して、
ssh(1) ば、CanonicalDomains 接尾辞と CanonicalizePermittedCNAMEs
規則を使用して、コマンド行で指定されたホスト名を正規化することを
試みます。CanonicalizeHostname が always に設定されるなら、正規化
は、プロキシ化された接続もまた適用されます。
このオプションが有効にされるなら、設定ファイルは、Host と Match
スタンザ (stanza) と一致するあらゆる新しい設定を手に入れるために
再び新しいターゲット名を使用して処理されます。none の値は、
ProxyJump ホストの使用を無効にします。
CanonicalizeMaxDots
正規化が無効にされる前に、ホスト名のドット文字の最大数を指定しま
す。デフォルトの 1 は、単一ドット (すなわち、hostname.subdomain)
を許可します。
CanonicalizePermittedCNAMEs
ホスト名を正規化するときに、CNAME が続くべきかどうか判断する規則
を指定します。規則は、source_domain_list:target_domain_list の 1
つ以上の引数から成ります、ここで source_domain_list は、正規化で
CNAME に続くドメインのパターンリストで、target_domain_list は、そ
れらが解決されるドメインのパターンリストです。
例えば、"*.a.example.com:*.b.example.com,*.c.example.com" は、
"*.b.example.com" または "*.c.example.com" ドメインの名前を正規化
するために、"*.a.example.com" に一致するホスト名を許可します。
単一の引数 "none" によって、CNAME は、正規化するために考慮されま
せん。これは、デフォルトの振る舞いです。
CASignatureAlgorithms
アルゴリズムは、証明機関 (CA) によって証明書の署名のために許可さ
れるかを指定します。デフォルトは、次の通りです:
ssh-ed25519,ecdsa-sha2-nistp256,
ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
sk-ssh-ed25519@openssh.com,
sk-ecdsa-sha2-nistp256@openssh.com,
rsa-sha2-512,rsa-sha2-256
指定されたリストが `+' 文字で始まるなら、指定されたアルゴリズム
は、デフォルトの設定を置き換える代りに、それらに追加されます。指
定されたリストが `-' 文字で始まるなら、指定されたアルゴリズム (ワ
イルドカードを含む) は、デフォルトの設定を置き換える代りに、デ
フォルトの設定から削除されます。
ssh(1) は、指定されたそれら以外のアルゴリズムを使用して署名された
ホストの証明書を受け付けません。
CertificateFile
ユーザの証明書が読み込まれるファイルを指定します。対応する秘密鍵
は、IdentityFile ディレクティブまたは ssh-agent(1) を通して、また
は PKCS11Provider または SecurityKeyProvider を通して ssh(1) への
-i フラグからこの証明書を使用するために順番に別々に提供されなけれ
ばなりません。
CertificateFile への引数は、ユーザのホームディレクトリへを参照す
るためにチルダ構文、「トークン」セクションで説明されているトーク
ンと「環境変数」セクションで説明されている環境変数を使用します。
設定ファイルで指定された複数の証明書ファイルがあることが可能で
す。これらの証明書は、順々に試みられます。複数の CertificateFile
ディレクティブは、認証のために使用される証明書のリストに追加しま
す。
CheckHostIP
yes に設定されるなら、ssh(1) は、さらに known_hosts ファイルのホ
スト IP アドレスをチェックします。これによって、それは、DNS なり
すましのために変更されたホスト鍵であるなら、検出することができ、
StrictHostKeyChecking の設定にかかわらず、宛先ホストのアドレスを
プロセスの ~/.ssh/known_hosts に追加します。オプションが no (デ
フォルト) に設定されるなら、チェックは、実行されません。デフォル
トは、no です。
Ciphers
優先順位で許可された暗号方式を指定します。複数の暗号方式は、コン
マで区切られなければなりません。サポートされている暗号方式は、次
の通りです: 指定されたリストが `+' 文字で始まるなら、指定された暗
号方式は、それらを置き換える代わりに設定されたデフォルトに付け加
えられます。指定されたリストが `-' 文字で始まるなら、指定された暗
号文 (ワイルドカードを含む) は、それらを置き換える代わりにデフォ
ルトの設定から削除されます。指定されたリストが `^' 文字で始まるな
ら、指定された暗号文は、デフォルト設定の先頭に置かれます。
サポートされた暗号方式は、次の通りです:
3des-cbc
aes128-cbc
aes192-cbc
aes256-cbc
aes128-ctr
aes192-ctr
aes256-ctr
aes128-gcm@openssh.com
aes256-gcm@openssh.com
chacha20-poly1305@openssh.com
デフォルトは、次の通りです:
chacha20-poly1305@openssh.com,
aes128-ctr,aes192-ctr,aes256-ctr,
aes128-gcm@openssh.com,aes256-gcm@openssh.com
また、利用可能な暗号のリストは、"ssh -Q cipher" を使用して取得さ
れます。
ClearAllForwardings
設定ファイル、またはコマンド行で指定された、すべてのローカル、リ
モートと動的なポート転送がクリアされることを指定します。このオプ
ションは、設定ファイルで設定され、scp(1) と sftp(1) によって自動
的に設定される、ポート転送をクリアするために、ssh(1) のコマンド行
で使用されるとき、主として役に立ちます。引数は、yes または no (デ
フォルト) でなければなりません。
Compression
圧縮を使用するかどうかを指定します。引数は、yes または no (デフォ
ルト) でなければなりません。
ConnectionAttempts
終了する前に行われる試み (1 秒ごとに 1 つ) の数を指定します。引数
は、整数でなければなりません。接続が時々失敗するなら、これは、ス
クリプトで役に立ちます。デフォルトは、1 です。
ConnectTimeout
デフォルトのシステム TCP タイムアウトを使用する代わりに、SSH サー
バに接続するとき、使用される (秒単位の) タイムアウトを指定しま
す。このタイムアウトは、接続を確立し、最初の SSH プロトコルのハン
ドシェイクと鍵交換を実行する両方に適用されます。
ControlMaster
単一のネットワーク接続で、複数のセッションの共有を有効にします。
yes に設定されるとき、ssh(1) は、ControlPath 引数を使用して指定さ
れた制御ソケットで接続を listen (接続を受け付け) します。追加の
セッションは、no (デフォルト) に設定された ControlMaster で同じ
ControlPath を使用して、このソケットに接続することができます。こ
れらのセッションは、新しいセッションを開始するよりむしろマスタの
インスタンスのネットワーク接続を再利用しようとしますが、制御ソ
ケットが存在していないか、または listen していないなら、通常の接
続になります。
これを ask に設定することによって、ssh(1) は、接続を制御するため
に listen (接続を受け付け) しますが、ssh-askpass(1) を使用して確
認を要求します。ControlPath をオープンすることができないなら、
ssh(1) は、マスタインスタンスに接続せずに継続します。
X11 と ssh-agent(1) 転送は、これらの多重化された接続を経由してサ
ポートされますが、ディスプレイと転送されたエージェントは、マスタ
接続に属するものとなります、すなわち、複数のディスプレイまたは
エージェントを転送することはできません。
2 つの追加オプションは、次の日和見的な多重化を可能にします: 訳注:
日和見的な多重化は、通信相手が多重化に対応できれば、多重化し、そ
うでなければ、多重化しない通信。マスタ接続を使用することを試みま
すが、それが、まだ存在しないなら、新しいものを作成するために
フォールバック機能を使用することを試みます。これらのオプション
は、次の通りです: auto と autoask。後者は、ask オプションのような
確認を必要とします。
ControlPath
上記の ControlMaster セクションで説明されている、接続の共有のため
に使用すう制御ソケットのパス名を指定するか、または、接続の共有を
無効にするために文字列 none を指定します。ControlPath への引数
は、ユーザのホームディレクトリ、「トークン」セクションで説明され
ているトークン、と「環境変数」セクションで説明されているような環
境変数を参照するためにチルダ構文を使用します。少なくとも %h、%p
と %r (または代替の %C) を含む、日和見的な接続共有のために使用さ
れるあらゆる ControlPath を推奨し、他のユーザによって書き込み可能
ではないディレクトリに置かれます。これは、共有される接続がユニー
クに識別されることを保証します。
ControlPersist
ControlMaster に関連して使用されるとき、初期のクライアント接続が
クローズされた後に、マスタ接続がバックグラウンド (将来のクライア
ント接続を待っている) でオープンされたままで残るべきであることを
指定します。no (フェフォルト) に設定されるなら、マスタ接続は、
バックグラウンドに置かれないで、初期のクライアント接続がクローズ
されるとすぐに、クローズします。yes または 0 に設定されるなら、マ
スタ接続は、("ssh -O exit" のようなメカニズムを通して kill される
か、またはクローズされるまで) 無期限にバックグラウンドのままとな
ります。秒単位で時間を設定するか、または sshd_config(5) に文書化
された正式のいずれかで時間を設定するなら、バックグラウンド化され
たマスタ接続は、指定された時間 (クライアント接続なしで) アイドル
のまま残された後に、自動的に終了します。
DynamicForward
ローカルマシンの TCP ポートが安全なチャネルを経由して転送されるこ
とを指定し、アプリケーションのプロトコルがどのリモートマシンから
接続するかを決定するために使用されます。
引数は、[bind_address:]port でなければなりません。角括弧でアドレ
スを囲むことによって、IPv6 アドレスを指定することができます。デ
フォルトで、ローカルのポートは、GatewayPorts の設定にしたがって
bind されます。しかしながら、明示的な bind_address は、特定のアド
レスへの接続を bind するために使用されます。localhost の
bind_address は、listen するポートがローカルの使用だけに bind さ
れることを示し、一方、空のアドレスまたは、`*' は、ポートがすべて
のインタフェースから利用可能であることを示します。
現在、SOCKS4 と SOCKS5 プロトコルがサポートされ、ssh(1) は、
SOCKS4 サーバのように振る舞います。複数の転送を指定でき、コマンド
行で追加の転送を与えることができます。root だけが、特権ポートを転
送できます。
EnableEscapeCommandline
対話型セッションのために EscapeChar メニューでコマンド行オプショ
ンを有効にします (デフォルトは、`~C)'。デフォルトで、コマンド行
は、無効にされます。
EnableSSHKeysign
グローバルなクライアントの設定ファイル /etc/ssh/ssh_config で、こ
のオプションを yes に設定することは、HostbasedAuthentication の間
にヘルパプログラム ssh-keysign(8) の使用を有効にします。引数は、
yes または no (デフォルト) でなければなりません。このオプション
は、ホスト特有でないセクションに置かれるべきです。詳細について
は、ssh-keysign(8) を参照してください。
EscapeChar
エスケープ文字を設定します (デフォルト: `~')。また、コマンド行で
エスケープ文字を設定することができます。引数は、単一の文字 `^' に
文字が続くべきで、または (接続をバイナリデータのために透過する)
エスケープ文字をすべて無効にするために none であるべきです。
ExitOnForwardFailure
すべての要求されたダイナミック、トンネル、ローカルと、リモートの
ポート転送 (例えば、いずれかの終わりが、指定されたポートでバイン
ドすることができなくて、listen (接続を受け付け) することができな
いなら) ssh(1) が接続を終了するべきかどうかを指定します。
ExitOnForwardFailure は、ポート転送を越えて行われる接続に適用され
ません、例えば、ssh(1) は、最終的な転送の宛先との TCP 接続が失敗
するなら、終了することに注意してください。引数は、yes または no
(デフォルト) でなければなりません。
FingerprintHash
鍵の指紋を表示するとき、使用されたハッシュアルゴリズムを指定しま
す。有効なオプションは、次の通りです: md5 と sha256 (デフォル
ト)。
ForkAfterAuthentication
コマンド実行の直前に、ssh をバックグラウンドにするように要求しま
す。これは、ssh がパスワードまたはパスフレーズを問い合わせます
が、ユーザは、それをバックグラウンドにしたいなら、役に立ちます。
これは、StdinNull 設定オプションが ``yes'' に設定されていることの
意味を含みます。リモートサイトで X11 プログラムを開始する推奨され
る方法は、ssh -f host xterm のようなものです、これは、
ForkAfterAuthentication 設定オプションが ``yes'' に設定されている
なら、ssh host xterm と同じです。
ExitOnForwardFailure 設定オプションが ``yes'' に設定されているな
ら、ForkAfterAuthentication 設定オプションが ``yes'' に設定されて
開始されたクライアントは、バックグラウンドにそれ自体を置くませ
に、正常に確立されるすべてのリモートポートの転送を待ちます。この
キーワードへの引数は、yes (-f オプションと同じ) または no (デフォ
ルト) でなければなりません。
ForwardAgent
(もしあるなら) 認証エージェントへの接続がリモートマシンに転送され
るかどうかを指定します。引数は、yes, no (デフォルト)、エージェン
トソケットへの明示的なパス、またはパスを見つけるための環境変数
(`$' で始まる) の名前を指定します。
エージェントの転送は、注意して有効にされるべきです。(エージェント
の Unix ドメインソケットのための) リモートホストでファイルのパー
ミッションを回避する能力があるユーザは、転送された接続を通して
ローカルエージェントにアクセスすることができます。攻撃者は、エー
ジェントから重要な鍵を取得することができませんが、それらは、エー
ジェントにロードされた鍵 (identity) を使用して、それらが確証する
ことを有効にする鍵で操作を実行することができます。
ForwardX11
X11 接続が安全なチャネルを経由して自動的にリダイレクトされるか、
そして DISPLAY が設定するかどうかを指定します。引数は、yes または
no (デフォルト) でなければなりません。
X11 の転送は、注意して有効にされるべきです。(ユーザの X11 認証
データベースのための) リモートホストでファイルのパーミッションを
回避する能力があるユーザは、転送された接続を通してローカルの X11
ディスプレイにアクセスすることができます。次に、攻撃者は、
ForwardX11Trusted オプションも有効にされているなら、キーストロー
クのモニタリングのような活動を実行することができます。
ForwardX11Timeout
sshd_config(5) の「時間の形式」のセクションで説明された形式を使用
して、信頼されていない X11 転送のためのタイムアウトを指定します。
この時間の後に ssh(1) によって受信された X11 接続は、拒否されま
す。ForwardX11Timeout を 0 に設定することは、タイムアウトを無効に
し、接続の寿命のために X11 の転送することを許可します。デフォルト
は、20 分が経過した後に、信頼されていない X11 転送を無効にするこ
とです。
ForwardX11Trusted
このオプションが yes に設定されるなら、リモートの X11 クライアン
トは、オリジナルの X11 ディスプレイへの完全なアクセスがあります。
このオプションが no (デフォルト) に設定されるなら、リモートの X11
クライアントは、信頼できないとみなされ、信頼された X11 クライアン
トに属するデータを盗むか、または不正に変更することを抑制します。
さらに、セッションのために使用される xauth(1) トークンは、20 分後
に期限が切れるように設定されます。リモートのクライアントは、この
時の後でアクセスを拒否されます。
信頼できないクライアントに課される制限に関する完全な詳細について
は、X11 SECURITY 拡張仕様を参照してください。
GatewayPorts
リモートホストがローカルへの転送されたポートに接続することを許可
されるかかどうかを指定します。デフォルトで、ssh(1) は、ローカル
ポートの転送をループバックアドレスにバインド (bind) します。これ
は、他のリモートホストが転送されたポートに接続されることを防ぎま
す。ssh がローカルポートの転送をワイルドカードにアドレスにバイン
ドし、したがって、リモートホストが転送されたポートに接続すること
を可能にするべきであることを、指定するために GatewayPorts を使用
することができます。引数は、yes または no (デフォルト) でなければ
なりません。
GlobalKnownHostsFile
空白類によって区切られた、グローバルなホスト鍵データベースのため
に使用する 1 つ以上のファイルを指定します。デフォルトは、
/etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2 です。
GSSAPIAuthentication
GSSAPI に基づいたユーザ認証が許可されるかどうかを指定します。デ
フォルトは、no です。
GSSAPIDelegateCredentials
証明書 (credential) をサーバに転送 (委託) します。デフォルトは、
no です。
HashKnownHosts
ホスト名とアドレスが ~/.ssh/known_hosts に追加されるとき、ssh(1)
は、それらをハッシュするべきであることを示します。これらのハッ
シュされた名前は、ssh(1) と sshd(8) によって通常に使用されます
が、ファイルの内容が公開されるなら、視覚的に識別情報を明らかにし
ません。デフォルトは、no です。known_hosts ファイルに存在する名前
とアドレスは、自動的に変換されませんが、ssh-keygen(1) を使用して
手動でハッシュされることに注意してください。
HostbasedAcceptedAlgorithms
パターンのコンマで区切られたリストとしてホストベースの認証のため
に使用される署名アルゴリズムを指定します。代わりに、指定されたリ
ストが `+' 文字で始まるなら、指定された署名アルゴリズムは、それら
を置き換える代わりにデフォルトの設定に付け加えられます。指定され
たリストが `-' 文字で始まるなら、指定された署名アルゴリズム (ワイ
ルドカードを含む) は、それらを置き換える代わりにデフォルトの設定
から削除されます。指定されたリストが `^' 文字で始まるなら、指定さ
れた署名アルゴリズムは、デフォルトの設定の先頭に置かれます。この
オプションのためのデフォルトは、次の通りです:
ssh-ed25519-cert-v01@openssh.com,
ecdsa-sha2-nistp256-cert-v01@openssh.com,
ecdsa-sha2-nistp384-cert-v01@openssh.com,
ecdsa-sha2-nistp521-cert-v01@openssh.com,
sk-ssh-ed25519-cert-v01@openssh.com,
sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,
rsa-sha2-512-cert-v01@openssh.com,
rsa-sha2-256-cert-v01@openssh.com,
ssh-rsa-cert-v01@openssh.com,
ssh-ed25519,
ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
sk-ssh-ed25519@openssh.com,
sk-ecdsa-sha2-nistp256@openssh.com,
rsa-sha2-512,rsa-sha2-256,ssh-rsa
ssh(1) の -Q オプションは、サポートされた署名アルゴリズムをリスト
するために使用されます。これは、以前は HostbasedKeyTypes という名
前でした。
HostbasedAuthentication
公開鍵認証で rhosts ベースの認証を試みるかどうかを指定します。引
数は、yes または no (デフォルト) でなければなりません。
HostKeyAlgorithms
クライアントが優先順に使用するしたいホスト鍵署名アルゴリズムを指
定します。代わりに、指定されたリストが `+' 文字で始まるなら、指定
された署名アルゴリズムは、それらを置き換える代わりにデフォルトの
設定に付け加えられます。指定されたリストが `-' 文字で始まるなら、
指定された署名アルゴリズム (ワイルドカードを含む) は、それらを置
き換える代わりにデフォルトの設定から削除されます。指定されたリス
トが `^' 文字で始まるなら、指定された署名アルゴリズムは、デフォル
トの設定の先頭に置かれます。このオプションのためのデフォルトは、
次の通りです:
ssh-ed25519-cert-v01@openssh.com,
ecdsa-sha2-nistp256-cert-v01@openssh.com,
ecdsa-sha2-nistp384-cert-v01@openssh.com,
ecdsa-sha2-nistp521-cert-v01@openssh.com,
sk-ssh-ed25519-cert-v01@openssh.com,
sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,
rsa-sha2-512-cert-v01@openssh.com,
rsa-sha2-256-cert-v01@openssh.com,
ssh-rsa-cert-v01@openssh.com,
ssh-ed25519,
ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
sk-ecdsa-sha2-nistp256@openssh.com,
sk-ssh-ed25519@openssh.com,
rsa-sha2-512,rsa-sha2-256,ssh-rsa
ホスト鍵があて先のホストで知られているなら、このデフォルトは、そ
れらのアルゴリズムの方を選ぶように変更されます。
また、利用可能な署名アルゴリズムのリストは、"ssh -Q
HostKeyAlgorithms" を使用して取得されます。
HostKeyAlias
ホスト鍵データベースファイルのホスト鍵を検索するか保存するとき、
ホストの証明書を有効にするとき、実際のホスト名の代わりに使用され
るべき別名を指定します。このオプションは、SSH 接続をトンネリング
するために、または単一のホストで実行している複数のサーバのために
役に立ちます。
Hostname
ログインする実際のホスト名を指定します。ホストのためのニックネー
ムまたは省略形を指定するために、これを使用することができます。
Hostname への引数は、「トークン」セクションで説明されるトークンを
受け付けます。(コマンド行と Hostname 指定の両方で) 数値の IP アド
レスも許可されます。デフォルトは、コマンド行で与えられる名前で
す。
IdentitiesOnly
ssh(1) は、たとえ ssh-agent(1) または PKCS11Provider または
SecurityKeyProvider がより多くの識別をを提供していても、設定され
た認証の識別と証明書ファイル (デフォルトファイル、または
ssh_config ファイルで明示的に設定されたもの、または ssh(1) コマン
ド行で渡されたもののいずれか)、のみを使用するべきであることを指定
します。このキーワードの引数は、yes または no (デフォルト) でなけ
ればなりません。このオプションは、ssh-agent が多くの異なった識別
(秘密鍵) を提供する状況を対象としています。
IdentityAgent
認証エージェントと通信するために使用される UNIX ドメインソケット
を指定します。
このオプションは、SSH_AUTH_SOCK 環境変数を上書きし、特有のエー
ジェントを選択するために使用することができます。ソケット名を none
に設定することは、認証エージェントの使用を無効にします。文字列
"SSH_AUTH_SOCK" が指定されるなら、ソケットの位置は、SSH_AUTH_SOCK
環境変数から読み込まれます。そうでなければ、指定された値が `$' 文
字で始まるなら、それは、ソケットの位置を含んでいる環境変数として
取り扱われます。
IdentityAgent への引数は、ユーザのホームディレクトリを参照するチ
ルダ構文、「トークン」セクションで説明されているトークン、と「環
境変数」セクションで説明されている環境変数を使用します。
IdentityFile
ユーザの DSA、ECDSA、認証者のホスト ECDSA、Ed25519、認証者ホスト
Ed25519、または RSA 認証の識別が読み込まれるファイルを指定しま
す。また、秘密鍵ファイルがローカルに存在しないとき、ssh-agent(1)
にロードされた対応する秘密鍵を使用するために公開鍵ファイルを指定
することができます。デフォルトは、~/.ssh/id_rsa, ~/.ssh/id_ecdsa,
~/.ssh/id_ecdsa_sk, ~/.ssh/id_ed25519, ~/.ssh/id_ed25519_sk と
~/.ssh/id_dsa です。さらに、認証エージェントによって表現されるあ
らゆる識別 (identity, 秘密鍵) は、IdentitiesOnly が設定されていな
いなら、認証のために使用されます。証明書が CertificateFile によっ
て明示的に指定されなかったなら、ssh(1) は、指定された
IdentityFile のパスに -cert.pub を付け加えることによって、取得さ
れたファイル名から証明書情報をロードしようと試みます。
IdentityFile への引数は、ユーザのホームディレクトリを参照するチル
ダ構文または「トークン」セクションで説明されるトークンを使用しま
す。
設定ファイルに複数の識別 (identity, 秘密鍵) ファイルを入れること
ができます。これらのすべての識別 (秘密鍵) は、順々に試みられま
す。複数の IdentityFile 指示は、試みられる識別のリストに追加しま
す (この振る舞いは、他の設定指示のものと異なります)。
IdentityFile は、エージェントの識別子が認証の間に提示され、選択す
る IdentitiesOnly とともに使用されます。また IdentityFile は、識
別 (identity, 秘密鍵) で認証のためにも必要とされるあらゆる証明書
を提供するために、CertificateFile とともに使用されます。
IgnoreUnknown
設定の解析で遭遇するなら、無視される、未知のオプションのパターン
のリストを指定します。これは、ssh_config が ssh(1) によって認識さ
れないオプションを含んでいるなら、エラーを抑制するために使用され
ます。設定ファイルに始めにリストされる IgnoreUnknown は、その前に
現われる未知のオプションに適用されないことが推奨されます。
Include
指定された (複数の) 設定ファイルを含めます。複数のパス名は、指定
され、各パス名は、glob(7) ワイルドカードとユーザ設定のために、
シェルのようなユーザホームディレクトリへの `~' 参照を含みます。ワ
イルドカードは、字句解析の順序で展開されて処理されます。絶対のパ
スなしのファイルは、ユーザ設定ファイルに含まれるなら、~/.ssh また
はシステム設定ファイルから含まれるなら、/etc/ssh にあると仮定され
ます。include ディレクティブは、条件付きの含有を実行するために
Match または Host ブロックの内側に現れるかもしれません。
IPQoS 接続のための IPv4 のサービスのタイプ (type-of-service) または
DSCP のクラスを指定します。受け付けられる値は、af11, af12, af13,
af21, af22, af23, af31, af32, af33, af41, af42, af43, cs0, cs1,
cs2, cs3, cs4, cs5, cs6, cs7, ef, le, lowdelay, throughput,
reliability, 数値またはオペレーティングシステムのデフォルトを使用
する none です。このオプションは、空白によって区切られた、1 つま
たは 2 つの引数を取ります。1 つの引数が指定されるなら、無条件にパ
ケットのクラスとして使用されます。2 つの値が指定されるなら、最初
は、対話的なセッションに対して、2 番目は、対話的でないセッション
に対して自動的に選択されます。デフォルトは、対話的なセッションに
対しては、af21 (Low-Latency Data) で、対話的でないセッションに対
しては、cs1 (Lower Effort) です。
KbdInteractiveAuthentication
キーボード対話式の認証を使用するかどうかを指定します。このキー
ワードへの引数は、yes または no (デフォルト) でなければなりませ
ん。ChallengeResponseAuthentication は、このための非推奨のエイリ
アスです。
KbdInteractiveDevices
keyboard-interactive 認証で使用されるメソッドのリストを指定しま
す。複数のメソッド名は、コンマで区切られなければなりません。デ
フォルトは、サーバで指定されたリストを使用します。サーバが何をサ
ポートするかよって、利用可能なメソッドは、異なります。OpenSSH
サーバでは、次の 0 個以上を指定できます: bsdauth と pam。
KexAlgorithms
利用可能な KEX (Key Exchange) アルゴリズムを指定します。複数のア
ルゴリズムは、コンマで区切られていなければなりません。指定された
リストが `+' 文字で始まるなら、指定されたアルゴリズムは、それらを
置き換える代わりに設定されたデフォルトに付け加えられます。指定さ
れたリストが `-' 文字で始まるなら、指定されたアルゴリズム (ワイル
ドカードを含む) は、それらを置き換える代わりにデフォルトの設定か
ら削除されます。指定されたリストが `^' 文字で始まるなら、指定され
たアルゴリズムは、デフォルトの設定の先頭に置かれます。デフォルト
は、次の通りです:
sntrup761x25519-sha512@openssh.com,
curve25519-sha256,curve25519-sha256@libssh.org,
ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
diffie-hellman-group-exchange-sha256,
diffie-hellman-group16-sha512,
diffie-hellman-group18-sha512,
diffie-hellman-group14-sha256
また、利用可能な鍵交換アルゴリズムのリストは、"ssh -Q kex" を使用
して取得されます。
KnownHostsCommand
UserKnownHostsFile と GlobalKnownHostsFile にリストされているホス
ト鍵に加えて、ホスト鍵のリストを取得するために使用するコマンドを
指定します。このコマンドは、ファイルが読み込まれた後に実行されま
す。ホスト鍵の行を通常のファイルと同じ形式で標準出力に書き込みま
す (ssh(1) の「ホスト鍵の検証」セクションで説明されている)。
KnownHostsCommand への引数は、「トークン」セクションで説明されて
いるトークンを受け付けます。コマンドは、接続ごとに複数回呼び出す
ことができます。いったん、使用するホスト鍵アルゴリズムの優先リス
トを準備するとき、サーバのアドレスに一致するホスト鍵を取得するた
めにもう一度、CheckHostIP が有効にされるなら、再び、要求されたホ
スト名のためののホスト鍵を取得します。コマンドが異常終了するか、
または 0 以外の終了ステータスを返したなら、接続が終了します。
LocalCommand
サーバへの接続が成功した後に、ローカルマシン上で実行するコマンド
を指定します。コマンド文字列は、行の終わりまでで、ユーザのシェル
で実行されます。LocalCommand への引数は、「トークン」セクションで
説明されるトークンを受け付けます。
コマンドは、同時実行され、それをスポン (spawn) した ssh(1) のセッ
ションにアクセスできません。対話的なコマンドに対して使用するべき
ではありません。
PermitLocalCommand が有効にされていないなら、この指示は、無視され
ます。
LocalForward
ローカルマシンの TCP ポートがリモートマシンから指定されたホストと
ポートへの安全なチャネルを経由して転送されるよう指定します。最初
の引数は、リスナを指定し、[bind_address:]port または Unix ドメイ
ンのソケットのパスを指定します。2 番目の引数は、宛先であり、
host:hostport または、リモートホストがサポートされているなら、ド
メインソケットのパスを指定します。
角括弧でアドレスを囲むことによって、IPv6 アドレスを指定することが
できます。複数の転送を指定することができ、コマンド行で追加の転送
を与えることができます。スーパユーザだけが、特権のあるポートを転
送することができます。デフォルトで、ローカルのポートは、
GatewayPorts 設定にしたがってバインドされます。しかしながら、明示
的な bind_address は、特定のアドレスへの接続をバインドするために
使用さます。localhost の bind_address は、ローカルの使用のためだ
けにバインドされるポートを listen (接続を受け付け) することを示
し、空のアドレス、または、`*' は、ポートがすべてのインタフェース
から利用可能であるべきであることを示します。Unix ドメインのソケッ
トのパスは、「トークン」セクションで説明されているトークンを使用
し、「環境変数」セクションで説明されているような環境変数を使用し
ます。
LogLevel
ssh(1) からのメッセージをログ記録するとき、使用される冗長レベルを
与えます。指定できる値は、次の通りです: QUIET, FATAL, ERROR,
INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 と DEBUG3。デフォルトは、
INFO です。DEBUG と DEBUG1 は、同等です。DEBUG2 と DEBUG3 は、そ
れぞれより高いレベルの冗長な出力を指定します。
LogVerbose
LogLevel に 1 つ以上のオーバライドを指定します。オーバライドは、
詳細なロギングを強制するソースファイル、関数、と行番号に一致する
パターンリストで構成されます。例えば、オーバライドのパターンは、
次の通りです:
kex.c:*:1000,*:kex_exchange_identification():*,packet.c:*
は、kex.c の行 1000 のため、kex_exchange_identification() 関数の
すべて、と packet.c ファイルのすべてのコードの詳細なロギングを有
効にします。このオプションは、デバッグを対象としており、オーバラ
イドは、デフォルトで有効になりません。
MACs MAC (メッセージ認証コード) アルゴリズムの優先順位を指定します。
MAC アルゴリズムは、データの整合性の保護 (data integrity protec
tion) のために使用されます。複数のアルゴリズムは、コンマで区切ら
れなければなりません。指定されたリストが `+' 文字で始まるなら、指
定されたアルゴリズムは、それらを置き換える代わりに設定されたデ
フォルトに付け加えられます。指定されたリストが `-' 文字で始まるな
ら、指定されたアルゴリズム (ワイルドカードを含む) は、それらを置
き換える代わりにデフォルトの設定から削除されます。指定されたリス
トが `^' 文字で始まるなら、指定されたアルゴリズムは、デフォルトの
設定の先頭に置かれます。
"-etm" を含んでいるアルゴリズムは、暗号化 (encrypt-then-mac) の後
に MAC を計算します。これらは、より安全であると考えられ、それらの
使用は、推薦されます。
デフォルトは、次の通りです:
umac-64-etm@openssh.com,umac-128-etm@openssh.com,
hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,
hmac-sha1-etm@openssh.com,
umac-64@openssh.com,umac-128@openssh.com,
hmac-sha2-256,hmac-sha2-512,hmac-sha1
また、利用可能な MAC アルゴリズムのリストは、"ssh -Q mac" を使用
して取得されます。
NoHostAuthenticationForLocalhost
localhost のためのホスト認証を無効にします (ループバックアドレ
ス)。このキーワードへの引数は、yes または no (デフォルト) でなけ
ればなりません。
NumberOfPasswordPrompts
ギブアップする前にパスワードのプロンプトの回数を指定します。この
キーワードへの引数は、整数でなければなりません。デフォルトは、3
です。
PasswordAuthentication
パスワード認証を使用するかどうかを指定します。このキーワードへの
引数は、yes (デフォルト) または no でなければなりません。
PermitLocalCommand
LocalCommand オプション、または ssh(1) の !command エスケープシー
ケンスを使用することによってローカルコマンドの実行を許可します。
引数は、yes または no (デフォルト) でなければなりません。
PermitRemoteOpen
RemoteForward が SOCKS プロキシとして使用されているとき、モート
TCP ポート転送が許可される宛先を指定します。転送の指定は、次の形
式の 1 つでなければなりません:
PermitRemoteOpen host:port
PermitRemoteOpen IPv4_addr:port
PermitRemoteOpen [IPv6_addr]:port
複数の転送は、空白類で区切ることによって指定することができます。
すべての制限を解除され、すべての転送要求を許可するために any の引
数を使用することができます。すべての転送要求を禁止するために、
none の引数を使用することができます。それぞれすべてのホストまたは
ポートを許可する host または port のためにワイルドカード `*' を使
用することができます。そうでなければ、パターン照合またはアドレス
検索は、提供された名前で実行されません。
PKCS11Provider
使用する PKCS#11 プロバイダ、または、プロバイダを使用すべきではな
いことを示すために (デフォルト) none を指定します。このキーワード
への引数は、ユーザ認証のために鍵を提供する PKCS#11 トークンで通信
のために ssh(1) が使用されるべきである PKCS#11 共有ライブラリへの
パスです。
Port リモートホストに接続するポート番号を指定します。デフォルトは、22
です。
PreferredAuthentications
クライアントが認証メソッドを試みるべき順序を指定します。これに
よって、クライアントは、別のメソッド (例えば、password) よりも特
定のメソッド (例えば、keyboard-interactive) を選ぶことができま
す。デフォルトは、次の通りです:
gssapi-with-mic,hostbased,publickey,
keyboard-interactive,password
ProxyCommand
サーバに接続するために使用するコマンドを指定します。コマンド文字
列は、行の終わりまで拡張され、いつまでも残っているシェルプロセス
を避けるために、ユーザのシェル `exec' ディレクティブを使用して実
行されます。
ProxyCommand への引数は、「トークン」セクションで説明されるトーク
ンを受け付けます。コマンドは、基本的に何でも指定でき、標準入力か
ら読み込み、標準出力に書き込まれるべきです。それは、結局、あるマ
シンで実行している sshd(8) サーバに接続するか、またはどこかで
sshd -i を実行するべきです。ホスト鍵の管理は、接続されているホス
トの Hostname を使用して行われます (デフォルトで、ユーザによって
タイプされた名前)。コマンドを none に設定することは、このオプショ
ンを完全に無効にします。CheckHostIP は、プロキシ (proxy) コマンド
で接続することができないことに注意してください。
この指示は、nc(1) とそのプロキシのサポートと併用して役に立ちま
す。例えば、次の指示は、192.0.2.0 で HTTP プロキシを経由して接続
します:
ProxyCommand /usr/bin/nc -X connect -x 192.0.2.0:8080 %h %p
ProxyJump
[user@]host[:port] または ssh URI のいずれかのように 1 つ以上の
ジャンププロキシを指定します。複数のプロキシは、コンマ文字によっ
て区切られ、順次訪問されます。このオプションを設定することによっ
て、ssh(1) は、指定された ProxyJump ホストへの ssh(1) 接続を最初
に行うことによってターゲットホストに接続し、次に、そこから最終的
なターゲットへの TCP 転送を確立します。ホストを none に設定するこ
とは、このオプションを完全に無効にします。
このオプションは、ProxyCommand オプションと競合することに注意して
ください - いずれか最初に指定されたものが、他の後のインスタンスが
効果を生じることを防ぎます。
また、宛先ホストのための設定 (コマンド行または設定ファイルを通し
て供給されるもの) は、一般的にジャンプホストに適用されないことに
注意してください。特定の設定がジャンプホストのために必要であるな
ら、~/.ssh/config が使用されるべきです。
ProxyUseFdpass
ProxyCommand は、データを実行して、渡し続ける代わりに、ssh(1) に
接続しているファイル記述子を元に渡すことを指定します。デフォルト
は、no です。
PubkeyAcceptedAlgorithms
公開鍵認証のために使用される署名アルゴリズムをパターンのコンマで
区切られたリストとして指定します。指定されたリストが `+' 文字で始
まるなら、その後のアルゴリズムは、それらを置き換える代わりにデ
フォルトに付け加えられます。指定されたリストが `-' 文字で始まるな
ら、指定されたアルゴリズム (ワイルドカードを含む) は、それらを置
き換える代わりにデフォルトの設定から削除されます。指定されたリス
トが `^' 文字で始まるなら、指定されたアルゴリズムは、デフォルトの
設定の先頭に置かれます。このオプションのためのデフォルトは、次の
通りです:
ssh-ed25519-cert-v01@openssh.com,
ecdsa-sha2-nistp256-cert-v01@openssh.com,
ecdsa-sha2-nistp384-cert-v01@openssh.com,
ecdsa-sha2-nistp521-cert-v01@openssh.com,
sk-ssh-ed25519-cert-v01@openssh.com,
sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,
rsa-sha2-512-cert-v01@openssh.com,
rsa-sha2-256-cert-v01@openssh.com,
-ssh-rsa-cert-v01@openssh.com,
ssh-ed25519,
ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
sk-ssh-ed25519@openssh.com,
sk-ecdsa-sha2-nistp256@openssh.com,
rsa-sha2-512,rsa-sha2-256,ssh-rsa
また、利用可能な署名アルゴリズムのリストは、"ssh -Q
PubkeyAcceptedAlgorithms" を使用して取得されます。
PubkeyAuthentication
公開鍵認証を試みるかどうかを指定します。このキーワードの引数は、
yes (デフォルト)、no, unbound または host-bound でなければなりま
せん。最後の 2 つのオプションは、公開鍵認証を有効にしますが、一
方、制限される ssh-agent(1) 転送のために必要とされる OpenSSH ホス
トバウンド認証プロトコル拡張をそれぞれ無効または有効にします。
RekeyLimit
セッション鍵が再交渉される前に転送されるか、または受信される最大
のデータ量を指定し、オプションでセッション鍵が再交渉される前に渡
される最大の時間の量が続きます。最初の引数は、バイト単位で指定さ
れ、それぞれ、キロバイト、メガバイトまたはギガバイトを示すために
`K', `M' または `G' の接尾辞を付けることができます。デフォルト
は、暗号によりますが、`1G' と `4G' の間です。オプションの 2 番目
の値は、秒単位で指定され、sshd_config(5) の「時間の形式」セクショ
ンで文書化されたユニットのうちのいずれかを使用します。RekeyLimit
のためのデフォルト値は、rekey が、暗号のデータのデフォルトの量が
送信されるか、または受信された後に、実行され、時間ベースの rekey
が行なわれないことを意味する、default none です。
RemoteCommand
サーバに成功して接続した後に、リモートマシンで実行するコマンドを
指定します。コマンド文字列は、行の終わりに展開して、ユーザのシェ
ルで実行されます。RemoteCommand への引数は、「トークン」セクショ
ンで説明されたトークンを受け付けます。
RemoteForward
安全なチャネルを経由して転送されるリモートのマシンの TCP ポートを
指定します。リモートのポートは、ローカルマシンから指定されたホス
トとポートに転送されるか、またはリモートのクライアントがローカル
マシンから任意の宛先と接続することができる、SOCKS 4/5 プロキシと
して作動します。最初の引数は、listen (接続を受け付け) している仕
様で、[bind_address:]port または、リモートホストがサポートしてい
るなら、Unix ドメインソケットパスを指定します。特有の宛先に転送し
ているなら、2 番目の引数は、host:hostport または Unix ドメインパ
スでなければなりません、そうでなければ、宛先の引数が指定されない
なら、リモートの転送は、SOCKS プロキシとして確立されます。SOCKS
プロキシとして動作するとき、PermitRemoteOpen によって、接続の宛先
を制限することができます。
角括弧でアドレスを囲むことによって、IPv6 アドレスを指定することが
できます。複数の転送を指定することができ、コマンド行で追加の転送
を与えることができます。ルートとしてリモートマシンでログインする
ときだけ、特権ポートを転送することができます。Unix ドメインのソ
ケットのパスは、「トークン」セクションで説明されているトークンと
「る環境変数」セクションで説明されている環境変数を使用します。
port 引数が 0 であるなら、listen (接続を受け付け) するポートは、
サーバで動的に割り付けられ、実行時にクライアントに報告されます。
bind_address が指定されないなら、デフォルトは、ループバックアドレ
スにただバインド (bind) することです。bind_address が `*' である
か、または空の文字列であるなら、転送は、すべてのインタフェースで
listen (接続を受け付け) することが要求されます。サーバの
GatewayPorts オプションが有効されるなら (sshd_config(5) を参照)、
リモートの bind_address を指定することは、単に成功します。
RequestTTY
セッションのための疑似 tty を要求するべきかどうか指定します。引数
は、次のうちの 1 つです: no (TTY を決して要求しません)、yes (標準
入力が TTY であるとき、常に TTY を要求します)、force (常に TTY を
要求します) または auto (ログインセッションを開始するとき、TTY を
要求します)。このオプションは、ssh(1) のための -t と -T フラグと
同様です。
RequiredRSASize
ssh(1) が受け付ける最小の RSA 鍵のサイズ (ビット単位) を指定しま
す。この制限より小さいユーザ認証キーは、無視されます。この制限よ
り小さいホストキーを提示するサーバは、接続を終了させます。デフォ
ルトは、1024 ビットです。この制限は、デフォルトからのみ引き上げる
ことができることに注意してください。
RevokedHostKeys
無効にされたホストの公開鍵を指定します。このファイルにリストされ
た鍵は、ホストの認証のために拒否されます。このファイルが存在しな
いか、または読み込み可能でないなら、ホストの認証は、すべてのホス
トのために拒否されることに注意してください。鍵は、行ごとに 1 つの
公開鍵をリストするか、または ssh-keygen(1) によって生成される
OpenSSH Key Revocation List (KRL) のように、テキストファイルとし
て指定されます。KRL の詳細については、ssh-keygen(1) の「鍵取り消
しリスト」セクションを参照してください。
SecurityKeyProvider
組み込み USB HID サポートを使用するデフォルトを上書きして、あらゆ
る FIDO 認証者のホスト鍵をロードするとき使用されるライブラリへの
パスを指定します。
指定された値が `$' 文字で始まるなら、ライブラリへのパスを含む環境
変数として扱われます。
SendEnv
ローカルの environ(7) (環境変数) からどの変数がサーバに送信される
べきであるかを指定します。またサーバは、それをサポートしてなけれ
ばならず、サーバは、これらの環境変数を受け付けるように設定されて
いなければなりません。TERM 環境変数は、それがプロトコルによって必
要とされるように、疑似端末が要求されるときはいつでも、常に送信さ
れることに注意してください。サーバを設定する方法については、
sshd_config(5) の AcceptEnv を参照してください。変数は、ワイルド
カード文字を含んでいる、名前によって指定されます。複数の環境変数
は、空白類よって区切られるか、または複数の SendEnv 指示に散在され
ます。
パターンに関する詳細については、「パターン」を参照していくださ
い。
- でパターンの前に置くことによって、以前に設定された SendEnv 変数
名をクリアすることができます。デフォルトは、あらゆる環境変数を送
信することではありません。
ServerAliveCountMax
サーバからあらゆるメッセージの応答を受信している ssh(1) なしに送
信される、サーバ動作確認メッセージ (下記を参照) の数を設定しま
す。サーバ動作確認メッセージが送信されている間に、このしきい値に
到達するなら、ssh は、サーバの接続を切断して、セッションを終了し
ます。サーバ動作確認メッセージの使用が、(下記の) TCPKeepAlive と
非常に異なることに注意することは重要です。サーバ動作確認メッセー
ジは、暗号化されたチャネルを通して送信され、したがって、なりすま
し可能ではありません。TCPKeepAlive によって有効にされた TCP
keepalive (動作し続ける) オプションは、なりすまし可能です。サーバ
動作確認メカニズムは、クライアントまたはサーバが接続がいつ応答し
なくなったか知ることに依存するとき、価値があります。
デフォルト値は、3 です。例えば、ServerAliveInterval (以下を参照)
が 15 に設定され、ServerAliveCountMax がデフォルトのままであるな
ら、ssh は、サーバが応答しなくなるなら、およそ 45 秒後に、接続を
切断します。
ServerAliveInterval
ssh(1) がサーバから応答を要求する暗号化されたチャネルを通してメッ
セージを送信する、サーバからデータが受信されなくなった後のタイム
アウトの間隔を秒単位で設定します。デフォルトは、0 で、これらの
メッセージがサーバに送信されないことを示します。
SessionType
リモートシステムのサブシステムの呼び出しを要求するか、またはまっ
たくリモートコマンドの実行を防止したりするために使用されます。後
者は、単にポートを転送するために役に立ちます。このキーワードへの
引数は、none (-N オプションと同じ)、subsystem (-s オプションと同
じ)、または default (シェルまたはコマンドの実行) でなければなりま
せん。
SetEnv 直接、サーバに送信される 1 つ以上の環境変数とそれらの内容を指定し
ます。SendEnv と同様に、TERM 変数を除いて、サーバは、環境変数を受
け付ける準備をしなければなりません。
StdinNull
/dev/null から stdin をリダイレクトします (実際、stdin からの読み
込みを防ぎます)。ssh がバックグラウンドで実行されているとき、この
オプションまたは同等の -n オプションのいずれかを使用しなければな
りません。このキーワードへの引数は、yes (-n オプションと同じ) ま
たは no (デフォルト) でなければなりません。
StreamLocalBindMask
ローカルまたはリモートのポート転送のための Unix ドメインソケット
ファイルを作成するとき、使用する、8 進数のファイル作成モードマス
ク (umask) を設定します。このオプションは、Unix ドメインソケット
ファイルに転送するポートのためだけに使用されます。
デフォルト値は、所有者によってのみ読み込み可能で、書き込み可能な
Unix ドメインソケットファイルを作成する、0177 です。すべてのオペ
レーティングシステムは、Unix ドメインソケットファイルのファイル
モードを尊重しているわけではないことに注意してください。
StreamLocalBindUnlink
新しいものを作成する前に、ローカルまたはリモートのポート転送のた
めの既存の Unix ドメインソケットファイルを削除するかどうかを指定
します。すでにソケットファイルが存在し、StreamLocalBindUnlink が
有効ではないなら、ssh は、ポートを Unix ドメインソケットファイル
に転送することはできません。このオプションは、Unix ドメインソケッ
トファイルへのポート転送のためでけに使用されます。
引数は、yes または no (デフォルト) でなければなりません。
StrictHostKeyChecking
このフラグが yes に設定されるなら、ssh(1) は、自動的に
~/.ssh/known_hosts ファイルへのホスト鍵を自動的に決して追加せず、
ホスト鍵が変更されたホストに接続することを拒否します。これは、
man-in-the-middle (MITM) 攻撃に対して最大の保護を提供しますが、
/etc/ssh/ssh_known_hosts ファイルのメンテナスが不十分であるとき、
または新しいホストとの接続が頻繁に行なわれるとき、面倒になるかも
しれません。このオプションによって、ユーザは、すべての新しいホス
トに手動で強制的に追加します。
このフラグが accept-new に設定されているなら、ssh は、自動的に新
しいホスト鍵をユーザの known_hosts ファイルに追加しますが、ホスト
鍵が変更されたホストへの接続を許可しません。このフラグが no また
は off に設定されるなら、ssh は、新しいホストキーをユーザの既知の
ホストファイルに自動的に追加し、いくつかの制限を前提として、進行
する、変更されたホスト鍵 (hostkey) でホストへの接続を許可します。
このフラグが ask (デフォルト) に設定されるなら、新しいホスト鍵
は、それが、本当に行いたいことであることをユーザが確認した後だ
け、ユーザに既知のホストファイルに追加され、ssh は、ホスト鍵が変
更されたホストに接続することを拒否します。既知のホストのホスト鍵
は、すべての場合に自動的に確認されます。
SyslogFacility
ssh(1) からメッセージをログ記録するとき、使用される施設 (facil
ity) コードを与えます。指定できる値は、次の通りです: DAEMON,
USER, AUTH, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5,
LOCAL6, LOCAL7。デフォルトは、USER です。
TCPKeepAlive
システムが相手側に TCP keepalive (動作し続ける) メッセージを送信
するべきかどうかを指定します。それらが送信されるなら、マシンの 1
つの接続またはクラッシュの状態が、適切に通知されます。しかしなが
ら、これは、経路が一時的にダウンしているなら、接続が停止している
ことを意味し、ある人々には、それは面倒なであることが分かります。
デフォルトは、yes (TCP keepalive メッセージを送信すること) で、ク
ライアントは、ネットワークがダウンしているか、リモートホストが停
止しているなら、通知します。これは、スクリプトで重要で、多くの
ユーザもそれを望んでいます。
TCP keepalive メッセージを無効にするために、値は、no に設定される
べきです。また、プロトコルレベルのキープアライブ (keepalive) につ
いては、ServerAliveInterval も参照してください。
Tunnel クライアントとサーバの間の tun(4) デバイスの転送を要求します。引
数は、yes, point-to-point (レイヤ 3)、ethernet (レイヤ 2) または
no (デフォルト) でなければなりません。yes に指定することは、
point-to-point である、デフォルトのトンネルモードを要求します。
TunnelDevice
クライアント (local_tun) とサーバ (remote_tun) でオープンするため
の tun(4) デバイスを指定します。
引数は、local_tun[:remote_tun] でなければなりません。デバイスに
は、数字の ID、または、次に利用可能なトンネルデバイスを使用する
キーワード any を指定します。remote_tun が指定されないなら、any
をデフォルトとします。デフォルトは、any:any です。
UpdateHostKeys
ssh(1) が、認証が完了した後に、そしてそれらを UserKnownHostsFile
に追加し、送信されるサーバから追加のホスト鍵の通知を受け付けるべ
きであるかどうかを指定します。引数は、yes, no または ask でなけれ
ばなりません。このオプションは、サーバの代替ホスト鍵を学習するこ
とができ、古い公開鍵が削除される前にサーバが代替の公開鍵を送信こ
とができる優雅な鍵のローテーションをサポートします。
追加のホスト鍵は、ホストを認証するために使用された鍵がすでに信頼
されているか、またはユーザによって明示的に受け付けられている場合
のみ受け付けられ、ホストは、UserKnownHostsFile (すなわち、
GlobalKnownHostsFile ではない) を通して認証され、ホストは、証明書
ではなくプレーン鍵を使用して認証されました。
UpdateHostKeys は、ユーザがデフォルトの UserKnownHostsFile 設定を
上書きしていなくて、VerifyHostKeyDNS を有効にしていないなら、デ
フォルトで有効にされ、そうでなければ、UpdateHostKeys は、no に設
定されます。
UpdateHostKeys が、ask に設定されるなら、ユーザは、known_hosts
ファイルへの修正を確認するために問い合わされます。確認は、現在
ControlPersist と互換性がなく、それが有効にされているなら、無効に
されます。
現在、OpenSSH 6.8 以降の sshd(8) だけ、すべてのサーバのホスト鍵の
クライアントに通知するために使用される "hostkeys@openssh.com" プ
ロトコルの拡張をサポートします。
User ログインするユーザを指定します。異なるユーザ名が異なるマシンで使
用されるとき、これは、役に立ちます。これは、コマンド行でユーザ名
を与えることを覚えておく手間を削減します。
UserKnownHostsFile
余白類によって区切られた、ユーザホスト鍵データベースのために使用
する 1 つ以上のファイルを指定します。各ファイル名は、ユーザのホー
ムディレクトリを参照するチルダ表記、「トークン」セクションで説明
されているトークン、「環境変数」セクションで説明されている環境変
数を使用します。none の値によって、ssh(1) は、ユーザ特有の既知の
ホストファイルを無視します。デフォルトは、~/.ssh/known_hosts,
~/.ssh/known_hosts2 です。
VerifyHostKeyDNS
DNS と SSHFP リソースレコードを使用して、リモートの鍵を検証するか
どうかを指定しますこのオプションが yes に設定されているなら、クラ
イアントは、DNS からの安全な指紋と一致する鍵を暗黙に信頼します。
安全でない指紋は、あたかも、このオプションが ask と設定されていた
かのように扱われます。このオプションが ask に設定されているなら、
一致した指紋に関する情報が表示されますが、ユーザは、それでも
StrictHostKeyChecking オプションにしたがって新しいホスト鍵を確認
する必要があります。デフォルトは、no です。
また、ssh(1) の「ホスト鍵の検証」を参照してください。
VersionAddendum
OS またはサイト特有の修正を識別するために、通常のバージョン文字列
に追加する文字列を指定します。デフォルトは、``FreeBSD-20230316''
です。値 none は、これを無効にするに使用されます。
VisualHostKey
このフラグが yes に設定されるなら、リモートホスト鍵指紋の ASCII
アート表現は、ログインと未知のホスト鍵で指紋文字列に加えて印刷
(表示) されます。このフラグが no (デフォルト) に設定されるなら、
指紋文字列は、ログイン時に印刷 (表示) されません、そして指紋文字
列だけが未知のホスト鍵のために印刷 (表示) されます。
XAuthLocation
xauth(1) プログラムのフルパス名を指定します。デフォルトは、
/usr/local/bin/xauth です。
パターン
パターンは、0 個以上の非空白類文字、`*' (0 個以上の文字に適合するワイルド
カード)、または `?' (正確に 1 文字に適合するワイルドカード) から成りま
す。例えば、ドメインの ".co.uk" 集合で任意のホストのための 1 組の宣言を指
定するために、次のパターンを使用することができます:
Host *.co.uk
次のパターンは、192.168.0.[0-9] のネットワーク領域で任意のホストに適合し
ます:
Host 192.168.0.?
パターンリストは、パターンのコンマで区切られたリストです。パターンリスト
中のパターンは、それらの前に感嘆符 (`!') を付けることよって否定されます。
例えば、"dialup" プールを除いて、鍵が組織内のどこからでも使用することがで
きるように、次の (authorized_keys の) エントリを使用することができます:
from="!*.dialup.example.com,*.example.com"
取り消された一致は、決して、それ自体によって明確な結果を生成しないことに
注意してください。例えば、次のパターンリストと "host3" の照合を試みること
は、失敗します:
from="!host1,!host2"
ここで、解決は、ワイルドカードのような明確な照合を引き起こす用語を含むこ
とです:
from="!host1,!host2,*"
トークン
いくつかのキーワードへの引数は、実行時に拡張される、トークンを使用するこ
とができます:
%% リテラル `%'。
%C %l%h%p%r のハッシュ。
%d ローカルのユーザのホームディレクトリ。
%f サーバのホスト鍵のフィンガプリント (指紋)。
%H known_hosts ホスト名または検索されるアドレス。
%h リモートのホスト名。
%I KnownHostsCommand 実行のための理由を説明する文字列。
(CheckHostIP が有効なときのみ) アドレスによってホストを検索す
るとき、ADDRESS、ホスト名によって検索するとき、HOSTNAME、また
は宛先ホストのために使用するホスト鍵アルゴリズム優先リストを
準備するとき、ORDER のいずれかです。
%i ローカルのユーザ ID。
%K base64 エンコードされたホスト鍵。
%k 指定されているなら、ホスト鍵のエイリアス、そうでなければ、コ
マンド行で与えられたオリジナルのリモートホスト名です。
%L ローカルのホスト名。
%l ドメイン名を含むローカルのホスト名。
%n コマンド行で与えられるような、オリジナルのリモートホスト名。
%p リモートのポート。
%r リモートのユーザ名。
%T ローカルな tun(4) または tap(4) ネットワークインタフェース
は、トンネル転送が要求されるなら、割り当てられ、そうでなけれ
ば、"NONE" です。
%t サーバのホスト鍵のタイプ、例えば、ssh-ed25519。
%u ローカルのユーザ名。
CertificateFile, ControlPath, IdentityAgent, IdentityFile,
KnownHostsCommand, LocalForward, Match exec, RemoteCommand, RemoteForward
と UserKnownHostsFile は、トークン %%, %C, %d, %h, %i, %k, %L, %l, %n,
%p, %r と %u を受け付けます。
KnownHostsCommand は、さらに、トークン %f, %H, %I, %K と %t を受け付けま
す。
Hostname は、%% と %h のトークンを受け付けます。
LocalCommand は、すべてのトークンを受け付けます。
ProxyCommand と ProxyJump は、トークン %%, %h, %n, %p と %r を受け付けま
す。
環境変数
いくつかのキーワードへの引数は、クライアントの環境変数を ${} で囲むことに
よって実行時に展開することができます、例えば、${HOME}/.ssh は、ユーザの
.ssh ディレクトリを参照します。指定された環境変数が存在しないなら、エラー
が返され、そのキーワードのための設定は、無視されます。
キーワード CertificateFile, ControlPath, IdentityAgent, IdentityFile,
KnownHostsCommand と UserKnownHostsFile は、環境変数をサポートしていま
す。キーワード LocalForward と RemoteForward は、Unix ドメインソケットパ
スのためだけに環境変数をサポートしています。
関連ファイル
~/.ssh/config
これは、ユーザごとの設定ファイルです。このファイルの形式は、上に
説明されています。このファイルは、SSH クライアントによって使用さ
れます。悪用の可能性のために、このファイルは、厳密なパーミッショ
ンがなければなりません: ユーザのための読み込み/書き込み、と他のも
のによって書き込み可能でない。
/etc/ssh/ssh_config
システム全体の設定ファイル。このファイルは、ユーザの設定ファイル
で指定されない値、と設定ファイルがないユーザのためのデフォルトを
提供しています。このファイルは、すべてのユーザに読み込み可能でな
ければなりません。
関連項目
ssh(1)
作者
OpenSSH は、Tatu Ylonen によってリリースされたオリジナルのフリーな ssh
1.2.12 の派生物です。Aaron Campbell, Bob Beck, Markus Friedl, Niels
Provos, Theo de Raadt と Dug Song は、多くのバグを取り除き、新しい機能を
再び追加し、OpenSSH を作成しました。Markus Friedl は、SSH プロトコルバー
ジョン 1.5 と 2.0 のためのサポートを寄贈しました。
FreeBSD 13.2 March 10, 2023 FreeBSD 13.2