diff --git a/ja_JP.eucJP/man/man1/ssh-add.1 b/ja_JP.eucJP/man/man1/ssh-add.1 index 487d12c40b..8f9ee7ebed 100644 --- a/ja_JP.eucJP/man/man1/ssh-add.1 +++ b/ja_JP.eucJP/man/man1/ssh-add.1 @@ -1,185 +1,194 @@ -.\" $OpenBSD: ssh-add.1,v 1.35 2002/06/19 00:27:55 deraadt Exp $ +.\" $OpenBSD: ssh-add.1,v 1.38 2003/03/28 10:11:43 jmc Exp $ .\" .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" Japanese translation: $Id: ssh-add.1,v 1.6 2002-12-30 06:11:15 horikawa Exp $ +.\" Japanese translation: $Id: ssh-add.1,v 1.7 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" %FreeBSD% .\" $FreeBSD$ .\" .Dd September 25, 1999 .Dt SSH-ADD 1 .Os .Sh 名称 .Nm ssh-add .Nd 認証エージェントに RSA あるいは DSA 秘密鍵を追加する .Sh 書式 .Nm ssh-add -.Op Fl lLdDxX +.Op Fl lLdDxXc .Op Fl t Ar 生存時間 .Op Ar .Nm ssh-add .Fl s Ar リーダ .Nm ssh-add .Fl e Ar リーダ .Sh 解説 .Nm は認証エージェントである -.Xr ssh-agent 1 . +.Xr ssh-agent 1 に、 RSA あるいは DSA の認証鍵を追加します。 引数なしで実行された場合、これは .Pa $HOME/.ssh/id_rsa , .Pa $HOME/.ssh/id_dsa および .Pa $HOME/.ssh/identity の各ファイルを追加します。コマンドラインから別の ファイル名を与えることもできます。パスフレーズが必要な場合、 .Nm はユーザにそれを尋ねます。 このパスフレーズはユーザの端末から読み込まれます。 複数の identity ファイルが指定された場合、 .Nm は最後に入力されたパスフレーズをくり返し使います。 .Pp .Nm がうまく動くためには、認証エージェントが動いていて、 -しかもしれが現在のプロセスの先祖になっている必要があります。 +しかもこれが現在のプロセスの先祖になっている必要があります。 .Pp オプションは以下のとおりです: .Bl -tag -width Ds .It Fl l 現在、エージェントによって保持されているすべての鍵の指紋 (fingerprint) を表示します。 .It Fl L 現在、エージェントによって保持されているすべての公開鍵の 情報を表示します。 .It Fl d 鍵を追加するのではなく、エージェントから鍵を取り除きます。 .It Fl D エージェントからすべての鍵を取り除きます。 .It Fl x エージェントをパスワードでロックします。 .It Fl X エージェントのロックをはずします。 .It Fl t Ar 生存時間 エージェントに鍵を追加するさい、その鍵の最大生存時間を指定します。 生存時間は秒数、あるいは -.Xr sshd 8 . +.Xr sshd_config 5 で使われている形式で指定できます。 +.It Fl c +追加された鍵を、認証に使う前に確認するよう指定します。 +この確認は、以下で説明する +.Ev SSH_ASKPASS +プログラムによっておこなわれます。 +確認の成功は、 +.Ev SSH_ASKPASS +プログラムに入力された文字列ではなく、 +これが終了状態として 0 を返したかどうかによって決定されます。 .It Fl s Ar リーダ スマートカード .Ar reader に鍵を追加します。 .It Fl e Ar リーダ スマートカード .Ar reader から鍵を削除します。 .El .Sh 関連ファイル .Bl -tag -width Ds .It Pa $HOME/.ssh/identity そのユーザがプロトコル バージョン 1 で使用する RSA 認証用の秘密鍵が入っています。 .It Pa $HOME/.ssh/id_dsa そのユーザがプロトコル バージョン 2 で使用する DSA 認証用の秘密鍵が入っています。 .It Pa $HOME/.ssh/id_rsa そのユーザがプロトコル バージョン 2 で使用する RSA 認証用の秘密鍵が入っています。 .El .Pp 秘密鍵の入ったファイルは本人以外の誰にも読まれてはいけません。 他人から読めるようになっていると、 .Nm はこのファイルを無視します。 .Sh 環境変数 .Bl -tag -width Ds .It Ev "DISPLAY" and "SSH_ASKPASS" .Nm は端末で走っている場合、パスフレーズが必要になると その端末からパスフレーズを読み込みます。 .Nm の使える端末がないときでも、環境変数 .Ev DISPLAY と .Ev SSH_ASKPASS が設定されていれば、 .Nm は .Ev SSH_ASKPASS で指定されたプログラムを立ち上げ、パスフレーズを読むための X11 ウインドウを開きます。これは特に .Nm を .Pa .Xsession などのスクリプトから走らせるときに有効です (機種によっては、これがうまく動作するためには入力を .Pa /dev/null にリダイレクトしておく必要があるかもしれません)。 .It Ev SSH_AUTH_SOCK エージェントと通信するための unix ドメインソケットへのパス名が入っています。 .El .Sh 診断 .Nm は、成功すると終了状態として 0 を、指定されたコマンドが失敗すると 1 を、 認証エージェントと通信できない場合は 2 を返します。 .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/6/21 (for 3.3p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr ssh 1 , .Xr ssh-agent 1 , .Xr ssh-keygen 1 , .Xr sshd 8 diff --git a/ja_JP.eucJP/man/man1/ssh-agent.1 b/ja_JP.eucJP/man/man1/ssh-agent.1 index cb4a52f02b..b9542144d7 100644 --- a/ja_JP.eucJP/man/man1/ssh-agent.1 +++ b/ja_JP.eucJP/man/man1/ssh-agent.1 @@ -1,211 +1,221 @@ -.\" $OpenBSD: ssh-agent.1,v 1.35 2002/06/24 13:12:23 markus Exp $ +.\" $OpenBSD: ssh-agent.1,v 1.37 2003/03/28 10:11:43 jmc Exp $ .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" Japanese translation: $Id: ssh-agent.1,v 1.6 2002-12-30 06:11:15 horikawa Exp $ +.\" Japanese translation: $Id: ssh-agent.1,v 1.7 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" %FreeBSD% .\" $FreeBSD$ .\" .Dd September 25, 1999 .Dt SSH-AGENT 1 .Os .Sh 名称 .Nm ssh-agent .Nd 認証エージェント .Sh 書式 .Nm ssh-agent .Op Fl a Ar bindするアドレス .Op Fl c Li | Fl s +.Op Fl t Ar 鍵のデフォルト生存時間 .Op Fl d .Op Ar コマンド Op Ar 引数 ... .Nm ssh-agent .Op Fl c Li | Fl s .Fl k .Sh 解説 .Nm は (RSA や DSA の) 公開鍵認証で使われる認証鍵を保持する プログラムです。基本的には、まず .Nm -を Xセッションあるいはログインセッションの始めに起動させ、 +を X セッションあるいはログインセッションの始めに起動させ、 これ以外のすべてのウインドウやプログラムがその ssh-agent プログラムのクライアントとして起動するようにします。 エージェントは環境変数を使うことにより、他のマシンに .Xr ssh 1 を使ってログインするときに自動的に検出され、認証に利用できます。 .Pp オプションには次のようなものがあります: .Bl -tag -width Ds .It Fl a Ar bindするアドレス Unix ドメインソケットを .Ar bind_address に bind するようにします。 この値は、デフォルトでは .Pa /tmp/ssh-XXXXXXXX/agent. になっています。 .It Fl c .Dv 標準出力 に C シェル用のコマンドを出力します。 環境変数 .Ev SHELL が csh 系のシェルになっているようなら、 これがデフォルトになります。 .It Fl s .Dv 標準出力 に Bourne シェル用のコマンドを出力します。 環境変数 .Ev SHELL が csh 系以外のシェルのようなら、これがデフォルトです。 .It Fl k 現在動いている認証エージェント ( 環境変数 .Ev SSH_AGENT_PID によって与えられている) を kill します。 +.It Fl t Ar 鍵のデフォルト生存時間 +エージェントに追加された鍵の最大生存時間のデフォルト値を指定します。 +生存時間は秒数、あるいは +.Xr sshd_config 5 +で使われている形式で指定できます。 +ですが、この値よりも +.Xr ssh-add 1 +で値が指定されれば、そちらのほうが優先されます。 +このオプションが指定されない場合、いちど追加された鍵は永久に存在しつづけます。 .It Fl d デバッグモード。このオプションが指定されていると .Nm は fork しません。 .El .Pp コマンドラインが与えられた場合、そのコマンドは この認証エージェントの子プロセスとして起動されます。 与えたコマンドが終了した場合、認証エージェントも終了します。 .Pp 最初、認証エージェントは鍵をまったく持たない状態で起動されます。 認証鍵をここに追加するには .Xr ssh-add 1 を使います。これを引数なしで起動すると、 .Xr ssh-add 1 は .Pa $HOME/.ssh/id_rsa , .Pa $HOME/.ssh/id_dsa および .Pa $HOME/.ssh/identity の各ファイルを追加します。 この identity ファイルにパスフレーズが必要な場合、 .Xr ssh-add 1 はそのパスフレーズを尋ねてきます (X11 を使っているときは、 .Xr ssh-add 1 -は X のちょっとしたアプリケーションを使います、 +は X のちょっとしたアプリケーションを使います。 X を使っていないときは端末を使って尋ねてきます)。 この後、identity ファイルに含まれている認証鍵が 認証エージェントに送られます。 認証エージェントには複数の鍵を格納することができ、 認証エージェントはこれらの鍵を自動的に使用します。 .Ic ssh-add -l を実行すると、現在その認証エージェントによって保持されている 鍵の一覧が表示されます。 .Pp 認証エージェントは、ユーザのローカル PC やノートパソコン、あるいは端末で 実行されるものです。認証用のデータを他のマシンに置く必要はなく、 認証のためのパスフレーズがネットワーク上を流れることも決してありません。 しかし認証エージェントに対する接続は SSH のリモートログインを越えて 転送され、ユーザはその認証鍵によって与えられた権限をネットワーク上の どこでも安全に行使できるというわけです。 .Pp -認証エージェントを使うためには、おもに 2つの方法があります。 +認証エージェントを使うためには、おもに 2 つの方法があります。 ひとつは、認証エージェントが新しい子プロセスを走らせる方法で、 このときエージェントはいくつかの環境変数を export します。 もうひとつは認証エージェントにシェル用のコマンドを出力させ (これは .Xr sh 1 あるいは .Xr csh 1 どちらかの文法で生成されます)、 認証エージェントを呼び出したシェルがそのコマンドを評価 (eval) する方法です (訳注: 要するに後のプロセスに環境変数を渡せればよい)。 これ以後 .Xr ssh 1 は認証エージェントに接続するためにこれらの変数の内容を使います。 .Pp エージェントは要求されたチャンネルを経由して秘密鍵を送るようなことは 決してしません。かわりに、秘密鍵が必要な操作はすべてエージェント側で おこない、結果だけが要求した側に返されるようになっています。 このためエージェントを使うことによって秘密鍵がクライアントに 漏れるようなことはありません。 .Pp Unix ドメインのソケットが作られ、そのソケットの名前が .Ev SSH_AUTH_SOCK 環境変数に入れられます。このソケットはそのユーザのみ がアクセス可能ですが、現在のところ root または同一ユーザの 別プロセスによって簡単に悪用される危険性があります。 .Pp .Ev SSH_AGENT_PID 環境変数は認証エージェントの プロセス ID を保持します。 .Pp (訳注: 認証エージェントに子プロセスを起動させた場合、) 指定したコマンドが終了すると、認証エージェントも自動的に終了します。 .Sh 関連ファイル .Bl -tag -width Ds .It Pa $HOME/.ssh/identity そのユーザがプロトコル バージョン 1 で使う RSA 秘密鍵が 入っています。 .It Pa $HOME/.ssh/id_dsa そのユーザがプロトコル バージョン 2 で使う DSA 秘密鍵が 入っています。 .It Pa $HOME/.ssh/id_rsa そのユーザがプロトコル バージョン 2 で使う RSA 秘密鍵が 入っています。 .It Pa /tmp/ssh-XXXXXXXX/agent. 認証エージェントに対する接続を保持する Unix ドメイン のソケットです。 このソケットは、所有者だけが読めるようになっているはずです。 このソケットは認証エージェントが終了するとき自動的に削除されます。 .El .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/6/26 (for 3.4p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr ssh 1 , .Xr ssh-add 1 , .Xr ssh-keygen 1 , .Xr sshd 8 diff --git a/ja_JP.eucJP/man/man1/ssh-keygen.1 b/ja_JP.eucJP/man/man1/ssh-keygen.1 index 0a2dc6a2b0..b76ed8c6f7 100644 --- a/ja_JP.eucJP/man/man1/ssh-keygen.1 +++ b/ja_JP.eucJP/man/man1/ssh-keygen.1 @@ -1,316 +1,317 @@ -.\" $OpenBSD: ssh-keygen.1,v 1.54 2002/06/19 00:27:55 deraadt Exp $ +.\" $OpenBSD: ssh-keygen.1,v 1.56 2003/03/28 10:11:43 jmc Exp $ .\" .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" Japanese translation: $Id: ssh-keygen.1,v 1.9 2003-01-07 04:04:43 horikawa Exp $ +.\" Japanese translation: $Id: ssh-keygen.1,v 1.10 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" %FreeBSD% .\" $FreeBSD$ .\" .Dd September 25, 1999 .Dt SSH-KEYGEN 1 .Os .Sh 名称 .Nm ssh-keygen .Nd 認証用の鍵を生成、管理、および変換する .Sh 書式 .Nm ssh-keygen +.Bk -words .Op Fl q .Op Fl b Ar ビット数 .Fl t Ar 鍵の種類 .Op Fl N Ar 新しいパスフレーズ .Op Fl C Ar コメント (訳注: SSH1 のみ) .Op Fl f Ar 出力先 identity ファイル +.Ek .Nm ssh-keygen .Fl p .Op Fl P Ar 古いパスフレーズ .Op Fl N Ar 新しいパスフレーズ .Op Fl f Ar パスフレーズを変更する identity ファイル .Nm ssh-keygen .Fl i .Op Fl f Ar 変換する identity ファイル .Nm ssh-keygen .Fl e .Op Fl f Ar 変換する identity ファイル .Nm ssh-keygen .Fl y .Op Fl f Ar identity ファイル .Nm ssh-keygen .Fl c .Op Fl P Ar パスフレーズ .Op Fl C Ar コメント .Op Fl f Ar コメントを変更する identity ファイル .Nm ssh-keygen .Fl l .Op Fl f Ar 指紋を表示する identity ファイル .Nm ssh-keygen .Fl B .Op Fl f Ar ダイジェストを表示する identity ファイル .Nm ssh-keygen .Fl D Ar リーダ .Nm ssh-keygen .Fl U Ar リーダ .Op Fl f Ar 入力する identity ファイル .Sh 解説 .Nm は .Xr ssh 1 で認証に使う鍵を生成、管理および変換します。 .Nm は SSH プロトコル バージョン 1 で使われる RSA 鍵と、 SSH プロトコル バージョン 2 で使われる RSA 鍵および DSA 鍵を生成できます。 生成する鍵の種類は .Fl t オプションによって指定できます。 .Pp ふつう、RSA認証 または DSA認証で SSH を使いたいユーザは、 一度このプログラムを実行すれば .Pa $HOME/.ssh/identity 、 .Pa $HOME/.ssh/id_dsa または .Pa $HOME/.ssh/id_rsa に鍵 (identity ファイル) を作ることができます。また .Pa /etc/rc などで見れらるように、 システム管理者がホスト鍵を生成するためにこのプログラムを 使うこともできます。 .Pp 通常、このプログラムは鍵を生成したあと、その鍵 (identity) をどのファイルに -格納すればよいのか尋ねます。公開鍵は、秘密鍵を含む identity +格納すればよいのか尋ねます。公開鍵は、秘密鍵を含む identity ファイルの名前に .Dq .pub をつけた名前のファイルとして格納されます。またこのプログラムは パスフレーズも尋ねてきます。 任意の長さの文字列をパスフレーズとして使用することができます。 パスフレーズをつけないときには、これは空でもかまいません (ホスト鍵のパスフレーズは必ず空でなければいけません)。 -パラフレーズはパスワードに似ていますが、パスワードとは違って +パスフレーズはパスワードに似ていますが、パスワードとは違って 単語の列や句読点、数値、空白など、好きな文字を含めることができます。 よいパスフレーズとは、 10〜30文字程度の長さで、簡単な文章や容易に 推測できるものではないことです (英語の散文では 1文字あたりのエントロピーは わずか 1〜2 ビットしかなく、パスフレーズとしては非常に望ましくありません)。 また大文字と小文字が混じっているものがよいでしょう。 パスフレーズは .Fl p オプションによって、後から変更することもできます。 .Pp 失われてしまったパスフレーズをもとに戻すことはできません。もし パスフレーズを忘れてしまったり、なくしてしまったときには、 新しい鍵を生成してその公開鍵を別のマシンにコピーしなくてはならないでしょう。 .Pp RSA1 鍵 (訳注: SSH1 で使う鍵) の場合、 鍵のファイルにはコメントフィールドがあります。これはユーザが 鍵を区別するためだけに便宜的に用意されているものです (訳注: SSH2 の鍵にはコメントはありません)。コメントには 鍵の用途やその他有用な情報を書いておくことができます。 最初に鍵が作られるとき、コメントは .Dq user@host の形に初期化されますが、 .Fl c オプションを使えば変更することができます。 .Pp 鍵を生成したあと、それを使用可能にするために どこに置けばよいかは後で説明しています。 .Pp オプションには次のようなものがあります: .Bl -tag -width Ds .It Fl b Ar ビット数 生成する鍵のビット数を指定します。最小値は 512 ビットです。 -ふつうは 1024 ビットの鍵で充分だと考えられており、これ以上鍵を -長くしてもセキュリティの向上には役に立たず、遅くなるだけです。 -デフォルトは 1024 ビットになっています。 +ふつうは 1024 ビットの鍵で充分だと考えられており、 +デフォルトも 1024 ビットになっています。 .It Fl c 秘密鍵ファイルおよび公開鍵ファイルのコメントを変更します。 このオプションは プロトコル バージョン 1 における RSA 鍵に対してのみ有効です。 まず秘密鍵の入っているファイル名を訊かれ、 パスフレーズがあればそれを入力したあとに新しいコメントを入力します。 .It Fl e このオプションは OpenSSH 形式の秘密鍵あるいは公開鍵ファイルを 読み、 .Sq SECSH Public Key File Format (SECSH 公開鍵ファイル形式) の鍵を標準出力に表示します。 このオプションを使うと、OpenSSH の鍵を いくつかの商用 SSH 実装で使われている形式の鍵に変換できます。 .It Fl f Ar ファイル名 鍵を入れるファイルのファイル名を指定します。 .It Fl i このオプションは SSH2-互換の形式である、暗号化されていない 秘密鍵 (あるいは公開鍵) ファイルを読み、それを OpenSSH 互換の秘密鍵 (あるいは公開鍵) に変換して 標準出力に表示します。 .Nm は .Sq SECSH Public Key File Format (SECSH 公開鍵ファイル形式) の鍵も読みこめます。 このオプションを使うと、いくつかの商用 SSH 実装で使われている 鍵を OpenSSH で使用できます。 .It Fl l 指定された秘密鍵ファイルあるいは公開鍵ファイルの 指紋 (fingerprint) を表示します。プロトコル バージョン 1 における RSA 鍵 (RSA1) もサポートされています。 プロトコル バージョン 2 の RSA および DSA 鍵の場合、 .Nm はそれに該当する公開鍵ファイルを探し出してその指紋を表示します。 .It Fl p 新しく秘密鍵をつくるのではなく、すでにある秘密鍵ファイルのパス フレーズを変更します。まず秘密鍵の入っているファイルを訊かれ、 古いパスフレーズを入力したあと、新しいパスワードを 2回入力します。 .It Fl q 静かな .Nm ssh-keygen 。 .Pa /etc/rc で新しい鍵をつくるときに使われます。 .It Fl y このオプションは OpenSSH 形式の秘密鍵ファイルを読み、 OpenSSH 形式の公開鍵を標準出力に表示します。 .It Fl t Ar 鍵の種類 生成する鍵の種類を指定します。 とりうる値として、プロトコル バージョン 1 で使う .Dq rsa1 、およびプロトコル バージョン 2 で使う .Dq rsa または .Dq dsa があります。 .It Fl B 指定された秘密鍵あるいは公開鍵の bubblebabble ダイジェストを 表示します。 .It Fl C Ar コメント 新しいコメントを指定します。 .It Fl D Ar リーダ スマートカード .Ar リーダ に格納されている RSA 公開鍵をダウンロードします。 .It Fl N Ar 新しいパスフレーズ 新しいパスフレーズを指定します。 .It Fl P Ar パスフレーズ (古い) パスフレーズを指定します。 -.It Fl U Ar reader +.It Fl U Ar リーダ すでに存在している RSA 公開鍵をスマートカード .Ar リーダ にアップロードします。 .El .Sh 関連ファイル .Bl -tag -width Ds .It Pa $HOME/.ssh/identity そのユーザの、プロトコル バージョン 1 における -RSA 認証用 秘密鍵を格納します。このファイルはその +RSA 認証用秘密鍵を格納します。このファイルはその ユーザ以外の誰にも見せてはいけません。この鍵を生成するときに パスフレーズを指定することもできます。パスフレーズは、3DES を使って ファイル中の秘密鍵の部分を暗号化するのに用いられます。このファイルは .Nm によって自動的にアクセスされるわけではありませんが、 秘密鍵ファイルのデフォルトの名前としてこれが提案されます。 .Xr ssh 1 はログイン要求があった際にこのファイルを読み込みます。 .It Pa $HOME/.ssh/identity.pub プロトコル バージョン 1 における RSA 認証用の公開鍵を格納します。 そのユーザが RSA 認証でログインしたいすべてのマシンの .Pa $HOME/.ssh/authorized_keys にこのファイルの内容を追加しておいてください。 このファイルの内容を秘密にしておく必要はありません。 .It Pa $HOME/.ssh/id_dsa そのユーザの、プロトコル バージョン 2 における -DSA 認証用 秘密鍵を格納します。このファイルはその +DSA 認証用秘密鍵を格納します。このファイルはその ユーザ以外の誰にも見せてはいけません。この鍵を生成するときに パスフレーズを指定することもできます。パスフレーズは、3DES を使って ファイル中の秘密鍵の部分を暗号化するのに用いられます。このファイルは .Nm によって自動的にアクセスされるわけではありませんが、 秘密鍵ファイルのデフォルトの名前としてこれが提案されます。 .Xr ssh 1 はログイン要求があった際にこのファイルを読み込みます。 .It Pa $HOME/.ssh/id_dsa.pub プロトコル バージョン 2 における DSA 認証用の公開鍵を格納します。 そのユーザが DSA 認証でログインしたいすべてのマシンの .Pa $HOME/.ssh/authorized_keys にこのファイルの内容を追加しておいてください。 このファイルの内容を秘密にしておく必要はありません。 .It Pa $HOME/.ssh/id_rsa そのユーザの、プロトコル バージョン 2 における -RSA 認証用 秘密鍵を格納します。このファイルはその +RSA 認証用秘密鍵を格納します。このファイルはその ユーザ以外の誰にも見せてはいけません。この鍵を生成するときに パスフレーズを指定することもできます。パスフレーズは、3DES を使って ファイル中の秘密鍵の部分を暗号化するのに用いられます。このファイルは .Nm によって自動的にアクセスされるわけではありませんが、 秘密鍵ファイルのデフォルトの名前としてこれが提案されます。 .Xr ssh 1 はログイン要求があった際にこのファイルを読み込みます。 .It Pa $HOME/.ssh/id_rsa.pub プロトコル バージョン 2 における RSA 認証用の公開鍵を格納します。 そのユーザが RSA 認証でログインしたいすべてのマシンの .Pa $HOME/.ssh/authorized_keys にこのファイルの内容を追加しておいてください。 このファイルの内容を秘密にしておく必要はありません。 .El .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/6/21 (for 3.3p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr ssh 1 , .Xr ssh-add 1 , .Xr ssh-agent 1 , .Xr sshd 8 .Rs .%A J. Galbraith .%A R. Thayer .%T "SECSH Public Key File Format" .%N draft-ietf-secsh-publickeyfile-01.txt .%D March 2001 .%O work in progress material .Re diff --git a/ja_JP.eucJP/man/man1/ssh-keyscan.1 b/ja_JP.eucJP/man/man1/ssh-keyscan.1 index 5e6ca7019e..c28ade965d 100644 --- a/ja_JP.eucJP/man/man1/ssh-keyscan.1 +++ b/ja_JP.eucJP/man/man1/ssh-keyscan.1 @@ -1,173 +1,175 @@ -.\" $OpenBSD: ssh-keyscan.1,v 1.14 2002/02/13 08:33:47 mpech Exp $ +.\" $OpenBSD: ssh-keyscan.1,v 1.15 2003/03/28 10:11:43 jmc Exp $ .\" .\" Copyright 1995, 1996 by David Mazieres . .\" .\" Modification and redistribution in source and binary forms is .\" permitted provided that due credit is given to the author and the .\" OpenBSD project by leaving this copyright notice intact. .\" -.\" Japanese translation: $Id: ssh-keyscan.1,v 1.3 2002-12-30 06:11:15 horikawa Exp $ +.\" Japanese translation: $Id: ssh-keyscan.1,v 1.4 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" %FreeBSD% .\" $FreeBSD$ .\" .Dd January 1, 1996 .Dt SSH-KEYSCAN 1 .Os .Sh 名称 .Nm ssh-keyscan .Nd ssh 公開鍵を収集する .Sh 書式 .Nm ssh-keyscan +.Bk -words .Op Fl v46 .Op Fl p Ar ポート番号 .Op Fl T Ar タイムアウト秒数 .Op Fl t Ar 鍵の種類 .Op Fl f Ar ファイル名 .Op Ar ホスト名 | アドレスリスト ホスト名リスト .Op Ar ... +.Ek .Sh 解説 .Nm は複数のホストから ssh 用のホスト公開鍵を収集するための ユーティリティです。これは .Pa ssh_known_hosts ファイルを構築し、検証するのに役立つよう作られています。 .Nm はシェルスクリプトあるいは perl スクリプトから使うのに適した、 -最小限のインターフェイスを備えています。 +最小限のインタフェースを備えています。 .Pp .Nm -はノンブロッキング ソケット I/O を使い、なるべく多くのホストに +はノンブロッキングソケット I/O を使い、なるべく多くのホストに 並列にアクセスします。そのためこれは非常に効率的です。 -1000台ほどのホストから -なるドメインの鍵も数十秒で集めてしまいます、たとえいくつかのホストで +1000 台ほどのホストから +なるドメインの鍵も数十秒で集めてしまいます。たとえいくつかのホストで ssh が走っていなかったり、ホストがダウンしていたりしても、です。 スキャンのために当該マシンにログインする必要はありません。また、 スキャンするときに暗号を用いる必要もありません。 .Pp オプションは以下のとおりです: .Bl -tag -width Ds .It Fl p Ar ポート番号 接続するリモートホスト上のポートを指定します。 .It Fl T 接続要求がタイムアウトするまでの秒数を指定します。 あるホストに接続を試みてから、あるいは最後にそのホストから何か 受信してから .Pa timeout 秒が経過するとその接続は閉じられ、問題のホストは使用不能として -認識されます。デフォルトでは 5秒です。 +認識されます。デフォルトでは 5 秒です。 .It Fl t Ar 鍵の種類 ホストから取得する鍵の種類を指定します。 とりうる値は、プロトコル バージョン 1 の .Dq rsa1 と、プロトコル バージョン 2 の .Dq rsa あるいは .Dq dsa です。 複数の値を指定するときは、カンマで区切ってください。 デフォルトではこれは .Dq rsa1 になっています。 .It Fl f Ar ファイル名 このファイルから、ホスト名あるいは .Pa アドレスリスト ホスト名リスト の組を読み込みます。書式は 1行1項目です。引数として .Pa - が指定された場合、 .Nm は標準入力からホスト名あるいは .Pa アドレスリスト ホスト名リスト の組を読み込みます。 .It Fl v 冗長表示モード。 .Nm が進行中のデバッグメッセージを表示するようにします。 .It Fl 4 .Nm が IPv4 アドレスのみを使うよう強制します。 .It Fl 6 .Nm が IPv6 アドレスのみを使うよう強制します。 .El .Sh セキュリティ .Nm -をつかって、鍵を検証せずに ssh_known_hosts ファイルを +をつかって、鍵を検証せずに ssh_known_hosts ファイルを構築した場合、 .I man in the middle (なりすまし) 攻撃に対して無防備になります。 いっぽう、お使いのセキュリティモデルがそのような危険を はらんでいる場合、一度こちらの ssh_known_hosts を作ってしまえば、 .Nm はそれ以後の、改竄された鍵ファイルや man in the middle 攻撃を 検知するのに使えます。 .Sh 使用例 .Pp .Pa hostname で指定されるマシンの .Pa rsa1 ホスト鍵を表示する: .Bd -literal $ ssh-keyscan hostname .Ed .Pp ファイル .Pa ssh_hosts にあるホストのうち、 新しいホスト、あるいは ソートされた .Pa ssh_known_hosts ファイルにあるものと鍵が違っているホストを見つける: .Bd -literal $ ssh-keyscan -t rsa,dsa -f ssh_hosts | \e\ sort -u - ssh_known_hosts | diff ssh_known_hosts - .Ed .Sh 関連ファイル .Pa 入力形式: .Bd -literal 1.2.3.4,1.2.4.4 name.my.domain,name,n.my.domain,n,1.2.3.4,1.2.4.4 .Ed .Pp .Pa rsa1 鍵の出力形式: .Bd -literal ホストあるいはホスト名のリスト ビット数 べき指数 係数 .Ed .Pp .Pa rsa および dsa 鍵の出力形式: .Bd -literal ホストあるいはホスト名のリスト 鍵の種類 base64エンコードされた鍵 .Ed .Pp .Pa keytype の値は .Dq ssh-rsa あるいは .Dq ssh-dsa のどちらかです。 .Pp .Pa /etc/ssh/ssh_known_hosts .Sh バグ サーバ側のバージョンが 2.9 より古いと、 このプログラムはスキャンしたすべてのマシンのコンソール上に "Connection closed by remote host" のメッセージを残します。 これは、このプログラムが ssh 用のポートに接続したあと、 公開鍵を読みこんですぐに接続を切ってしまうためです。 .Sh 関連項目 .Xr ssh 1 , .Xr sshd 8 .Sh 作者 David Mazieres が最初のバージョンを書き、 Wayne Davison がプロトコル バージョン 2 のサポートを追加しました。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/6/21 (for 3.3p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 diff --git a/ja_JP.eucJP/man/man1/ssh.1 b/ja_JP.eucJP/man/man1/ssh.1 index f3267bf0ea..ee1a24e06f 100644 --- a/ja_JP.eucJP/man/man1/ssh.1 +++ b/ja_JP.eucJP/man/man1/ssh.1 @@ -1,997 +1,1001 @@ .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $OpenBSD: ssh.1,v 1.167 2002/09/27 15:46:21 stevesk Exp $ -.\" Japanese translation: $Id: ssh.1,v 1.12 2003-01-07 04:04:43 horikawa Exp $ +.\" $OpenBSD: ssh.1,v 1.168 2003/03/28 10:11:43 jmc Exp $ +.\" Japanese translation: $Id: ssh.1,v 1.13 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama -.\" %FreeBSD: src/crypto/openssh/ssh.1,v 1.25 2002/10/29 10:16:02 des Exp % +.\" %FreeBSD: src/crypto/openssh/ssh.1,v 1.26 2003/04/23 17:10:53 des Exp % .\" $FreeBSD$ .\" .Dd September 25, 1999 .Dt SSH 1 .Os .Sh 名称 .Nm ssh .Nd OpenSSH SSH クライアント (リモート ログイン プログラム) .Sh 書式 .Nm ssh .Op Fl l Ar ログイン名 .Ar ホスト名 | ユーザ@ホスト名 .Op Ar コマンド .Pp .Nm ssh +.Bk -words .Op Fl afgknqstvxACNTX1246 .Op Fl b Ar bindするアドレス .Op Fl c Ar 暗号化オプション .Op Fl e Ar エスケープ文字 .Op Fl i Ar identityファイル .Op Fl l Ar ログイン名 .Op Fl m Ar MAC指定 .Op Fl o Ar オプション .Op Fl p Ar ポート番号 .Op Fl F Ar 設定ファイル .Oo Fl L Xo .Sm off .Ar ポート番号 : .Ar ホスト : .Ar ホスト側ポート番号 .Sm on .Xc .Oc +.Ek +.Bk -words .Oo Fl R Xo .Sm off .Ar ポート番号 : .Ar ホスト : .Ar ホスト側ポート番号 .Sm on .Xc .Oc .Op Fl D Ar ポート番号 .Ar ホスト名 | ユーザ@ホスト名 .Op Ar コマンド +.Ek .Sh 解説 .Nm (SSH クライアント) はリモートマシンにログイン したり、リモートマシン上でコマンドを実行するためのプログラムです。 これは rlogin と rsh を置き換えるためのもので、安全でないネットワーク -上にある、2つの信頼されていないホスト間で、暗号化された安全な通信を +上にある、2 つの信頼されていないホスト間で、暗号化された安全な通信を 提供します。X11 の接続や任意の TCP/IP ポートなども安全な通信路を通して 転送できます。 .Pp .Nm は指定された .Ar ホスト名 に接続し、ログインします。 ユーザはリモートマシンに対して、本人であることを証明する必要があります。 これにはプロトコルのバージョンに応じたいくつかの方法のうち一つを使います: .Pp .Ss SSH プロトコル バージョン 1 .Pp 最初に、ユーザがリモートマシン上の .Pa /etc/hosts.equiv あるいは .Pa /etc/ssh/shosts.equiv に記されているマシンからログインしてきて、 さらにそのユーザの名前が両方のホストで同じならば、そのユーザは すぐさまログインが許可されます。 つぎに、 .Pa \&.rhosts あるいは .Pa \&.shosts がリモートホスト上のそのユーザのホームディレクトリに存在していて、そこに クライアントホスト名とそのホスト上におけるユーザ名が記されている 行が存在すれば、そのユーザはログインが許可されます。 この形の認証はふつう、これ単体ではサーバから許可されません。 安全ではないからです。 .Pp -2番目の認証方法は +2 番目の認証方法は .Pa rhosts または .Pa hosts.equiv を RSA ベースのホスト認証と組み合わせて使うことです。 これは、もしログインが .Pa $HOME/.rhosts , .Pa $HOME/.shosts , .Pa /etc/hosts.equiv , あるいは .Pa /etc/ssh/shosts.equiv で許可されていて、さらにサーバ側がクライアントのホスト鍵 ( .Sx FILES セクションの .Pa /etc/ssh/ssh_known_hosts と .Pa $HOME/.ssh/known_hosts の項を参照) を確認できる場合にのみ ログインが許可されます。この認証方法を使うと IP 詐称、 -DNS 詐称 および 経路詐称 によるセキュリティホールをふさぐことができます。 +DNS 詐称および経路詐称によるセキュリティホールをふさぐことができます。 [管理者の方へ: .Pa /etc/hosts.equiv や .Pa $HOME/.rhosts 、 そして一般的な rlogin/rsh プロトコルは 本質的に危険であり、セキュリティを考えるなら禁止しなくてはいけません] .Pp -3つめの認証方法として、 +3 つめの認証方法として、 .Nm は RSA ベースの認証をサポートしています。 このやりかたは公開鍵暗号技術に基づいています: 暗号システムのなかには、 -暗号化/復号化をそれぞれ別の鍵をつかっておこなうことができ、さらに復号化用の +暗号化/復号化をそれぞれ別の鍵をつかっておこなうことができ、さらに復号化用の 鍵から暗号化用の鍵が推測することはできないものがあります。RSA はこのような 暗号システムのひとつで、以下のようなアイデアで認証をおこないます。 まず各ユーザは、認証のための「秘密鍵」「公開鍵」とよばれる鍵の対を つくります。サーバは公開鍵を知っていますが、秘密鍵のほうはユーザだけが 知っているものとします。 .Pa $HOME/.ssh/authorized_keys ファイルには、ログインが許可されている公開鍵の一覧が書かれています。 ユーザがログインするさい、 .Nm プログラムは、そのユーザがどの鍵をつかって 認証したがっているかをサーバに伝えます。サーバはこの鍵が許される ものであるかどうかを検査し、もし許されているならば、ユーザ (実際には ユーザのために走っている .Nm プログラム) に「チャレンジ (挑戦)」と 呼ばれるものを送ります。これはサーバ側で生成された でたらめな数で、 ユーザの公開鍵によって暗号化されています。このチャレンジはユーザが もっている正しい秘密鍵によってのみ復号化することができます。ユーザ側の クライアントはこのときチャレンジを秘密鍵をつかって復号化してみせること で、秘密鍵の中身をサーバ側に見せることなしに、それを持っていることを サーバに対し証明するのです。 .Pp .Nm は RSA の認証プロトコルを自動的におこないます。ユーザは .Xr ssh-keygen 1 をつかって自分の RSA 鍵の対をつくります。このプログラムは秘密鍵を ユーザのホームディレクトリ内の .Pa $HOME/.ssh/identity ファイルに、公開鍵を .Pa $HOME/.ssh/identity.pub ファイルに格納します。ユーザはつぎにこの .Pa identity.pub をリモートマシン上の自分のホームディレクトリにある .Pa $HOME/.ssh/authorized_keys ファイルにコピーしなくてはいけません ( .Pa authorized_keys ファイルは従来の .Pa $HOME/.rhosts -ファイルに相当し、1行ごとにひとつの鍵を格納します。 +ファイルに相当し、1 行ごとにひとつの鍵を格納します。 各行はかなり長くなることもあります)。 この後、ユーザはパスワードなしでログインすることができます。 RSA 認証は rhosts 認証よりもずっと安全です。 .Pp RSA 認証を使う際にいちばん便利なのは「認証エージェント」と呼ばれる ものを使うことでしょう。詳しくは .Xr ssh-agent 1 のマニュアルページをごらんください。 .Pp もし他の認証方法が失敗した場合、 .Nm はユーザにパスワードを要求します。 このパスワードは検査のためリモートホストに送られますが、 -すべての通信は暗号化されているため、ネットワークを盗聴している何物かに +すべての通信は暗号化されているため、ネットワークを盗聴している何者かに よってパスワードが見られてしまうようなことはありません。 .Pp .Ss SSH プロトコル バージョン 2 .Pp ユーザがバージョン 2 のプロトコルで接続したときにも、同様の認証方法が 使えるようになります。まずクライアントは最初にホストベース認証を 試そうとするでしょう。これは .Cm PreferredAuthentications のデフォルト値によります。この認証に失敗すると、次は公開鍵認証を 試みます。これもだめなら最後にキーボードインタラクティブ認証と パスワード認証を試みます。 .Pp 公開鍵による方法は前節に書かれている RSA 認証と似ており、 RSA または DSA アルゴリズムを使うことができます。 クライアントは自分の秘密鍵である .Pa $HOME/.ssh/id_dsa または .Pa $HOME/.ssh/id_rsa を使ってセッション識別子に署名し、この結果をサーバに送ります。 サーバはこれに対応する公開鍵が .Pa $HOME/.ssh/authorized_keys ファイル中に存在するかどうか検査し、 もし双方の鍵が存在して、なおかつその署名が正しければアクセスを 許可します。 セッション識別子は共有 Diffie-Hellman 値によって与えられます。 この値を知ることができるのはクライアントとサーバだけです。 .Pp 公開鍵認証が失敗するか、あるいはそれが使えなかった場合、 リモートホストにはそのユーザであることを証明するパスワードを 送ることができます。 .Pp 加えて、 .Nm ではホスト間認証やチャレンジ・レスポンス認証もサポートしています。 .Pp さらにプロトコル 2 では、秘匿性 (通信は 3DES, Blowfish, CAST128 または Arcfour によって暗号化されます) やデータの改竄を防ぐ機構 (data integrity protection) (hmac-sha1, hmac-md5) が提供されています。 プロトコル 1 では通信内容が改竄されていないことを保証するような 強力なメカニズムは存在しないので注意してください。 .Pp .Ss ログインセッション と リモート実行 .Pp そのユーザが本人であることが確認できると、 サーバは与えられたコマンドを実行するか、あるいはユーザを そのマシンにログインさせてリモートマシンでの標準的なシェルを 与えます。リモートコマンドあるいはシェルにおけるすべての通信は 自動的に暗号化されます。 .Pp 仮想端末が割り当てられている場合 (通常のログインセッション時)、 ユーザは以下のエスケープ文字を使うことができます。 .Pp 仮想端末が割り当てられていない場合、そのセッションは透過になります。 そのため、バイナリデータでも確実に転送できます。 ほとんどのシステムでは、たとえ仮想端末が割り当てられている場合でも エスケープ文字に .Dq none を設定することによって、そのセッションを透過にすることができます。 .Pp セッションは、リモートマシン上のコマンドやシェルが完了し、すべての X11 や TCP/IP 接続が閉じられると終了します。このときのリモート プログラムの終了状態が .Nm ssh の終了状態となります。 .Pp .Ss エスケープ文字 .Pp 仮想端末が割り当てられている場合、ssh ではエスケープ文字を使った 機能がいくつかサポートされています。 .Pp チルダ記号そのものを 1回入力するには .Ic ~~ を押すか、上で述べられている以外の文字をチルダに続けます。 エスケープ文字は、つねに改行の直後に来なければ特別な文字とは 見なされません。エスケープ文字は、設定ファイルの .Cm EscapeChar 設定項目あるいはコマンドラインの .Fl e オプションで変更できます。 .Pp 現在サポートされているエスケープ機能 (エスケープ文字はデフォルトの .Ql ~ と仮定します) : .Bl -tag -width Ds .It Cm ~. 接続を切る .It Cm ~^Z -sshをバックグラウンドに移行させる +ssh をバックグラウンドに移行させる .It Cm ~# いま転送されている接続の一覧を表示する .It Cm ~& -sshをバックグラウンドに移行させ、転送された接続あるいは X11 の +ssh をバックグラウンドに移行させ、転送された接続あるいは X11 の セッションが終了するのを待ってログアウトする .It Cm ~? エスケープ文字の一覧を表示する .It Cm ~C コマンドラインをオープンする ( .Fl L や .Fl R オプションを使っていて、ポート転送を追加したい場合に有効です) .It Cm ~R その接続の rekeying を要求する (SSH プロトコル バージョン 2 で、 なおかつ相手がこれをサポートしているときのみ有効) .El .Pp .Ss X11 と TCP の転送 .Pp .Cm ForwardX11 項目が .Dq yes に設定されており (または後の .Fl X および .Fl x オプションを参照してください)、 ユーザが X11 を使っている (環境変数 .Ev DISPLAY が設定されている) 場合、X11 ディスプレイへの接続は 自動的にリモート側に転送されます。つまり、 シェル (あるいはコマンド) から起動された X11 プログラムはみな 暗号化された通信路を通り、本来の X サーバへの接続は ローカルマシン上からなされるようになります。 ユーザは .Ev DISPLAY を手動で設定すべきではありません。 X11 接続の転送はコマンドラインあるいは設定ファイルによって設定できます。 X11 転送は、セキュリティを危険にさらすことに相当することもあるので 注意してください。 .Pp .Nm によって設定された .Ev DISPLAY の値はサーバマシン上を指すようになっていますが、 ディスプレイ番号は 0 より大きい値になっているでしょう。 これは正常な状態です。 .Nm は暗号化された通信路を介して接続を転送します。 そのため、サーバマシン上に X サーバの .Dq プロキシー をつくるのでこうなるのです。 .Pp また、 .Nm はサーバマシン上で Xauthority 情報を自動的に用意します。 .Nm はこのためにランダムな認証クッキーを生成し、サーバ側の Xauthority に格納し、接続が転送されるときはすべてこのクッキーを持たせる ようにします。そして接続が開かれるときに、これが本物のクッキーと置き換わる ようにするのです。本物の認証クッキーがサーバ側に送られることは 決してありません (し、暗号化されないままでクッキーが送られる こともありません)。 .Pp .Cm ForwardAgent 設定項目が .Dq yes になっていて、ユーザが認証エージェントを使っている場合、 認証エージェントに対する接続は自動的にリモート側に転送されます。 (以下で説明する .Fl A と .Fl a オプションも参照のこと)。 .Pp 安全な通信路をつかった任意の TCP/IP 接続への転送は、 コマンドラインあるいは設定ファイルで指定します。TCP/IP 転送の 応用として、ひとつは電子預金への安全な接続が考えられます。ほかにも ファイアウォールをまたいで接続するなどの使いみちがあるでしょう。 .Pp .Ss サーバ認証 .Pp .Nm はこれまでに使った鍵すべてが入っているデータベースを 自動的に保持し、検査します。これらのうち、ホスト鍵はユーザの ホームディレクトリにある .Pa $HOME/.ssh/known_hosts に格納されます。これらに加え、 .Pa /etc/ssh/ssh_known_hosts も既知のホストとして自動的に検査されます。 新しいホストは、ユーザ側のファイルに自動的に追加されていきます。 もしあるホストの鍵がこれまでと変わっていた場合、 .Nm は警告を発してパスワード認証を禁止します。 これはトロイの木馬がユーザのパスワードを盗むのを防ぐためです。 この仕組みのもうひとつの目的は、どこか他の場所で man-in-the-middle 攻撃がおこなわれ、暗号化がたくみにかわされてしまうのを防ぐことです。 .Cm StrictHostKeyChecking 設定項目はホスト鍵が知られていなかったり、 それが変更されていた場合のログインを防ぐために使われます。 .Pp オプションは次のとおりです: .Bl -tag -width Ds .It Fl a 認証エージェントの転送を禁止します。 .It Fl A 認証エージェントの転送を許可します。 これは設定ファイルによってホストごとに指定することも可能です。 .Pp 認証エージェントの転送には注意が必要です。 リモートホスト上で (エージェントの UNIX ドメインソケットに対する) ファイルアクセス権限を無視できてしまうユーザがいる場合は、 転送された接続を介してローカル側の 認証エージェントにアクセスできてしまうことになります。 攻撃側は認証エージェントから鍵そのものを盗むことはできませんが、 認証エージェントがもっている鍵に認証をおこなわせることはできます。 .It Fl b Ar bindするアドレス -複数のインタフェイスやエイリアスされたアドレスをもつ -マシン上で、使用するインタフェイスを指定します。 +複数のインタフェースやエイリアスされたアドレスをもつ +マシン上で、使用するインタフェースを指定します。 .It Fl c Ar blowfish|3des|des このセッションで使われる暗号化の方法を指定します。デフォルトでは .Ar 3des が使われます。これが安全であると考えられているためです。 .Ar 3des (トリプル des) は 3つの異なる鍵をつかって 暗号化-復号化-暗号化をおこないます。 .Ar blowfish は高速なブロック暗号化アルゴリズムで、かなり安全であり、 .Ar 3des よりもずっと高速です。 .Ar des は、 .Ar 3des 暗号をサポートしていない、もはや古くなったプロトコル 1 の実装と 相互運用するためにのみサポートされています。 .Ar des 暗号は弱いため、このオプションを使用することはおすすめできません。 .It Fl c Ar 暗号化オプション プロトコル バージョン 2 では、カンマで区切ったリストにより、 暗号化の方法を優先順位をつけて指定することができます。 暗号化についての詳しい情報は .Cm 暗号化 の項をご覧ください。 .It Fl e Ar ch|^ch|none 仮想端末を使うセッションにおけるエスケープ文字を指定します (デフォルトは .Ql ~ )。エスケープ文字は行頭に来たときのみ認識されます。 エスケープ文字のあとにドット .Pq Ql \&. がきた場合その接続は閉じられ、control-Z がきた場合には その接続はサスペンドされます。 -このエスケープ文字自身が続いたときには、この文字が 1回だけ送られます。 +このエスケープ文字自身が続いたときには、この文字が 1 回だけ送られます。 エスケープ文字を .Dq none に指定するとあらゆるエスケープ機能が禁止され、 セッションは完全に透過になります。 .It Fl f .Nm がコマンドを実行する直前に、 バックグラウンドに移行するよう指示します。これは .Nm にパスワードあるいはパスフレーズを入力する必要はあるものの、 そのコマンド自体はバックグラウンドで実行させたいときに便利です。 これは .Fl n オプションも含んでいます。 リモートサイトで X11 プログラムを起動させる場合には、 .Ic ssh -f host xterm などとやるのがおすすめです。 .It Fl g リモートホストが転送されたローカルなポートに接続することを許可します。 .It Fl i Ar identityファイル RSA認証 あるいは DSA 認証のさいに identity (秘密鍵) を読むファイルを指定します。 デフォルトは、プロトコル バージョン 1 の場合 ユーザのホームディレクトリにある .Pa $HOME/.ssh/identity 、プロトコル バージョン 2 の場合は .Pa $HOME/.ssh/id_rsa および .Pa $HOME/.ssh/id_dsa になっています。identity ファイルは設定ファイルによって、 ホストごとに指定することもできます。複数の .Fl i -オプションを指定することも可能です。 -(設定ファイルで複数の鍵を指定することもできます。) +オプションを指定することも可能です +(設定ファイルで複数の鍵を指定することもできます)。 .It Fl I Ar スマートカードデバイス 使用するスマートカードデバイスを指定します。引数には、 ユーザの RSA 秘密鍵を格納するスマートカードと .Nm が通信するのに使うデバイスを指定します。 .It Fl k Kerberos チケットおよび AFS トークンの転送を禁止します。 これは設定ファイルによって、ホストごとに指定することもできます。 .It Fl l Ar ログイン名 リモートマシン上でログインするユーザ名を指定します。 これは設定ファイルによって、ホストごとに指定することもできます。 .It Fl m Ar MAC指定 プロトコル バージョン 2 では、カンマで区切ったリストにより、 使用する MAC (message authentication code, メッセージ認証コード) を 優先順位をつけて指定することができます。 MAC についての詳しい情報は .Cm MACs の項をご覧ください。 .It Fl n 標準入力を .Pa /dev/null からリダイレクトするように (つまり標準入力からの読み込みを禁止した状態に) します。 .Nm をバックグラウンドで走らせるときには、このオプションが不可欠です。 よくある手としては、リモートマシン上で X11 のプログラムを 走らせるときにこれを使うことです。たとえば、 .Ic ssh -n shadows.cs.hut.fi emacs & で emacs を立ち上げると、X11 接続は暗号化された経路を 介して自動的に転送されます。 .Nm -プログラムはこの後バックグラウンドに移行するでしょう。 +プログラムはこの後バックグラウンドに移行するでしょう (これは .Nm がパスワードあるいはパスフレーズを訊いてくるときには使えません。 .Fl f -オプションを参照してください。) +オプションを参照してください)。 .It Fl N リモートコマンドを実行しません。これはポート転送のみを おこないたい場合に便利です (プロトコル バージョン 2 のみ)。 .It Fl o Ar オプション 設定ファイルと同じ形式でオプションを与えたいときに使用します。 これはコマンドラインオプションでは指定できないオプションを 指定したいときに便利です。 .It Fl p Ar ポート番号 リモートホストに接続するポートを指定します。 これは設定ファイルによって、ホストごとに指定することもできます。 .It Fl q 静かなモード。すべての警告メッセージや診断メッセージは抑制されます。 .It Fl s リモート側でサブシステムの実行を要求するときに使われます。 サブシステムは SSH2 プロトコルで実現された機能であり、 これを使うと SSH を他のアプリケーション (sftp など) への安全な 通信路として利用することができます。この場合、 サブシステム名はリモートコマンドとして指定します。 .It Fl t 強制的に仮想端末を割り当てます。これはリモートマシン上で 任意の画面ベースのプログラムを実行するとき (たとえば、メニューサービスを実装するときなど) に非常に便利です。 複数の .Fl t をつけると、たとえ .Nm がローカル側での端末を持っていない場合でも 強制的に仮想端末を割り当てます。 .It Fl T 仮想端末の割り当てを禁止します。 .It Fl v 冗長表示モード。 .Nm が進行中のデバッグメッセージを表示するようにします。 これは接続や認証、設定の問題をデバッグするときに助けとなります。 複数の .Fl v -オプションをつけると出力が増えます。最大は 3個です。 +オプションをつけると出力が増えます。最大は 3 個です。 .It Fl x X11 の転送を禁止します。 .It Fl X X11 の転送を許可します。 これは設定ファイルによって、ホストごとに指定することもできます。 .Pp X11 の転送には注意が必要です。 リモートホスト上で (そのユーザの X 認証のための) ファイルアクセス権限を 無視できてしまうユーザがいる場合は、転送された接続を介してローカル側の X11 ディスプレイにアクセスできてしまうことになります。 すると攻撃側はキーストロークを盗み見るなどの行為が可能になってしまうかも しれません。 .It Fl C すべてのデータを圧縮するよう指示します (標準入力、標準出力、 標準エラー出力、転送された X11 や TCP/IP 接続を含む)。圧縮に 使われるアルゴリズムは .Xr gzip 1 と同じもので、プロトコル バージョン 1 の場合 .Dq レベル が .Cm CompressionLevel 設定項目によって変更できます。 圧縮は、モデムその他の遅い接続においては必要ですが、高速な ネットワークでは速度が低下するだけです。このデフォルト値は ホスト間ごとに設定ファイルに書くことができます。 .Cm Compression 設定項目を参照してください。 .It Fl F Ar 設定ファイル ユーザ毎の設定ファイルに別のファイルを指定します。 設定ファイルがコマンドラインから与えられた場合、 システム全体の設定ファイル .Pq Pa /etc/ssh/ssh_config は無視されます。デフォルトでは、ユーザ毎の設定ファイルは .Pa $HOME/.ssh/config になっています。 .It Fl L Ar ポート番号:ホスト:ホスト側ポート番号 与えられたローカル (クライアント) ホスト上のポートが、 与えられたリモートホスト上のポートに転送されるようにします (ローカル→リモートのポート転送)。 これはローカル側で .Ar port に listen (接続受け付け) 用の ソケットを割り当てることによりおこなわれます。 このポートに向けておこなわれた接続はつねに 安全な通信路を経由してリモートマシン上に到達し、そこから .Ar host のポート .Ar hostport に接続されるようになります。 ポート転送は設定ファイルによっても指定できます。特権ポートを 転送できるのは root だけです。IPv6 アドレスの場合は、指定する 形式が異なります: .Ar port/host/hostport .It Fl R Ar ポート番号:ホスト:ホスト側ポート番号 与えられたリモート (サーバ) ホスト上のポートが、 与えられたローカルホスト上のポートに転送されるようにします (リモート→ローカルのポート転送)。 これはリモート側で .Ar port に listen (接続受け付け) 用の ソケットを割り当てることによりおこなわれます。 このポートに向けておこなわれた接続はつねに 安全な通信路を経由してローカルマシン上に到達し、ここから .Ar host のポート .Ar hostport に接続されるようになります。 ポート転送は設定ファイルによっても指定できます。特権ポートを 転送できるのは、リモートマシン上に root としてログインしているときだけです。 IPv6 アドレスの場合は、指定する形式が異なります: .Ar port/host/hostport .It Fl D Ar ポート番号 ローカルホスト側における、アプリケーションレベルの .Dq 動的な ポート転送を指定します。 これは次のように実現しています。まずローカル側で .Ar ポート番号 を listen するソケットを割り当て、このポートに向けて 接続が張られると、その接続はつねに安全な通信路に転送されるように なります。そして、ここでアプリケーションプロトコルが使われ、 そのリモートマシンからどこに接続するかを決めることができます。 今のところ SOCKS4 プロトコルが使われており、 .Nm は SOCKS4 サーバのようにふるまいます。 特権ポートを転送できるのは root だけです。 ダイナミックポート転送は設定ファイルでも指定できます。 .It Fl 1 .Nm がプロトコル バージョン 1 のみを使うよう強制します。 .It Fl 2 .Nm がプロトコル バージョン 2 のみを使うよう強制します。 .It Fl 4 .Nm が IPv4 アドレスのみを使うよう強制します。 .It Fl 6 .Nm が IPv6 アドレスのみを使うよう強制します。 .El .Sh 設定ファイル さらに .Nm は、設定情報をユーザごとの設定ファイルおよび、 システム全体にわたる設定ファイルから取得します。 このファイルの形式と設定項目は .Xr ssh_config 5 で説明されています。 .Sh 環境変数 .Nm はふつう以下の環境変数を設定します: .Bl -tag -width Ds .It Ev DISPLAY 環境変数 .Ev DISPLAY は X11 サーバの場所を示しています。これは .Nm によって、 .Dq hostname:n という形の値が自動的に設定されます。 ここで hostname の部分はシェルが走っているホストを表しており、 n は n \*(>= 1 の整数です。 .Nm は X11 接続を安全な通信路で転送するために、この特別な値を使います。 X11 の接続が安全でなくなってしまうため、ユーザは環境変数 .Ev DISPLAY を自分で設定すべきではありません (また、それをやってしまうとユーザは認証に必要なクッキーを手で コピーしなければならなくなります)。 .It Ev HOME ユーザのホームディレクトリのパス名が設定されます。 .It Ev LOGNAME 環境変数 .Ev USER と同じです。 これは、この変数を使うシステムで互換性を保つために設定されます。 .It Ev MAIL ユーザのメールボックスのパス名が設定されます。 .It Ev PATH デフォルトの .Ev PATH です。これは .Nm ssh のコンパイル時に指定されます。 .It Ev SSH_ASKPASS パスフレーズを入力するさい、 .Nm が端末から起動されていると .Nm はパスフレーズをその端末から要求します。 .Nm が制御できる端末を持っておらず、環境変数 .Ev DISPLAY および .Ev SSH_ASKPASS が設定されている場合、 .Nm は .Ev SSH_ASKPASS によって指定されるプログラムを起動し、X11 ウインドウを使って パスフレーズを要求します。 これは .Nm を .Pa .Xsession -やそれに類するスクリプトから呼び出す際にとくに役に立ちます。 +やそれに類するスクリプトから呼び出す際にとくに役に立ちます (マシンによっては、これがうまく動くためには 標準入力を .Pa /dev/null -にリダイレクトする必要があるかもしれません) +にリダイレクトする必要があるかもしれません)。 .It Ev SSH_AUTH_SOCK 認証エージェントと通信するのに使われる Unix ドメインソケットの パスを表しています。 .It Ev SSH_CONNECTION 接続の両端にあるクライアントとサーバの識別子です。 -この変数にはスペースで区切られた 4つの値が入っています: +この変数にはスペースで区切られた 4 つの値が入っています: クライアントの IP アドレス、クライアントのポート番号、 -サーバの IP アドレス および サーバのポート番号です。 +サーバの IP アドレスおよびサーバのポート番号です。 .It Ev SSH_ORIGINAL_COMMAND 強制コマンドが実行されると、この変数には、 元々指定されていたコマンドラインの値が入ります。 ここから本来の引数を取り出すことができます。 .It Ev SSH_TTY 現在のシェルあるいはコマンドに割り当てられている tty の名前 (端末装置へのパス) に設定されます。現在のセッションが端末を 持たない場合、この変数は設定されません。 .It Ev TZ デーモンが起動したとき、現在の時間帯を表すタイムゾーン変数が 設定されていると、それがここに入ります (つまりデーモンは その値を新規の接続に渡します)。 .It Ev USER ログインしているユーザ名に設定されます。 .El .Pp これらに加えて、 .Nm は .Pa $HOME/.ssh/environment ファイルが存在してアクセス可能になっていればそれを読み込み、 .Dq VARNAME=value という形式の行を環境変数に追加します。 .Xr sshd_config 5 の .Cm PermitUserEnvironment 設定項目を参照してください。 .Sh 関連ファイル .Bl -tag -width Ds .It Pa $HOME/.ssh/known_hosts ユーザがログインしたことのあるホストすべてのホスト鍵を保持します ( .Pa /etc/ssh/ssh_known_hosts にあるものを除く)。 .Xr sshd 8 も見てください。 .It Pa $HOME/.ssh/identity, $HOME/.ssh/id_dsa, $HOME/.ssh/id_rsa 認証のための identity (秘密鍵および公開鍵) が格納されています。 それぞれ、プロトコル 1 の RSA 認証用、プロトコル 2 の DSA 認証用、 プロトコル 2 の RSA 認証用です。 これらのファイルには他人に見られてはいけないデータが入っているため、 そのユーザには読めても、他人からはアクセスできないようにしてください (読み込み/書き込み/実行属性ともに)。 .Nm は、他人にアクセスできるようになっている identity ファイルは無視するので注意してください。 鍵を作成するときにパスフレーズを指定することも可能です。この パスフレーズはファイル中の見られるべきでない部分を、 3DES を使って暗号化するのに用いられます。 .It Pa $HOME/.ssh/identity.pub, $HOME/.ssh/id_dsa.pub, $HOME/.ssh/id_rsa.pub 認証のための公開鍵です (ここには identity ファイルの 公開できる部分が可読形式で格納されています)。 .Pa $HOME/.ssh/identity.pub ファイルの内容は、プロトコル バージョン 1 の RSA 認証を 使ってログインしたいすべてのマシン上の .Pa $HOME/.ssh/authorized_keys ファイルに含まれている必要があります。また、 .Pa $HOME/.ssh/id_dsa.pub および .Pa $HOME/.ssh/id_rsa.pub ファイルの内容も同様に、 プロトコル バージョン 2 の RSA/DSA 認証を 使ってログインしたいすべてのマシン上の .Pa $HOME/.ssh/authorized_keys ファイルに含まれている必要があります。 これらのファイルは見られてもよいため、他人が読めるように -しておいてもかまいません (が、別にそうする必要はあります)。 +しておいてもかまいません (が、別にそうする必要はありません)。 これらのファイルが自動的に使われることは決してありません。 また、必要でもありません。これらはただ単に ユーザの便宜をはかるために提供されています。 .It Pa $HOME/.ssh/config ユーザごとの個人用設定ファイルです。 このファイルの形式と設定項目は .Xr ssh_config 5 で説明されています。 .It Pa $HOME/.ssh/authorized_keys このユーザのログインに使われる公開鍵 (RSA/DSA) の一覧です。この形式は .Xr sshd 8 のマニュアルで説明されています。 このファイルのいちばん簡単な形式は .pub 公開鍵ファイルと同じものです。 これは特に見られてまずいというものではないのですが、 できればこのユーザからは読み/書きが可能で、 他人からはアクセス不可能なパーミッションに設定しておくのがよいでしょう。 .It Pa /etc/ssh/ssh_known_hosts システム全体の known_hosts ファイルです。 このファイルはシステム管理者によって用意され、その組織内で 使われるすべてのマシン用の公開ホスト鍵を格納するようになっているはずです。 このファイルは誰でも読めるようになっていなければいけません。 -このファイルは 1行ごとに次のような形式で公開鍵を格納しています +このファイルは 1 行ごとに次のような形式で公開鍵を格納しています (各フィールドはスペースで区切られます): システム名、公開鍵およびオプションとしてコメント用フィールド。 同一のマシンにいくつかの 異なる名前が使われている場合は、それらはすべてカンマで区切って 列挙する必要があります。この形式は .Xr sshd 8 マニュアルページで説明されています。 .Pp .Xr sshd 8 がログイン時にクライアント側のホストを検証するさいには、 システムの別名 (ネームサーバの返す canonical name) が 使われます。これ以外の名前が必要なのは次のような理由によります。 .Nm は、鍵を検査する前にユーザの指定した名前を (DNS 的に) 正式なものに 変換する、ということをしません。なぜなら -もし何物かがネームサーバに仕掛けを入れれば、 +もし何者かがネームサーバに仕掛けを入れれば、 これを使ってホスト認証をだますことが可能になってしまうからです。 .It Pa /etc/ssh/ssh_config システム全体にわたる設定ファイルです。 このファイルの形式と設定項目は .Xr ssh_config 5 で説明されています。 .It Pa /etc/ssh/ssh_host_key, /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_rsa_key -これら 3つのファイルにはホスト秘密鍵が格納されています。 +これら 3 つのファイルにはホスト秘密鍵が格納されています。 これらは、 .Cm RhostsRSAAuthentication (rhosts-RSA 認証) および .Cm HostbasedAuthentication (ホストベース認証) で使われます。 プロトコル バージョン 1 で .Cm RhostsRSAAuthentication を使う場合、ホスト鍵は root にしか読めないので .Nm を setuid root しておく必要があります。 プロトコル バージョン 2 の場合、 .Nm は .Cm HostbasedAuthentication のホスト鍵のアクセスに .Xr ssh-keysign 8 を使用します。 これで、この認証方法を使うときも .Nm を setuid root しておく必要がなくなります。 デフォルトでは .Nm は setuid root されていません。 .It Pa $HOME/.rhosts このファイルは .Pa \&.rhosts 認証で使われる、ログインを許可されたホスト名と -ユーザの対の一覧です。(このファイルは rlogin と rsh でも -使われるので、安全ではありません。) +ユーザの対の一覧です (このファイルは rlogin と rsh でも +使われるので、安全ではありません)。 ファイル中の各行はホスト名 (ネームサーバが返す正式な形式のもの) およびそのホストでの ユーザ名をスペースで区切って格納します。 ユーザのホームディレクトリが NFS パーティション上にあるような マシンでは、このファイルは誰にでも読み込み 可能でなければなりません。なぜなら .Xr sshd 8 はこれを root として読むからです。 加えて、このファイルはそのユーザの所有でなければならず、 他の人が書き込み可能であってはいけません。 ほとんどのマシンにおける推奨されるパーミッションは、そのユーザが 読み書き可能で、他の人はアクセス不可能というものです。 .Pp デフォルトでは、 .Xr sshd 8 で \s+2.\s0rhosts 認証が許可されるには、 まず RSA ホスト認証に成功することが必要になっています。 サーバマシンが .Pa /etc/ssh/ssh_known_hosts の中にそのクライアントのホスト鍵を持っていない場合は、 .Pa $HOME/.ssh/known_hosts ファイルに格納されます。こうするのに いちばん簡単な方法は、サーバマシンから ssh を使ってクライアントマシンに接続し直すことです。 こうすることによって、そのホスト鍵が自動的に .Pa $HOME/.ssh/known_hosts に追加されます。 .It Pa $HOME/.shosts このファイルは .Pa \&.rhosts とまったく同じように扱われます。このファイルは、 .Nm rlogin や .Xr rsh 1 ではログインできないようにしつつ、 .Nm で rhosts 認証を使えるようにするためにあります。 .It Pa /etc/hosts.equiv このファイルは .Pa \&.rhosts 認証 で使われます。ここには正式なホスト名が各行に記載されています (この形式の完全な説明は .Xr sshd 8 マニュアルページにあります)。このファイルに クライアントホストが載っていると、クライアント側とサーバ側の ユーザ名が同じ場合にログインは自動的に許可されます。普通は RSA ホスト認証が成功してからでなくてはいけません。このファイルは root のみが書き込めるようにしておくべきです。 .It Pa /etc/ssh/shosts.equiv このファイルは .Pa /etc/hosts.equiv とまったく同じように扱われます。このファイルは .Nm を使うが、rsh/rlogin は使わないユーザのログインを許可するのに便利です。 .It Pa /etc/ssh/sshrc このファイルのコマンドは、ユーザがログインしてシェル (あるいはコマンド) が開始する直前に .Nm によって実行されます。より詳しい情報については .Xr sshd 8 マニュアルページを見てください。 .It Pa $HOME/.ssh/rc このファイルのコマンドは、ユーザがログインしてシェル (あるいはコマンド) が開始する直前に .Nm によって実行されます。より詳しい情報については .Xr sshd 8 マニュアルページを見てください。 .It Pa $HOME/.ssh/environment 環境変数の追加定義を格納します。上の .Sx 環境変数 の節を見てください。 .El .Sh 診断 .Nm は終了状態として、リモートコマンドの終了状態を返します。 エラーが発生した場合は 255 を返します。 .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/10/15 (for 3.5p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr rsh 1 , .Xr scp 1 , .Xr sftp 1 , .Xr ssh-add 1 , .Xr ssh-agent 1 , .Xr ssh-keygen 1 , .Xr telnet 1 , .Xr ssh_config 5 , .Xr ssh-keysign 8 , .Xr sshd 8 .Rs .%A T. Ylonen .%A T. Kivinen .%A M. Saarinen .%A T. Rinne .%A S. Lehtinen .%T "SSH Protocol Architecture" .%N draft-ietf-secsh-architecture-12.txt .%D January 2002 .%O work in progress material .Re diff --git a/ja_JP.eucJP/man/man5/ssh_config.5 b/ja_JP.eucJP/man/man5/ssh_config.5 index dcba26fa65..05d86a004e 100644 --- a/ja_JP.eucJP/man/man5/ssh_config.5 +++ b/ja_JP.eucJP/man/man5/ssh_config.5 @@ -1,718 +1,720 @@ .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $OpenBSD: ssh_config.5,v 1.5 2002/08/29 22:54:10 stevesk Exp $ -.\" Japanese translation: $Id: ssh_config.5,v 1.4 2003-03-24 04:55:31 horikawa Exp $ +.\" $OpenBSD: ssh_config.5,v 1.7 2003/03/28 10:11:43 jmc Exp $ +.\" Japanese translation: $Id: ssh_config.5,v 1.5 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" -.\" %FreeBSD: src/crypto/openssh/ssh_config.5,v 1.8 2003/02/11 12:11:15 des Exp % +.\" %FreeBSD: src/crypto/openssh/ssh_config.5,v 1.9 2003/04/23 17:10:53 des Exp % .\" $FreeBSD$ .Dd September 25, 1999 .Dt SSH_CONFIG 5 .Os .Sh 名称 .Nm ssh_config .Nd OpenSSH SSH クライアント 設定ファイル .Sh 書式 .Bl -tag -width Ds -compact .It Pa $HOME/.ssh/config .It Pa /etc/ssh/ssh_config .El .Sh 解説 .Nm ssh は以下のものから (この順序で) 設定情報を取得します: .Bl -enum -offset indent -compact .It コマンドラインオプション .It ユーザごとの設定ファイル .Pq Pa $HOME/.ssh/config .It システム全体にわたる (system-wide) 設定ファイル .Pq Pa /etc/ssh/ssh_config .El .Pp 各設定項目にはそれそれ最初に見つかったものが使われます。 設定ファイルはいくつかのセクションに分かれており、これらは .Dq Host キーワードにより区切られています。あるセクションの設定が 適用されるのは、コマンドラインから与えられたホスト名が、 このキーワードで指定されているパターンのどれかにマッチするときだけです。 .Pp 各設定項目で最初に見つかった値が使われるので、ホストに特化した 宣言をファイルの先頭近くに置くようにし、一般的なものを後に置くのが よいでしょう。 .Pp 設定ファイルは以下のような形式になっています: .Pp 空行、および .Ql # で始まる行は、コメントとみなされます。 .Pp それ以外の場合、この行は -.Dq キーワード 引数 . +.Dq キーワード 引数 という形式になっています。 キーワードと引数は、空白またはひとつの -.Ql = ; +.Ql = (間に空白を含んでいてもよい) によって区切られます。 後者の形式は、 .Nm ssh , .Nm scp および .Nm sftp などで .Fl o オプションを使って設定項目を指定するときに、 空白をクォートする必要がないようにするためです。 .Pp とりうるキーワードとその意味は以下のとおりです (キーワードは大文字小文字どちらでもかまいませんが、 その引数は大文字小文字が区別されることに注意してください) : .Bl -tag -width Ds .It Cm Host (ホスト) これ以後の (次の .Cm Host キーワードが現れるまでの) 設定項目を、ここで 指定されたパターンのどれかにマッチするホストだけに 制限します。パターン中では .Ql \&* と -.Ql ? +.Ql \&? がワイルドカードとして使えます。単独の .Ql \&* は、すべてのホストに対するデフォルトとして使えます。 ここでいうホストとは、コマンドライン引数で与えられた .Ar ホスト名 そのもののことです (つまり、ホスト名はマッチングの前に正規化されたりしません)。 .It Cm AFSTokenPassing (AFS トークンパス) リモートホストに AFS トークンを渡すかどうかを指定します。 この引数がとりうる値は .Dq yes あるいは .Dq no のどちらかになります。 このオプションはプロトコル バージョン 1 でのみ有効です。 .It Cm BatchMode (バッチ処理モード) これが .Dq yes に設定されていると、パスフレーズおよびパスワードの 入力を求めないようになります。このオプションはスクリプトなどにおける バッチ処理中で、パスワードを打ち込むユーザがいない場合に便利です。 引数の値は .Dq yes あるいは .Dq no です。 デフォルトは .Dq no (パスワードあるいはパスフレーズの入力を求める) です。 .It Cm BindAddress (bind するアドレス) 複数のインターフェイスあるいはエイリアスされたアドレスを もっているマシンで、通信に使うインターフェイスを指定します。 このオプションは .Cm UsePrivilegedPort 項目が .Dq yes になってるときは機能しないので注意してください。 .It Cm ChallengeResponseAuthentication (チャレンジ・レスポンス認証) チャレンジ・レスポンス認証をおこなうかどうかを指定します。 この引数がとりうる値は .Dq yes あるいは .Dq no です。デフォルトでは .Dq yes (チャレンジ・レスポンス認証をおこなう) になっています。 .It Cm CheckHostIP (ホスト IP の検査) このオプションが .Dq yes に設定されていると、ssh は接続先ホスト名の IP アドレスが .Pa known_hosts に書かれている同一ホスト名 IP アドレスと同じかどうか 検査するようになります。 これによって、DNS 詐称によりホスト鍵が変えられたことを 検出できます。このオプションが .Dq no に設定されている場合は、この検査はおこなわれません。 デフォルトでは、これは .Dq no (ホスト IP アドレスの検査をおこなわない) になっています。 .It Cm Cipher (暗号化アルゴリズム) プロトコル バージョン 1 のセッションで使う暗号化の アルゴリズムを指定します。現在のところ -Currently, -.Dq blowfish +.Dq blowfish , .Dq 3des および .Dq des がサポートされており、デフォルトは .Dq 3des です。 .Ar des は、 .Ar 3des 暗号をサポートしていない、もはや古くなったプロトコル 1 の実装と 相互運用するためにのみサポートされています。 この暗号は弱いため、使用はおすすめしません。 .It Cm Ciphers (複数の暗号化アルゴリズム) プロトコル バージョン 2 で使う暗号化アルゴリズムの 優先順位を指定します。複数の暗号化アルゴリズムを カンマで区切って指定します。 デフォルトは .Pp .Bd -literal ``aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour, aes192-cbc,aes256-cbc'' .Ed の順になっています。 .It Cm ClearAllForwardings (すべてのポート転送をキャンセル) 設定ファイルあるいはコマンドラインで指定された、 ローカル、リモートおよびダイナミックなポート転送をすべて キャンセルします。このオプションは設定ファイルで指定されている ポート転送を .Nm ssh のコマンドラインで打ち消すためにあり、 .Xr scp 1 や .Xr sftp 1 で自動的に使われます。この引数の値は .Dq yes あるいは .Dq no です。デフォルトでは .Dq no になっています。 .It Cm Compression (圧縮) データ圧縮をおこなうかどうかを指定します。 引数の値は .Dq yes あるいは .Dq no です。 デフォルトでは .Dq no (圧縮をおこなわない) になっています。 .It Cm CompressionLevel (圧縮レベル) 圧縮をおこなうさいの圧縮レベルを指定します。 この引数がとる値は 整数の 1 (速い) から 9 (遅い、高圧縮率) までです。 デフォルトの値は 6 で、ほとんどのアプリケーションにはこれで充分です。 この値の意味は .Xr gzip 1 と同じです。 このオプションはプロトコル バージョン 1 のみに適用されることに 注意してください。 .It Cm ConnectionAttempts (接続試行回数) -接続を試みる回数 (1秒に一回) を指定します。これを越えると +接続を試みる回数 ( 1 秒に 1 回) を指定します。これを越えると ssh は終了してしまいます。この値は整数で なければなりません。これは、ときどき接続に失敗する環境での スクリプトなどに便利です。 -デフォルトは 1回です。 +デフォルトは 1 回です。 .It Cm DynamicForward (動的なポート転送) 暗号化された通信路を経由して、ローカルホスト側の TCP/IP ポートを 転送するよう指定します。このとき、どのリモートホストから 接続するかを決定するためにアプリケーションレベルのプロトコルが 使われます。このオプションの引数はポート番号である必要があります。 今のところ SOCKS4 プロトコルが使われており、 .Nm ssh は SOCKS4 サーバのようにふるまいます。 複数のポート転送も指定でき、コマンドラインからこれを追加することも できます。特権ポートを転送できるのは root だけです。 .It Cm EscapeChar (エスケープ文字) エスケープ文字を設定します (デフォルトは .Ql ~ )。エスケープ文字はコマンドラインからも指定できます。 -この引数には 1つの文字か、 +この引数には 1 つの文字か、 .Ql ^ -に1文字を付けたもの、あるいはエスケープ文字の使用をすべて禁止するなら +に 1 文字を付けたもの、あるいはエスケープ文字の使用をすべて禁止するなら .Dq none を指定します (これはその接続を、バイナリ データに対して透過にすることになります)。 .It Cm ForwardAgent (エージェント転送) 認証エージェントへの接続を、(それが存在する時は) リモートマシン上に 転送するかどうかを指定します。この引数の値は .Dq yes あるいは .Dq no でなければならず、デフォルトは .Dq no (エージェント転送をおこなわない) です。 .Pp 認証エージェントの転送には注意が必要です。 リモートホスト上で (エージェントの UNIX ドメインソケットに対する) ファイルアクセス権限を無視できてしまうユーザがいる場合は、 転送された接続を介してローカル側の 認証エージェントにアクセスできてしまうことになります。 攻撃側は認証エージェントから鍵そのものを盗むことはできませんが、 認証エージェントがもっている鍵に認証をおこなわせることはできます。 .It Cm ForwardX11 (X11 転送) X11 接続を自動的に安全な通信路へリダイレクトし、 .Ev DISPLAY を設定するかどうかを指定します。この引数の値は .Dq yes あるいは .Dq no でなければならず、デフォルトは .Dq no (X11 接続を転送しない) です。 .Pp X11 の転送には注意が必要です。 リモートホスト上で (そのユーザの X 認証のための) ファイルアクセス権限を 無視できてしまうユーザがいる場合は、転送された接続を介してローカル側の X11 ディスプレイにアクセスできてしまうことになります。 すると攻撃側はキーストロークを盗み見るなどの行為が可能になってしまうかも しれません。 .It Cm GatewayPorts (ポート転送の中継) ローカルからリモートへ転送されている (リモート→ローカルのポート転送) ポートに、他ホストからの接続を許すかどうかを指定します。 デフォルトでは、 .Nm ssh は転送されたローカルポートをループバックアドレス (127.0.0.1) に bind します。このため他の (訳注: サーバ以外の) ホストが 転送されたポートに接続することはできません。 .Cm GatewayPorts を使うと、 .Nm ssh は転送されたローカルポートをワイルドカードアドレス (0.0.0.0) に bind するようになります。これは他のホストもその転送されたポートに 接続できるということです。 この引数の値は .Dq yes または .Dq no で、デフォルトは .Dq no (転送されているポートに他ホストからの接続を許可しない) に設定されています。 .It Cm GlobalKnownHostsFile (大域的 known_host ファイル) そのホスト全体で .Pa /etc/ssh/ssh_known_hosts のかわりに使用するホスト鍵データベースファイルを指定します。 .It Cm HostbasedAuthentication (ホストベース認証) ホスト間認証を使った rhosts ベースの認証をおこなうかどうかを指定します。 とりうる引数の値は .Dq yes または .Dq no で、デフォルトは .Dq no (ホストベース認証を試みない) になっています。 このオプションはプロトコル バージョン 2 のみに適用され、 .Cm RhostsRSAAuthentication と似ています。 .It Cm HostKeyAlgorithms (ホスト間認証のアルゴリズム) プロトコル バージョン 2 において、ホスト間認証で使われる アルゴリズムを指定します。クライアントはここで指定された 優先順位のアルゴリズムを使って認証を試みます。 このオプションのデフォルトは .Dq ssh-rsa,ssh-dss です。 .It Cm HostKeyAlias (ホスト鍵のエイリアス) ホスト鍵データベースからホスト鍵を検索するとき、あるいは データベースにホスト鍵を保存するときに、実際のホスト名のかわりに 使われる名前を指定します。 このオプションは ssh 接続をトンネリングしているときや、 単一のホスト上で複数の sshd サーバを動かしているときなどに 便利です。 .It Cm HostName (実際のホスト名) 実際にログインするホスト名を指定します。デフォルトでは .Nm はコマンドラインで与えられたホスト名に接続しますが、 これを使うと、ホストのニックネームや省略形を使用することができます。 数字の IP アドレスでもかまいません (コマンドライン、 .Cm HostName キーワードの両方とも)。 .It Cm IdentityFile (identity ファイル) ユーザの RSA または DSA 認証用 identity (秘密鍵) を 読むファイルを指定します (デフォルトは、プロトコル バージョン 1 の場合 ユーザのホームディレクトリにある .Pa $HOME/.ssh/identity ファイルが、プロトコル バージョン 2 の場合は .Pa $HOME/.ssh/id_rsa および .Pa $HOME/.ssh/id_dsa が使われます)。 これに加えて、認証エージェントによって現れる identity も使われます。 ユーザのホームディレクトリを表すのにチルダ表記を使うこともできます。 設定ファイルでは複数の identity を指定することもでき、 この場合すべての identity が順に試されます。 .It Cm KeepAlive (接続を生かしておく) システムが相手のマシンに TCP keepalive メッセージを送るかどうかを 指定します。これが送られると、接続の異常終了や相手マシンの クラッシュが正しく通知されるようになります。 しかしこれを使うと、たとえ経路が一時的にダウンしていても 接続が死んでいるということになってしまい、これが邪魔になる場合もあります。 .Pp デフォルトは .Dq yes (keepalive を送る) です。そのため クライアントはネットワークがダウンするか、 リモートホストが落ちると通知してきます。 これはスクリプト中では重要であり、多くのユーザもこれを望んでいます。 .Pp Keepalive を禁止するには、この値を .Dq no にする必要があります。 .It Cm KerberosAuthentication (Kerberos 認証) Kerberos 認証をおこなうかどうか指定します。この引数の値は .Dq yes あるいは .Dq no です。 .It Cm KerberosTgtPassing (Kerberos TGT パス) Kerberos TGT がサーバを転送するかどうかを指定します。これは その Kerberos サーバが実際に AFS kaserver であるときのみ 機能します。この引数の値は .Dq yes あるいは .Dq no です。 .It Cm LocalForward (ローカル→リモート転送) ローカルマシンの TCP/IP ポートを、安全な通信路を経由して リモートマシン上から与えられた host:port に転送するよう指示します (訳注: -L オプションと同じ)。 最初の引数は転送するローカルホストのポートを、2番目の引数には転送先を .Ar host:port の形で指定します。 IPv6 アドレスはこれとは別の .Ar host/port という形式で指定します。ポート転送は複数指定することができ、 コマンドラインから追加指定することもできます。 -特権ポートを転送できるのはスーパーユーザだけです。 +特権ポートを転送できるのはスーパユーザだけです。 .It Cm LogLevel (ログレベル) .Nm が出力するログの冗長性のレベルを指定します。 とりうる値は次のとおりです: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 および DEBUG3。 デフォルトでは INFO になっています。DEBUG と DEBUG1 は等価です。 -DEBUG2、DEBUG3 はそれぞれさらに冗長なログになります。 +DEBUG2, DEBUG3 はそれぞれさらに冗長なログになります。 .It Cm MACs (メッセージ認証コード) 使用する MAC (メッセージ認証コード) アルゴリズムの優先順位を指定します。 MAC アルゴリズムはプロトコル バージョン 2 で使われる、 データの改竄を防ぐ機構 (data integrity protection) です。 複数のアルゴリズムをカンマで区切って指定します。 デフォルトは .Dq hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 の順になっています。 .It Cm NoHostAuthenticationForLocalhost (localhostでのホスト認証を抑制) このオプションはホームディレクトリがマシン間で共有されているときに 使います。このような状況ではそれぞれ別々のマシンで localhost のさす ホストが異なっているため、ユーザはホスト鍵が変わったという警告を 受けてしまいます (訳注: 別々のホスト鍵をもつマシンで同一の localhost ホスト鍵が共有されているため)。このオプションを使うと、相手が localhost のときにはホスト間認証を抑制することができます。 この引数がとりうる値は .Dq yes あるいは .Dq no です。 デフォルトでは、yes (相手が localhost でも鍵をチェックする) になっています。 .It Cm NumberOfPasswordPrompts (パスワード試行回数) パスワードを最高何回まで訊くかを指定します。 この回数を超えると認証は失敗します。 このキーワードには整数を指定する必要があります。 デフォルト値は 3 です。 .It Cm PasswordAuthentication (パスワード認証) パスワード認証をおこなうかどうかを指定します。この引数の値は .Dq yes または .Dq no です。デフォルトでは .Dq yes (パスワード認証をおこなう) になっています。 .It Cm Port (ポート番号) リモートホストに接続するときのポート番号を指定します。 デフォルトは 22 です。 .It Cm PreferredAuthentications (認証の優先順位) プロトコル 2 で試される認証の優先順位を指定します。 これによって、クライアントは特定の認証 ( .Cm keyboard-interactive など) をそれ以外の認証 ( .Cm password など) よりも優先して選ぶことができます。 このオプションのデフォルトは .Dq hostbased,publickey,keyboard-interactive,password の順になっています。 .It Cm Protocol (プロトコル) .Nm ssh がサポートすべきプロトコルのバージョンの優先順位を指定します。 とりうる値は .Dq 1 と .Dq 2 です。 複数のバージョンを 指定するときはカンマで区切ってください。 デフォルト値は .Dq 2,1 です。これは .Nm ssh がまず始めにバージョン 2 がサポートされているかどうかを調べ、 サーバがそれをサポートしていなかった場合に バージョン 1 を使用することを指示しています (訳注: もしサーバ側がバージョン 2 の認証をサポートしていた場合、 バージョン 2 での認証に失敗すると ssh は そこで終了します。バージョン 1 の認証は *おこなわない* ため、 -注意してください) +注意してください)。 .It Cm ProxyCommand (プロキシ コマンド) サーバに接続するのに使用するコマンドを指定します。 コマンド文字列はこのキーワード以後、行末まで書くことができます。 コマンド文字列は .Pa /bin/sh によって実行されます。 コマンド文字列では、 .Ql %h は接続するホスト名に置換され、 .Ql %p はポート番号に置換されます。 コマンドは基本的に何でもよいのですが、標準入力から読み込み、 標準出力に書き込むようなものである必要があります。 これは最終的にサーバマシン上で動いている .Xr sshd 8 に接続するか、どこか別の場所で .Ic sshd -i を起動させるようにします。 ホスト鍵の管理は接続されているホストの HostName を使っておこなわれます (デフォルトでは、これはユーザが -タイプした名前になります)。プロキシ コマンドを使うと、 +タイプした名前になります)。 +このコマンドを +.Dq none +に設定すると、このオプションは完全に使用禁止になります。 +プロキシコマンドを使うと、 .Cm CheckHostIP (ホスト IP アドレスの検査) は使用できませんので注意してください。 .Pp .It Cm PubkeyAuthentication (公開鍵認証) 公開鍵認証をおこなうかどうかを指定します。 このキーワードの引数は .Dq yes か .Dq no のどちらかです。 デフォルトでは .Dq yes (公開鍵認証をおこなう) になっています。 このオプションはプロトコル バージョン 2 のみに適用されます。 .It Cm RemoteForward (リモート→ローカル転送) リモートマシン上の TCP/IP ポートを、安全な通信路を経由して ローカルマシン上から与えられた host:post に転送するよう指示します (訳注: -R オプションと同じ)。 最初の引数は転送するリモートホストのポートを、 2番目の引数には転送先を .Ar host:port の形で指定します。 IPv6 アドレスはこれとは別の .Ar host/port という形式で指定します。ポート転送は複数指定することができ、 コマンドラインから追加指定することもできます。 -特権ポートを転送できるのはスーパーユーザだけです。 +特権ポートを転送できるのはスーパユーザだけです。 .It Cm RhostsAuthentication (rhosts 認証) -Rhosts ベースの認証をおこなうかどうかを指定します。この宣言は +rhosts ベースの認証をおこなうかどうかを指定します。この宣言は クライアント側にのみ影響し、セキュリティ的にまったくなんの 効果もないことに注意してください。 ほとんどのサーバでは RhostsAuthentication は 安全でないという理由で許可されていません ( RhostsRSAAuthentication を参照のこと)。 この引数の値は .Dq yes または .Dq no です。 デフォルトでは .Dq no (rhosts 認証をおこなわない) になっています。 このオプションはプロトコル バージョン 1 のみに適用され、 この機能を使うためには .Nm ssh が setuid root されていて .Cm UsePrivilegedPort が .Dq yes に設定されている必要があります。 .It Cm RhostsRSAAuthentication (rhosts-RSA 認証) -RSA ホスト認証を使った Rhosts ベースの認証を試みるかどうかを +RSA ホスト認証を使った rhosts ベースの認証を試みるかどうかを 指定します。 この引数の値は .Dq yes または .Dq no です。 デフォルトの値は .Dq no (rhosts-RSA 認証をおこなわない) です。 このオプションはプロトコル バージョン 1 のみに適用され、 これを使うには .Nm ssh を setuid root にしておくことが必要です。 .It Cm RSAAuthentication (RSA 認証) RSA 認証を使うかどうかを指定します。 この引数の値は .Dq yes または .Dq no です。RSA 認証は identity ファイルが存在するときか、 認証エージェントが動いているときのみ使用されます。 デフォルトは .Dq yes (RSA 認証をおこなう) です。 このオプションは プロトコル バージョン 1 にしか適用されないので注意してください。 .It Cm SmartcardDevice (スマートカード・デバイス) 使用するスマートカードのデバイスを指定します。 この引数には .Nm ssh がスマートカードと通信するときに使うデバイスを指定します。 スマートカードはユーザの RSA 秘密鍵を格納するのに使われます。 デフォルトではデバイスは何も指定されておらず、スマートカードの使用は 有効になっていません。 .It Cm StrictHostKeyChecking (厳格なホスト鍵チェック) このオプションが .Dq yes に設定されている場合、 .Nm ssh は決して .Pa $HOME/.ssh/known_hosts ファイルに自動的にホスト認証鍵を追加しません。 鍵が変更されているホストへの接続は拒否されます。 これはトロイの木馬攻撃に対する最大の防御となりますが、 .Pa /etc/ssh/ssh_known_hosts ファイルをきちんと更新していなかったり、新規のホストに頻繁に 接続するような状況だと邪魔になるかもしれません。 このオプションを使うとユーザは手で新しいホストの鍵を 追加しなければならなくなります。 このオプションが .Dq no に設定されている場合、 .Nm ssh は新しいホスト鍵をユーザの known_hosts ファイルに 自動的に追加します。 このオプションが .Dq ask に設定されていると、 新しいホスト鍵が追加されるのは、ユーザが 本当にそれを望んでいると確認できたときだけになります。 ホスト鍵が変更されているホストへの接続は拒否されます。 known_hosts ファイルに含まれているホスト鍵は いかなる場合でも自動的に検査されます。 このオプションがとりうる値は -.Dq yes -、 +.Dq yes , .Dq no あるいは .Dq ask で、デフォルトは .Dq ask です。 .It Cm UsePrivilegedPort (特権ポートを使用する) 外に向けての接続をおこなうときに、 特権ポートを使用するかどうかを指定します。この引数の値は .Dq yes または .Dq no で、デフォルトは .Dq no になっています。 .Dq yes に設定した場合、 .Nm ssh は setuid root である必要があります。 注意: 旧式の sshd に対して .Cm RhostsAuthentication あるいは .Cm RhostsRSAAuthentication の認証が必要な場合は、このオプションを .Dq yes にする必要があります。 .It Cm User (ユーザ) ログインするユーザ名を指定します。これは異なるマシン上で 異なるユーザ名が使われている場合に便利です。 これでコマンドラインからわざわざユーザ名を与えなくてもすみます。 .It Cm UserKnownHostsFile (個人用 known_hosts ファイル) ホスト鍵データベースとして .Pa $HOME/.ssh/known_hosts 以外のファイルを使うときに指定します。 .It Cm VersionAddendum (バージョンに付加するもの) OS もしくはサイトに特化した修正を示すために、通常のバージョン文字列に 付け加える文字列を指定します。 デフォルトは -.Dq FreeBSD-20030201 +.Dq FreeBSD-20030423 です。 .It Cm XAuthLocation (xauth の位置) .Xr xauth 1 プログラムのフルパス名を指定します。デフォルトは .Pa /usr/X11R6/bin/xauth です。 .El .Sh 関連ファイル .Bl -tag -width Ds .It Pa $HOME/.ssh/config ユーザごとの個人用設定ファイルです。 ファイル形式は上で説明されています。 このファイルは .Nm ssh クライアントによって使われます。 このファイルはふつう特に秘密の情報は含んでいませんが、 しかし望ましいパーミッションとしては、そのユーザからは 読み/書き可能で、他人からはアクセス不可能にしておくのがよいでしょう。 .It Pa /etc/ssh/ssh_config システム全体にわたる設定ファイルです。このファイルはユーザの設定 ファイルでは指定されなかった値を提供し、また設定ファイルを 持たないユーザのためのデフォルトにもなります。このファイルは 誰にでも読み込み可能でなければいけません。 .El .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 .Sh 日本語訳 -新山 祐介 (yusuke @ cs . nyu . edu) 2002/9/28 (for 3.5p1) +新山 祐介 (yusuke @ cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr ssh 1 diff --git a/ja_JP.eucJP/man/man5/sshd_config.5 b/ja_JP.eucJP/man/man5/sshd_config.5 index adeb465139..9eaf23da59 100644 --- a/ja_JP.eucJP/man/man5/sshd_config.5 +++ b/ja_JP.eucJP/man/man5/sshd_config.5 @@ -1,824 +1,821 @@ .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $OpenBSD: sshd_config.5,v 1.13 2002/09/16 20:12:11 stevesk Exp $ -.\" Japanese translation: $Id: sshd_config.5,v 1.4 2003-03-24 04:55:31 horikawa Exp $ +.\" $OpenBSD: sshd_config.5,v 1.15 2003/03/28 10:11:43 jmc Exp $ +.\" Japanese translation: $Id: sshd_config.5,v 1.5 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" -.\" %FreeBSD: src/crypto/openssh/sshd_config.5,v 1.10 2003/02/11 12:11:15 des Exp % +.\" %FreeBSD: src/crypto/openssh/sshd_config.5,v 1.11 2003/04/23 17:10:53 des Exp % .\" $FreeBSD$ .Dd September 25, 1999 .Dt SSHD_CONFIG 5 .Os .Sh 名称 .Nm sshd_config .Nd OpenSSH SSH デーモン 設定ファイル .Sh 書式 .Bl -tag -width Ds -compact .It Pa /etc/ssh/sshd_config .El .Sh 解説 .Nm sshd は .Pa /etc/ssh/sshd_config (あるいはコマンドラインから .Fl f オプションで指定したファイル) から設定を読み込みます。 このファイルの各行は ``キーワード 引数'' の形式になっており、 空行あるいは .Ql # で始まる行はコメントとみなされます。 .Pp 使用できるキーワードとその説明は以下の通りです (キーワードでは大文字小文字は区別されませんが、引数では区別されることに 注意してください): .Bl -tag -width Ds .It Cm AFSTokenPassing (AFS トークンパス) このオプションは AFS トークンがサーバに転送されるかどうか指定します。 デフォルトは .Dq no です。 .It Cm AllowGroups (許可するグループ) このキーワードにはいくつかのグループ名パターンをスペースで区切って 指定します。これが指定されると、ユーザの基本グループが そのパターンのどれかにマッチするグループであるようなユーザだけが ログインを許可されます。パターン中では .Ql \&* および -.Ql ? +.Ql \&? がワイルドカードとして使えます。有効なのはグループの「名前」だけで、 数字で表されたグループ ID は認識されません。デフォルトでは、 ログインはすべてのグループに許可されています。 .Pp .It Cm AllowTcpForwarding (TCP 転送の許可) TCP 転送を許可するかどうか指定します。デフォルトは .Dq yes です。TCP 転送を禁止しても、ユーザにシェルのアクセスを禁止しない かぎりセキュリティの向上にはならないことに注意してください。 なぜならユーザはいつでも自前の転送プログラムをインストールして 使うことができるからです。 .Pp .It Cm AllowUsers (許可するユーザ) このキーワードにはいくつかのユーザ名パターンをスペースで区切って 指定します。これが指定されると、そのパターンのどれかにマッチする ユーザだけがログインを許可されます。パターン中では .Ql \&* および -.Ql ? +.Ql \&? がワイルドカードとして使えます。有効なのはユーザの「名前」だけで、 数字で表されたユーザ ID は認識されません。デフォルトでは、 ログインはすべてのユーザに許可されています。 もしこのパターンが USER@HOST という形をとっている時は、 ユーザ名 USER と ホスト名 HOST を別々にチェックでき、 特定のホストからの特定のユーザのログインを制限することができます。 .Pp .It Cm AuthorizedKeysFile (authorized_keys ファイル) ユーザ認証のさいに使われる公開鍵を格納しているファイル名を 指定します。 .Cm AuthorizedKeysFile のファイル名中に %T が含まれている場合、その部分は接続の間 -別のものに置換されます。%% は「%」1文字に置換されます。 +別のものに置換されます。%% は '%' 1 文字に置換されます。 %h は認証しようとしているユーザのホームディレクトリに置換され、 %u はそのユーザのユーザ名に置換されます。この後、 その絶対パスあるいはユーザのホームディレクトリからの相対パスが .Cm AuthorizedKeysFile に渡されます。デフォルトでの値は .Dq .ssh/authorized_keys となっています。 .It Cm Banner (バナー) 司法管区によっては、法的な保護を受けるためには 認証の前に警告メッセージを送ったほうがよい場合があります。 ここで指定されたファイルの内容は、認証が許可される前に リモートユーザに提示されます。 このオプションは プロトコル バージョン 2 でのみサポートされています。 デフォルトでは、バナーは表示されません。 .Pp .It Cm ChallengeResponseAuthentication (チャレンジ・レスポンス認証) チャレンジ・レスポンス認証を許可するかどうか指定します。 .Xr login.conf 5 に記されているすべての認証形式が使えます。 特に .Fx では、PAM .Xr ( pam 3 参照) を認証に使用するかを制御します。 これは、 .Cm PasswordAuthentication および .Cm PermitRootLogin -の効果に影響します。 -variables. +変数の効果に影響します。 デフォルトは .Dq yes です。 .It Cm Ciphers (SSH2の暗号化アルゴリズム) プロトコル バージョン 2 で許可される暗号化アルゴリズムを 指定します。複数のアルゴリズムを指定する場合は、 カンマで区切ってください。 デフォルトは .Pp .Bd -literal ``aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour, aes192-cbc,aes256-cbc'' .Ed です。 .It Cm ClientAliveInterval (クライアントの生存チェック間隔) .Nm sshd は一定時間ごとに、 暗号化された通信路を経由してクライアントに応答を要求するメッセージ (client alive message) を送ります。 その際、何もデータが送られてこなかったらタイムアウトする 時間を秒数で指定します。デフォルトの値は 0 で、 これはメッセージを送らないことを意味します。 このオプションは プロトコル バージョン 2 でのみサポートされています。 .It Cm ClientAliveCountMax (クライアントの生存チェック最大カウント数) .Nm sshd が無反応のクライアントに対して client alive message (上記参照) を送ってみる最大数を指定します。 client alive message に対する応答が連続してこの回数だけなかった場合、 .Nm sshd は接続を切り、セッションを終了します。 client alive message は、 .Cm KeepAlive (下記) とはまったく違うことに注意してください。 client alive message は暗号化された経路を介して送られるので、 偽造されることはありません。 .Cm KeepAlive によって設定される TCP の keepalive オプションは 偽造される可能性があります。client alive のメカニズムは クライアントあるいはサーバが、いつ接続が切れたのかを 知りたいときに役立ちます。 .Pp デフォルトの値は 3 です。もし .Cm ClientAliveInterval (上記) が 15 に設定され、 .Cm ClientAliveCountMax がデフォルトのままである場合、これに反応できない ssh クライアントは -およそ 45秒後に接続が切られます。 +およそ 45 秒後に接続が切られます。 .It Cm Compression 圧縮を許可するかどうかを指定します。 この引数がとりうる値は .Dq yes または .Dq no です。デフォルトでは .Dq yes (圧縮を許可する) になっています。 .It Cm DenyGroups (拒否するグループ) このキーワードにはいくつかのグループ名パターンをスペースで区切って指定します。 ユーザの基本グループがこのパターンのどれかに マッチするユーザはログインを禁止されます。パターン中では .Ql \&* および -.Ql ? +.Ql \&? がワイルドカードとして使えます。有効なのは グループの「名前」だけで、数字で表されたグループ ID は 認識されません。デフォルトでは、 ログインはすべてのグループに許可されています。 .Pp .It Cm DenyUsers (拒否するユーザ) このキーワードにはいくつかのユーザ名パターンをスペースで区切って 指定します。これが指定されると、 このパターンのどれかにマッチするユーザはログインを禁止されます。 .Ql \&* および -.Ql ? +.Ql \&? がワイルドカードとして使えます。 有効なのはグループの「名前」だけで、数字で表されたグループ ID は 認識されません。デフォルトでは、ログインはすべてのユーザに許可されています。 もしこのパターンが USER@HOST という形をとっている時は、 ユーザ名 USER と ホスト名 HOST を別々にチェックでき、 特定のホストからの特定のユーザのログインを制限することができます。 .It Cm GatewayPorts (ポート中継の許可) リモートホストがクライアント側に転送されたポートに接続することを 許可するかどうか指定します。デフォルトでは、 .Nm sshd はリモート転送ポートをループバックアドレスに bind します。 これは他のリモートホストが、転送されたポートに接続してしまうのを 防いでいます。 .Cm GatewayPorts は .Nm sshd にリモート転送ポートをワイルドカードアドレスに bind させるときに使います。 これによってリモートホストが転送されたポートに接続できるようになります。 この引数の値は .Dq yes あるいは .Dq no です。デフォルトは .Dq no になっています。 .It Cm HostbasedAuthentication (ホストベース認証の許可) 公開鍵ホスト認証が成功したときに、 rhosts あるいは /etc/hosts.equiv 認証を許可するかどうか 指定します (ホストベース認証)。 このオプションは .Cm RhostsRSAAuthentication (RhostsRSA 認証の許可) に似ており、プロトコル バージョン 2 のみに作用します。 デフォルトの値は .Dq no になっています。 .It Cm HostKey (ホスト鍵) SSH で使われる、ホスト秘密鍵が格納されているファイルを指定します。 デフォルトでは、プロトコル バージョン 1 用の鍵が .Pa /etc/ssh/ssh_host_key であり、プロトコル バージョン 2 用の鍵が .Pa /etc/ssh/ssh_host_dsa_key です。 このファイルがグループあるいは他人からアクセス可能になっていると、 .Nm sshd はその使用を拒絶するので注意してください。 複数のホスト鍵を使うことも可能です。 .Dq rsa1 鍵はバージョン 1 に使われ、 .Dq dsa または .Dq rsa はバージョン 2 の SSH プロトコルに使われます。 .It Cm IgnoreRhosts (rhosts の無視) .Cm RhostsAuthentication , .Cm RhostsRSAAuthentication または .Cm HostbasedAuthentication の各認証で、 .Pa .rhosts および .Pa .shosts ファイルを使わないようにします。 .Pp この状態でも、 .Pa /etc/hosts.equiv および .Pa /etc/ssh/shosts.equiv は依然として有効です。デフォルトでは .Dq yes になっています。 .It Cm IgnoreUserKnownHosts (ユーザ用 known_hosts の無視) .Cm RhostsRSAAuthentication または .Cm HostbasedAuthentication の各認証で、ユーザの .Pa $HOME/.ssh/known_hosts ファイルを使わないようにします。 デフォルトは .Dq no です。 .It Cm KeepAlive (接続を生かしておく) システムが相手のマシンに TCP keepalive メッセージを送るかどうか 指定します。これが送られると、接続の異常終了や相手マシンの クラッシュが正しく通知されるようになります。 しかしこれを使うと、たとえ経路が一時的にダウンしていても 接続が死んでいるということになってしまい、これが邪魔になる場合もあります。 その一方で、もし keepalive が送られないとすると、セッションは サーバ上で永久に残ってしまことがあり、 .Dq 幽霊 ユーザを居座らせてサーバ資源を消費することがあります。 .Pp デフォルトは .Dq yes (keepalive を送る) です。そのため クライアントはネットワークがダウンするか、 リモートホストがクラッシュすると通知してきます。 これは永久に残るセッションを防ぎます。 .Pp Keepalive を禁止するには、この値を .Dq no にする必要があります。 .It Cm KerberosAuthentication (Kerberos 認証) Kerberos 認証をおこなうかどうか指定します。 この認証は Kerberos チケットか、あるいはもし .Cm PasswordAuthentication が yes になっている場合なら、ユーザが入力して Kerberos KDC 経由で批准されたパスワードが使われます。 このオプションを使うには、サーバに KDC のアイデンティティを 批准するための Kerberos servtab が必要です。 デフォルトでは .Dq no になっています。 -.It Cm KerberosOrLocalPasswd (Kerberosあるいはローカルパスワード) +.It Cm KerberosOrLocalPasswd (Kerberos あるいはローカルパスワード) これが指定されている場合、Kerberos 経由のパスワード認証が 失敗すると、そのパスワードは .Pa /etc/passwd などの別のローカルな機構によって確認されます。デフォルトは .Dq yes です。 .It Cm KerberosTgtPassing (Kerberos TGT パス) Kerberos TGT をサーバに転送してもよいかどうか指定します。デフォルトは .Dq no です。なぜなら、これがまともに動くのは Kerberos KDC が 実際の AFS kaserver であるときだけだからです。 .It Cm KerberosTicketCleanup (Kerberos チケット自動除去) ユーザのチケット用キャッシュをログアウト時に自動的に消去するかどうか 指定します。デフォルトは .Dq yes です。 .It Cm KeyRegenerationInterval (鍵の再生成間隔) プロトコル バージョン 1 では、サーバ鍵は (一度でも使われると) ここで 指定された間隔ごとに自動的に再生成されます。このように鍵を再生成する 目的は、あとでそのマシンに侵入して盗聴したセッションを解読されたり、 鍵を盗まれたりするのを防ぐためです。この鍵はどこにも格納されません。 -値としてゼロを指定すると、鍵はまったく再生成されなくなります。 +値として 0 を指定すると、鍵はまったく再生成されなくなります。 デフォルトでは 3600 (秒) になっています。 .It Cm ListenAddress (接続受付アドレス) .Nm sshd が接続を受けつける (listen する) ローカルアドレスを指定します。 ここでは以下の形式が使えます: .Pp .Bl -item -offset indent -compact .It .Cm ListenAddress .Sm off .Ar host No | Ar IPv4_addr No | Ar IPv6_addr .Sm on .It .Cm ListenAddress .Sm off .Ar host No | Ar IPv4_addr No : Ar port .Sm on .It .Cm ListenAddress .Sm off .Oo .Ar host No | Ar IPv6_addr Oc : Ar port .Sm on .El .Pp .Ar port が指定されていないときは、 .Nm sshd はそのアドレスで、それまでの .Cm Port オプションで指定されたすべてのポートで接続を受けつけます。 デフォルトではすべてのローカルアドレスに対して 接続を受けつけるようになっています。 .Cm ListenAddress 項目は複数指定してもかまいません。また .Cm Port オプションは、ポートつきでないアドレス指定に対しては このオプションよりも前に指定しておく必要があります。 .It Cm LoginGraceTime (ログイン猶予時間) ユーザがここで指定された時間内にログインできないと、 -サーバは接続を切ります。この値をゼロにすると、時間制限はなくなります。 -デフォルトの値は 120 秒です。 +サーバは接続を切ります。この値を 0 にすると、時間制限はなくなります。 +デフォルトの値は 120 (秒) です。 .It Cm LogLevel (ログレベル) .Nm sshd が出力するログメッセージの冗長性レベルを指定します。 とりうる値は次のとおりです: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 および DEBUG3。 デフォルトでは INFO です。DEBUG と DEBUG1 は等価です。 -DEBUG2、DEBUG3 はそれぞれさらに冗長なログになります。 -DEBUG レベル以上のログはユーザのプライバシーを侵害するので、 +DEBUG2, DEBUG3 はそれぞれさらに冗長なログになります。 +DEBUG レベル以上のログはユーザのプライバシを侵害するので、 勧められるものではありません。 .It Cm MACs (メッセージ認証コード) 使用する MAC (メッセージ認証コード) アルゴリズムの優先順位を指定します。 MAC アルゴリズムはプロトコル バージョン 2 で使われる、 データの改竄を防ぐ機構 (data integrity protection) です。 複数のアルゴリズムをカンマで区切って指定します。 デフォルトは .Dq hmac-md5,hmac-sha1,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 の順になっています。 .It Cm MaxStartups (最大起動数) 認証されていない段階の接続を .Nm sshd デーモンが最大でどれだけ受けつけるかを指定します。 この値を超えた (認証されていない段階の) 接続は捨てられます。 この状態は (すでに接続したクライアントの) 認証が成功するか、その .Cm LoginGraceTime (ログイン猶予時間) が切れるまで続きます。 デフォルトではこの数は 10 です。 .Pp もうひとつの方法は、早いうちからランダムに接続を拒否するよう 指定することです。これはこのオプションにコロンで区切った 3つの値を 与えることによりおこないます。この値は .Dq start:rate:full (``開始時:確率:最大数'') の形をとります (例: "10:30:60" など)。 .Nm sshd は認証されていない段階の接続が .Dq start (この例では 10) 個を超えると、これ以後の接続要求を .Dq rate/100 (この例では 30%) の確率で拒否しはじめます。この確率は .Dq full (この例では 60) 個の接続が来るまで線形に増えつづけ、 最大数に達した時点でそれ以降すべての接続を拒否するようになります。 .Cm PasswordAuthentication (パスワード認証) が禁止されているかどうかにかかわらず、 パスワード認証も許可されます。 デフォルトでは .Dq no になっています。 .It Cm PasswordAuthentication (パスワード認証) パスワード認証を許可するかどうか指定します。デフォルトでは .Dq yes になっています。 .Cm ChallengeResponseAuthentication が .Dq yes であり、 .Nm sshd の PAM 認証ポリシに .Xr pam_unix 8 が含まれる場合、 .Cm PasswordAuthentication の値に関係なく、チャレンジ・レスポンス機構によるパスワード認証が許可されます。 .It Cm PermitEmptyPasswords (空のパスワードを許可) パスワード認証が許可されているとき、パスワード文字列が空の アカウントに対してサーバがログインを許可するかどうか指定します。 デフォルトは .Dq no です。 .It Cm PermitRootLogin (root ログイン許可) .Xr ssh 1 を使って、root がログインできるかどうか指定します。この引数の値は -.Dq yes -、 +.Dq yes , .Dq without-password (パスワード認証なし)、 .Dq forced-commands-only (強制コマンドのみ)、あるいは .Dq no のいずれかです。 -のいずれかになります。デフォルトは +デフォルトは .Dq no です。 .Cm ChallengeResponseAuthentication が .Dq yes の場合、 .Cm PermitRootLogin が .Dq without-password に設定されていたとしても、root ユーザはそのパスワードで許可されます。 このオプションを .Dq without-password にすると、root だけパスワード認証ではログインできなくなります。 .Pp このオプションを .Dq forced-commands-only にすると、root は公開鍵認証を使ってログインできますが、その鍵に .Ar command オプションが指定されている場合にかぎります (これは通常の root ログインを許可していなくても、 リモートバックアップをとりたいときなどに有用です)。 root に対してはこれ以外の認証方法はすべて禁止になります。 .Pp このオプションを .Dq no にすると、root のログインは許可されません。 .It Cm PermitUserEnvironment (ユーザの環境変数変更を許可する) .Nm sshd が .Pa ~/.ssh/environment ファイルおよび .Pa ~/.ssh/authorized_keys における .Cm environment= オプションを処理すべきかどうかを指定します。 デフォルトでは .Dq no です。 環境変数の変更は、ユーザに .Ev LD_PRELOAD などの設定を使った ある種のアクセス制限を回避させてしまう可能性があります。 .It Cm PidFile (pid ファイル) .Nm sshd デーモンのプロセス ID を格納するファイルを指定します。 デフォルトでは .Pa /var/run/sshd.pid になっています。 .It Cm Port (ポート番号) .Nm sshd が接続を受けつける (listen する) ポート番号を指定します。 デフォルトは 22 です。複数指定することも可能です。 .Cm ListenAddress の項も参照してください。 .It Cm PrintLastLog (LastLog の表示) ユーザが対話的にログインしたとき、 そのユーザが前回ログインした日付と時刻を表示するかどうか指定します。 デフォルトでは .Dq yes になっています。 .It Cm PrintMotd (motd の表示) ユーザが対話的にログインしたとき、 .Pa /etc/motd (今日のお知らせ) ファイルの内容を表示するかどうか指定します。 (システムによっては、これはシェルや .Pa /etc/profile に相当するものが表示します)。デフォルトは .Dq yes です。 .It Cm Protocol (プロトコル) サポートするプロトコルのバージョンを指定します。 とりうる値は .Dq 1 と .Dq 2 です。複数のバージョンをカンマで区切って指定することもできます。 デフォルトは .Dq 2,1 です。 ここでのプロトコルの順番は、優先度を指定するものではないことに 注意してください。なぜなら複数のプロトコルがサーバで使用可能な場合、 選択するのはクライアント側だからです。よって .Dq 2,1 という指定は、 .Dq 1,2 と同じです。 .It Cm PubkeyAuthentication (公開鍵認証) 公開鍵認証を許可するかどうか指定します。 デフォルトは .Dq yes です。 このオプションは プロトコル バージョン 2 にのみ適用されることに 注意してください。 .It Cm RhostsAuthentication (rhosts 認証) rhosts や .Pa /etc/hosts.equiv だけを使った認証でログインを許可して しまってもよいかどうか指定します。 これは安全でないため、ふつうは許可すべきではありません。 かわりに .Cm RhostsRSAAuthentication (rhosts-RSA 認証) を使うべきです。こちらは通常の rhosts や .Pa /etc/hosts.equiv 認証に加えて、RSA ベースのホスト間認証をおこないます。 デフォルトは .Dq no です。 このオプションはプロトコル バージョン 1 にのみ 適用されることに注意してください。 .It Cm RhostsRSAAuthentication (rhosts-RSA 認証) RSA ホスト間認証が成功しているとき、rhosts や .Pa /etc/hosts.equiv を使った認証をおこなってよいかどうか指定します。デフォルトは .Dq no です。 このオプションはプロトコル バージョン 1 にのみ 適用されることに注意してください。 .It Cm RSAAuthentication (RSA 認証) 純粋な RSA 認証を許可するかどうかを指定します。デフォルトは .Dq yes になっています。このオプションはプロトコル バージョン 1 にのみ 適用されることに注意してください。 .It Cm ServerKeyBits (サーバ鍵のビット数) プロトコル バージョン 1 で短期的に使われるサーバ鍵の ビット数を指定します。 最小値は 512 で、デフォルトは 768 です。 .It Cm StrictModes (厳格なモード) -Specifies whether .Nm sshd がログインを許可する前に、ユーザのファイルおよび ホームディレクトリの所有権とパーミッションをチェックすべきか どうかを指定します。これはふつう初心者が、しばしば自分の ディレクトリを誰でも書き込めるようにしてしまう事故を防ぐために 有効です。デフォルトでは .Dq yes になっています。 .It Cm Subsystem (サブシステム) 外部サブシステム (ファイル転送デーモンなど) を設定します。 このオプションへの引数にはサブシステム名と、そのサブシステムに 要求があったとき実行されるコマンドを与えます。 .Xr sftp-server 8 はファイル転送サブシステム .Dq sftp を実装したものです。デフォルトではサブシステムは 何も定義されていません。このオプションは プロトコル バージョン 2 にのみ適用されることに注意してください。 .It Cm SyslogFacility (syslog 分類コード) .Nm sshd が出力するログメッセージで使われるログの分類コード (facility) を指定します。とりうる値は次のとおりです: DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7。デフォルトは AUTH です。 .It Cm UseLogin (login の使用) 対話的ログインセッションのさい、 .Xr login 1 プログラムを使うかどうかを指定します。 デフォルトでは .Dq no になっています。 対話的でないリモートコマンド実行のときに .Xr login 1 が使われることは決してありません。また、これが許可されていると .Cm X11Forwarding (X11 転送) は許可されなくなるということに注意してください。 なぜなら、 .Xr login 1 は .Xr xauth 1 クッキーの扱いを知らないからです。 .Cm UsePrivilegeSeparation が指定されている場合は、認証のあとで禁止されます。 .It Cm UsePrivilegeSeparation (root 権限を分離) .Nm sshd が、受けつけるネットワークトラフィックを処理するために root 権限を分離するかどうかを指定します。 これは root 権限をもたない子プロセスをつくることによって おこなわれます。認証が成功すると、そのユーザの権限をもつ 別のプロセスが新たに作られます。これの目的は、まずそうな部分を root 権限をもたないプロセスのみに限定することによって、 root 権限による被害の拡大を防ぐためです。 デフォルトでは .Dq yes (root権限を分離する) になっています。 .It Cm VerifyReverseMapping (逆引きチェック) このオプションを .Dq yes にすると、 .Nm はリモートホスト名を逆引きしたあとにそのホスト名を解決 (resolve) しなおして、 本当に同じ IP アドレスになっているかどうかを検証します。 デフォルトは .Dq no です。 .It Cm VersionAddendum (バージョンに付加するもの) OS もしくはサイトに特化した修正を示すために、通常のバージョン文字列に 付け加える文字列を指定します。 デフォルトは -.Dq FreeBSD-20030201 +.Dq FreeBSD-20030423 です。 .It Cm X11DisplayOffset (X11 ディスプレイ番号のオフセット値) .Nm sshd が X11 転送をするときに最初に使われるディスプレイ番号を指定します。 これは .Nm sshd が X11 転送で使うディスプレイ番号が、 本物の X サーバのディスプレイ番号と衝突してしまうのを防ぐためです。 デフォルトの値は 10 です。 .It Cm X11Forwarding (X11 転送) X11 転送を許可するかどうかを指定します。 この引数の値は .Dq yes あるいは .Dq no で、デフォルトは .Dq yes です。 .Pp X11 転送が許可されており、転送された .Nm sshd のディスプレイが任意のアドレス (下の .Cm X11UseLocalhost 参照) からの接続を受けつけるように設定されていると、 サーバやクライアントのディスプレイは余計な危険に さらされることになります。なので、デフォルトではそうなっていません。 また、認証におけるなりすまし、認証データの確認や差し替えなどが クライアント側で起こります。X11 転送を使うセキュリティ上のリスクは、 ssh クライアントが転送を要求したときに、クライアント上の X11 サーバが 攻撃にさらされるかもしれないということです ( .Xr ssh_config 5 の .Cm ForwardX11 注意書きを参照)。 システム管理者はクライアントがうっかり X11 を転送して、 余計な危険性を増すことのないように、これをかならず .Dq no に設定させるような立場をとることもできます。 .Pp 注意: X11 転送機能を禁止しても、ユーザが X11 の通信を転送できなくなる というわけではありません。なぜならユーザはいつでも自前の転送プログラムを インストールして使うことができるからです。 .Cm UseLogin が許可されていると、X11 転送は自動的に禁止されます。 .It Cm X11UseLocalhost (X11 で localhost のみを許可) .Nm sshd が転送された X11 サーバをループバックアドレス (localhost) に bind するかどうかを指定します。デフォルトでは、 .Nm sshd は転送された X11 をループバックアドレスに bind し、環境変数 .Ev DISPLAY のホスト名の部分を .Dq localhost に設定します。 こうすると、(訳注: SSHサーバ以外の) リモートホストから 転送された Xサーバに接続することはできなくなります。 しかし、ふるい X11 クライアントだと、 この設定では動作しないことがあります。 そのようなときは .Cm X11UseLocalhost を .Dq no に設定して、転送された X サーバがワイルドカードアドレスに bind されるようにできます。 このオプションの引数は .Dq yes あるいは .Dq no です。デフォルトでは、これは .Dq yes (localhost にしか bind しない) になっています。 .It Cm XAuthLocation (xauth の位置) .Xr xauth 1 プログラムのフルパス名を指定します。デフォルトでは .Pa /usr/X11R6/bin/xauth になっています。 .El .Ss 時間の表現 .Pp .Nm sshd のコマンドライン引数や設定ファイルオプションで 時間を指定する場合、次の構文を並べた書式を使うことができます: .Sm off .Ar time Op Ar qualifier .Sm on .Pp ここで .Ar time は正の整数であり、 .Ar qualifier は次のうちのどれかです: .Pp .Bl -tag -width Ds -compact -offset indent .It Cm <なし> seconds (秒) .It Cm s | Cm S seconds (秒) .It Cm m | Cm M minutes (分) .It Cm h | Cm H hours (時間) .It Cm d | Cm D days (日) .It Cm w | Cm W weeks (週) .El .Pp これらの形式を組み合わせることもでき、 その場合は各形式の時間が合計されます。 .Pp 時間表現の例: .Pp .Bl -tag -width Ds -compact -offset indent .It 600 600 秒 (10 分) .It 10m 10 分 .It 1h30m 1 時間 30 分 (90 分) .El .Sh 関連ファイル .Bl -tag -width Ds .It Pa /etc/ssh/sshd_config .Nm sshd の設定ファイルです。このファイルに書き込めるのは root だけでなくてはいけませんが、読むのは誰でもできるように しておいたほうがよいでしょう (必須ではありませんが)。 .El .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 Niels Provos および Markus Friedl が root特権分離のサポートに 貢献しました。 .Sh 日本語訳 -新山 祐介 (yusuke @ cs . nyu . edu) 2002/10/15 (for 3.5p1) +新山 祐介 (yusuke @ cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr sshd 8 diff --git a/ja_JP.eucJP/man/man8/ssh-keysign.8 b/ja_JP.eucJP/man/man8/ssh-keysign.8 index e011f16989..ab00d08a95 100644 --- a/ja_JP.eucJP/man/man8/ssh-keysign.8 +++ b/ja_JP.eucJP/man/man8/ssh-keysign.8 @@ -1,104 +1,104 @@ -.\" $OpenBSD: ssh-keysign.8,v 1.3 2002/07/03 14:21:05 markus Exp $ +.\" $OpenBSD: ssh-keysign.8,v 1.6 2003/03/28 10:11:43 jmc Exp $ .\" .\" Copyright (c) 2002 Markus Friedl. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" Japanese translation: $Id: ssh-keysign.8,v 1.3 2002-12-30 06:11:15 horikawa Exp $ +.\" Japanese translation: $Id: ssh-keysign.8,v 1.4 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama .\" .\" %FreeBSD: src/usr.sbin/spray/spray.8,v 1.10 2002/07/14 14:46:18 charnier Exp % .\" $FreeBSD$ .Dd May 24, 2002 .Dt SSH-KEYSIGN 8 .Os .Sh 名称 .Nm ssh-keysign .Nd ホストベース認証における ssh の補助プログラム .Sh 書式 .Nm .Sh 解説 .Nm は、 .Xr ssh 1 がローカルホスト鍵にアクセスし、 SSH プロトコル バージョン 2 でホストベース認証をおこなうさいに 必要なデジタル署名を生成するのに使われます。 .Pp .Nm はデフォルトでは使用禁止になっており、システム全体にわたる クライアントの設定ファイル .Pa /etc/ssh/ssh_config で -.Cm HostbasedAuthentication +.Cm EnableSSHKeysign 設定項目を .Dq yes に設定したときだけ使用されます。 .Pp .Nm は .Xr ssh 1 によって呼び出されるもので、ユーザが直接実行するものではありません。 ホストベース認証の詳細については .Xr ssh 1 および .Xr sshd 8 を参照してください。 .Sh 関連ファイル .Bl -tag -width Ds .It Pa /etc/ssh/ssh_config このファイルにより、 .Nm が使用されるかどうかが決定されます。 .It Pa /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_rsa_key これらのファイルにはホストの秘密鍵が格納され、 デジタル署名を生成するのに使われます。 これらのファイルは root が所有し、root だけが読み込み可能にすべきであり、 これ以外の誰にも読ませてはいけません。 これらは root だけが読み込み可能なため、 ホストベース認証を使うときは、 .Nm を setuid root にしておく必要があります。 .El .Sh 関連項目 .Xr ssh 1 , .Xr ssh-keygen 1 , .Xr ssh_config 5 , .Xr sshd 8 .Sh 作者 Markus Friedl .Sh 歴史 .Nm は .Ox 3.2 から導入されました。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/9/27 (for 3.5p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/4/17 (for 3.6.1p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 diff --git a/ja_JP.eucJP/man/man8/sshd.8 b/ja_JP.eucJP/man/man8/sshd.8 index db144a4fa0..59b0ee8069 100644 --- a/ja_JP.eucJP/man/man8/sshd.8 +++ b/ja_JP.eucJP/man/man8/sshd.8 @@ -1,802 +1,808 @@ .\" -*- nroff -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $OpenBSD: sshd.8,v 1.193 2002/09/24 20:59:44 todd Exp $ -.\" Japanese translation: $Id: sshd.8,v 1.11 2003-03-10 00:02:03 horikawa Exp $ +.\" $OpenBSD: sshd.8,v 1.194 2003/01/31 21:54:40 jmc Exp $ +.\" Japanese translation: $Id: sshd.8,v 1.12 2003-05-22 07:22:10 horikawa Exp $ .\" by Yusuke Shinyama -.\" %FreeBSD: src/crypto/openssh/sshd.8,v 1.26 2003/02/05 02:14:03 trhodes Exp % +.\" %FreeBSD: src/crypto/openssh/sshd.8,v 1.27 2003/04/23 17:10:53 des Exp % .\" $FreeBSD$ .\" .Dd September 25, 1999 .Dt SSHD 8 .Os .Sh 名称 .Nm sshd .Nd OpenSSH SSH デーモン .Sh 書式 .Nm sshd +.Bk -words .Op Fl deiqtD46 .Op Fl b Ar ビット数 .Op Fl f Ar 設定ファイル .Op Fl g Ar ログイン猶予時間 .Op Fl h Ar ホスト鍵ファイル .Op Fl k Ar 鍵の生成間隔 .Op Fl o Ar オプション .Op Fl p Ar ポート番号 .Op Fl u Ar 長さ +.Ek .Sh 解説 .Nm (SSH デーモン) は .Xr ssh 1 のためのデーモンプログラムです。 これらのプログラムはともに rlogin と rsh を置き換えるもので、 安全でないネットワーク上にある、2つの信頼されていないホスト間で、 暗号化された安全な通信を提供します。これらのプログラムはできるだけ 簡単にインストールして使えるよう配慮されています。 .Pp .Nm はクライアントからの接続を listen しているデーモンです。通常 これはブート時に .Pa /etc/rc.d/sshd から起動され、接続を受けつけるたびに新しいデーモンが fork します。 -Fork したデーモンは、鍵の交換、暗号化、認証、コマンド実行、 +fork したデーモンは、鍵の交換、暗号化、認証、コマンド実行、 そしてデータ交換をおこないます。この .Nm の実装では、SSH プロトコルバージョン 1 と 2 を同時にサポートしています。 .Nm -は以下のように動作します。 +は以下のように動作します: .Pp .Ss SSH プロトコル バージョン 1 .Pp 各ホストは、そのホストに固有の RSA 鍵 (通常 1024 ビット) をもっています。 これはそれぞれのホストを識別するのに使われます。加えて、デーモンは 起動時にサーバ用 RSA 鍵 (通常 768 ビット) を生成します。 -この鍵はふつう使われると 1時間おきに生成し直され、 +この鍵はふつう使われると 1 時間おきに生成し直され、 ディスクに保存されることは決してありません。 .Pp クライアントが接続してくると、デーモンはその公開ホスト鍵およびサーバ鍵を 返します。クライアントは自分がもっているデータベースとこの RSA ホスト鍵とを 比較し、それが変更されていないことを確かめます。つぎにクライアントは 256 ビットの乱数を生成します。これをそのホスト鍵とサーバ鍵両方をつかって 暗号化し、暗号化された数値をサーバに送ります。このとき、どちらの側も この数値をセッション鍵として使います。セッション鍵とはこれ以降のすべての 通信を暗号化するのに使われるもので、以後セッションは既存の暗号化 アルゴリズムを使って暗号化されます。これらのアルゴリズムは現在のところ Blowfish または 3DES で、デフォルトでは 3DES となっています。 クライアントはサーバによって提案された暗号化アルゴリズムから 使用するものを選択します。 .Pp つぎに、サーバとクライアントは認証のための対話に入ります。クライアントは 自分自身の身分を証明するため、 .Pa .rhosts 認証や、RSA ホスト認証と組み合わせた .Pa .rhosts 認証、RSA チャレンジ・レスポンス 認証、 あるいはパスワード認証を使おうとします。 .Pp -Rhosts 認証は根本的に安全でないため、ふつうは禁止されています。しかし +rhosts 認証は根本的に安全でないため、ふつうは禁止されています。しかし 必要とあればサーバの設定ファイルによって許可することもできます。 -.Nm rshd 、 -.Nm rlogind 、 +.Nm rshd , +.Nm rlogind および -.Xr rexecd +.Nm rexecd を止めないかぎり (これは .Xr rlogin と .Xr rsh を完全に禁止することになりますが)、 システムのセキュリティは改善されません。 .Pp .Ss SSH プロトコル バージョン 2 .Pp バージョン 2 も同様に動作します: 各ホストは固有のホスト鍵 (RSA または DSA) をもっており、 これでホストを識別します。しかしデーモンが開始した時点には サーバ鍵は生成されません。より進歩したセキュリティは Diffie-Hellman 鍵交換によって得られます。この鍵交換から 共通のセッション鍵が得られます。 .Pp これ以降セッションは対称的暗号化アルゴリズムを用いて暗号化されます。 -アルゴリズムは、現在のところ 128ビット AES、 -Blowfish、 3DES、 CAST128、 Arcfour、192ビット AES -あるいは 256ビットAES です。クライアントはサーバが +アルゴリズムは、現在のところ 128 ビット AES, +Blowfish, 3DES, CAST128, Arcfour, 192 ビット AES +あるいは 256 ビット AES です。クライアントはサーバが 提案した暗号化アルゴリズムを選びます。 これに加えて、暗号化メッセージ認証コード (hmac-sha1 あるいは hmac-md5) により、 セッションの内容が途中で改竄されてしまうことのないようにします。 .Pp プロトコル バージョン 2 では 公開鍵に基づくユーザ認証 (PubkeyAuthentication) と、 クライアントホスト認証 (HostbasedAuthentication)、 これに加えて従来のパスワード認証とチャレンジ・レスポンス認証が 使えます。 .Pp .Ss コマンド実行とデータ転送 .Pp クライアントが自分自身の証明に成功すると、セッションを準備するための 対話が始まります。このあとクライアントは仮想端末を割り当てたり、 X11 接続を転送したり、TCP/IP 接続を転送したり、あるいは安全な通信路を 経由して認証エージェントの接続を転送したりします。 .Pp 最後に、クライアントはシェルか、あるいはコマンドの実行のどちらかを 要求します。ここで双方はセッション モードに入ります。このモードでは 両者はいつでもデータを送ることができ、そのデータはサーバ側のシェル またはコマンドと、クライアント側のユーザ端末とでやりとりされます。 .Pp ユーザのプログラムが終了し、転送されたすべての X11 接続やその他の接続が 閉じられると、サーバはクライアントにコマンドの終了状態を送り、 両者は終了します。 .Pp .Nm -はコマンドライン オプションか、設定ファイルによって設定することが +はコマンドラインオプションか、設定ファイルによって設定することが できます。コマンドラインからのオプションは、 設定ファイルで指定されている値よりも優先されます。 .Pp .Nm はハングアップシグナル .Dv SIGHUP を受け取ると、自分の設定ファイルを読み込みなおします。 これは自分自身を開始したときのパス名 .Pa /usr/sbin/sshd を exec することによっておこないます。 .Pp コマンドラインオプションには次のようなものがあります: .Bl -tag -width Ds .It Fl b Ar ビット数 プロトコル バージョン 1 で短期的に使われるサーバ鍵の ビット数を指定します (デフォルトでは 768 ビットです)。 .It Fl d デバッグモードにします。サーバはシステムログに対し、 冗長なデバッグ表示を出力するようになり、バックグラウンドには移行しません。 -またサーバは fork せず、1回の接続しか受けつけません。 +またサーバは fork せず、1 回の接続しか受けつけません。 このオプションはサーバのデバッグのためだけに用意されています。 -複数の -d オプションをつけるとデバッグレベルが上がります。 +複数の +.Fl d +オプションをつけるとデバッグレベルが上がります。 最高は 3 です。 .It Fl e このオプションが指定されると、 .Nm は出力を syslog のかわりに標準エラー出力に送ります。 .It Fl f Ar 設定ファイル 設定ファイルの名前を指定します。デフォルトは .Pa /etc/ssh/sshd_config になっています。 .Nm は設定ファイルがないと起動しません。 .It Fl g Ar ログイン猶予時間 クライアントが自分自身を認証するのにかかる猶予時間を与えます -(デフォルトは 120秒)。クライアントがこの時間内にユーザを -認証できなかった場合、サーバは接続を切って終了します。ゼロを +(デフォルトは 120 秒)。クライアントがこの時間内にユーザを +認証できなかった場合、サーバは接続を切って終了します。0 を 値として与えると猶予は無限になります。 .It Fl h Ar ホスト鍵ファイル ホスト鍵を読むファイルを指定します。 このオプションは .Nm を root 以外で起動するときは必ず指定しなければいけません (ホスト鍵のファイルはふつう root からしか読めないようになっているからです)。 デフォルトでは、プロトコル バージョン 1 用の鍵が .Pa /etc/ssh/ssh_host_key であり、プロトコル バージョン 2 用の鍵が .Pa /etc/ssh/ssh_host_dsa_key です。 異なるバージョンのプロトコルやホスト鍵の方式に対し、 複数のホスト鍵ファイルを指定することも可能です。 .It Fl i .Nm -が inetd から起動されることを指定します。 +が +.Xr inetd 8 +から起動されることを指定します。 .Nm はふつう inetd からは起動されません。なぜならこれはクライアントを 受けつける前にサーバ鍵を生成しておく必要があり、これには 数十秒かかるためです。鍵が毎回生成しなおされると、クライアントは 非常に長い間待たされてしまいます。しかし鍵のサイズが 小さければ (たとえば 512 ビットぐらい)、inetd から .Nm を使うことも可能でしょう。 .It Fl k Ar 鍵の生成間隔 サーバ鍵がどれくらいの間隔で再生成されるかを指定します -(デフォルトでは 3600秒、つまり 1時間ごとになっています)。 +(デフォルトでは 3600 秒、つまり 1 時間ごとになっています)。 こんなに頻繁に鍵を再生成するのは以下のような理由によります。 この鍵はどこにも格納されません。そのため、このようにしておくと たとえマシンがクラックされたり物理的に乗っ取られたりしても、 -1時間後には 盗聴した通信を解読して鍵を見つけることは不可能に -なります。この値としてゼロを指定すると、 +1 時間後には 盗聴した通信を解読して鍵を見つけることは不可能に +なります。この値として 0 を指定すると、 鍵はまったく再生成されなくなります。 .It Fl o Ar オプション 設定ファイルと同じ形式でオプションを与えたいときに使用します。 これはコマンドラインオプションでは指定できないオプションを 指定したいときに便利です。 .It Fl p Ar ポート番号 サーバが接続を受けつける (listen する) ポート番号を指定します (デフォルトは 22 です)。 複数のポートオプションを指定することも可能です。 なお、コマンドラインオプションでポートを指定した場合、 設定ファイルで指定されたポートは無視されます。 .It Fl q 静かなモード。 ふつう、 .Nm は接続の開始と認証および終了を syslog に残します。 このオプションを指定すると syslog には何も残りません。 .It Fl t テストモード。 設定ファイルや鍵の正当性チェックだけをおこないます。 これは設定ファイル項目を変更した際に、 .Nm を安全に更新するのに便利です。 .It Fl u Ar 長さ このオプションはリモートホスト名を保持させる .Li utmp 構造体のフィールド長を指定するのに使われます。名前解決されたホストがこの .Ar len -よりも長い場合、ドットで区切られた 10進の数値がかわりに保持されます。 +よりも長い場合、ドットで区切られた 10 進の数値がかわりに保持されます。 これは非常に長いホスト名をもつホストがこのフィールドをあふれさせても、 一意に識別できるようにするためです。 .Fl u0 を指定すると .Pa utmp -ファイルにはつねにドットで区切られた 10進値が使われるようになります。 +ファイルにはつねにドットで区切られた 10 進値が使われるようになります。 また .Fl u0 は .Nm -が DNS 要求をおこなわないようにするのにも使われます。 +が DNS 要求をおこなわないようにするのにも使われるかもしれません。 ただし設定ファイルや認証メカニズムでこれが必要とされた 場合はこの限りではありません。 DNS を要求する可能性のある認証メカニズムは -.Cm RhostsAuthentication 、 -.Cm RhostsRSAAuthentication 、 +.Cm RhostsAuthentication , +.Cm RhostsRSAAuthentication , .Cm HostbasedAuthentication および .Cm from="pattern-list" オプションを使った鍵ファイルです。 DNS を必要とする設定オプションには、 .Cm AllowUsers あるいは -.Cm DenyUsers . -で使われている「USER@HOST」のパターンも含まれますので注意してください。 +.Cm DenyUsers +で使われている USER@HOST のパターンも含まれますので注意してください。 .It Fl D このオプションが指定されると .Nm は切り離し (detach) をおこなわず、デーモンにはなりません。 これは .Nm の監視を簡単にします。 .It Fl 4 .Nm が IPv4 アドレスのみを使うよう強制します。 .It Fl 6 .Nm が IPv6 アドレスのみを使うよう強制します。 .El .Sh 設定ファイル .Nm は .Pa /etc/ssh/sshd_config (あるいはコマンドラインから .Fl f オプションで指定したファイル) から設定を読み込みます。 このファイルの形式と設定項目は .Xr sshd_config 5 で説明されています。 .Sh ログインの過程 ユーザがログインに成功すると、 .Nm は以下のことをおこないます: .Bl -enum -offset indent .It ユーザが端末にログインしており、コマンドがとくに指定されていない場合、 (設定ファイルまたは .Pa $HOME/.hushlogin -- .Sx FILES の項を参照 -- で禁止されていなければ) 前回のログイン時刻と .Pa /etc/motd を表示する。 .It ユーザが端末にログインしている場合、ログイン時刻を記録する。 .It .Pa /etc/nologin と .Pa /var/run/nologin をチェックする。これが存在する場合、その内容を表示して終了する (root 以外)。 .It そのユーザの通常の権限に移行する。 .It 基本的な環境変数を設定する。 .It .Pa $HOME/.ssh/environment が存在していて、ユーザの環境変数を変更することが許されていれば、それを読み込む。 .Xr sshd_config 5 の .Cm PermitUserEnvironment 設定項目を参照のこと。 .It ユーザのホームディレクトリに移動する。 .It .Pa $HOME/.ssh/rc が存在する場合、それを実行する。そうでなければ、もし .Pa /etc/ssh/sshrc が存在しているなら、それを実行する。 これ以外の場合は .Xr xauth 1 を実行する。この .Dq rc ファイルには、X11 の認証プロトコルと (適用可能であれば) そのクッキーが標準入力から与えられる。 .It ユーザのシェルまたはコマンドを実行する。 .El .Sh authorized_keys ファイルの形式 .Pa $HOME/.ssh/authorized_keys ファイルは、プロトコル バージョン 1 における RSA 認証と プロトコル バージョン 2 における公開鍵認証 (PubkeyAuthentication) で ログインが許されている公開鍵を格納するものです。 別のファイルを使いたい場合は .Cm AuthorizedKeysFile で指定できます。 .Pp このファイルには各行にひとつの鍵が格納されています (空行や .Ql # で始まる行はコメントとして無視されます)。 プロトコル バージョン 1 の RSA 鍵では、 空白で区切られた次のようなフィールドが格納されています: オプション、ビット数、指数、モジュロ、鍵のコメント。 プロトコル バージョン 2 で使う公開鍵では次のフィールドが格納されています: -オプション、鍵の種類、base64エンコードされた鍵本体、鍵のコメント。 +オプション、鍵の種類、base64 エンコードされた鍵本体、鍵のコメント。 オプションのフィールドはなくてもかまいません。オプションが存在するかどうかは、 この行が数字あるいはピリオドで始まるかどうかによって決定されます (オプションフィールドは決して数字では始まりません)。 プロトコル バージョン 1 では、RSA 鍵はビット数、指数およびモジュロによって 表されます。コメント欄は利用されません (が、鍵を区別するのに役立ちます)。 プロトコル バージョン 2 では、鍵の種類は .Dq ssh-dss あるいは .Dq ssh-rsa です。 .Pp -これらのファイルでは通常 1行が何百バイトもの長さに +これらのファイルでは通常 1 行が何百バイトもの長さに なっていることに注意してください (これは公開鍵の係数のサイズが大きいためです)。 これを手でタイプする気にはならないでしょう。かわりに .Pa identity.pub , .Pa id_dsa.pub あるいは .Pa id_rsa.pub をコピーして、それを編集してください。 .Pp .Nm では、プロトコル 1 とプロトコル 2 の両方で、 -RSA 鍵の長さが少なくとも 768ビット以上である必要があります。 +RSA 鍵の長さが少なくとも 768 ビット以上である必要があります。 .Pp オプションは (もしあれば) カンマによって区切ることができます。間に スペースを入れてはいけませんが、ダブルクォートの間にはさめばオッケーです。 以下のオプションがサポートされています (これらのキーワードは 大文字小文字を区別しません) : .Bl -tag -width Ds .It Cm from="pattern-list" このオプションをつけると、公開鍵認証に加えて、クライアントの ホストをチェックできるようになります。 カンマで区切ったリモートホスト名 (canonical name) の -パターン列が指定できます ( +パターン列が指定できます .Pf ( Ql * および -.Ql ? +.Ql \&? がワイルドカードとして使えます)。 このリストには「〜でない」という否定 (negation) を入れることもできます。 その場合はパターンの先頭に -.Ql ! ; +.Ql \&! をつけてください。否定つきのパターンにホストの canonical name が マッチした場合、この鍵は許可されません。 このオプションはセキュリティを上げるためにつけられました: 公開鍵認証それ自体は、(鍵を除いて) ネットワークや ネームサーバ、その他ありとあらゆるものを信用しません。 しかし、もし何物かが何らかの方法で鍵を盗むことができれば、 その鍵を使って世界のどこからでもログインできてしまうことになります。 このオプションは、そのような盗まれた鍵を使うことを より困難にします (もしこれを使おうとするなら、鍵のほかに ネームサーバやルータまでも手を入れなくてはならないからです)。 .It Cm command="command" このオプションを使うと、認証にこの鍵が使われたときは必ず ここで指定されたコマンドが実行されるようになります。 ユーザが (訳注: クライアント側で) 指定したコマンドは無視されます。 クライアント側が仮想端末を要求していれば、ここで指定されたコマンドは 仮想端末上で実行されます。そうでなければ端末なしで実行されます。 8-bit クリーンな通信が欲しい場合は、仮想端末を要求してはいけません。 あるいは .Cm no-pty オプションを使ってください。 コマンド文字列中に引用符 (") を入れたいときは、 バックスラッシュを前につけてください。 このオプションは、ある公開鍵には特定の操作だけしかさせないように するのに有効です。例として、リモートバックアップだけをさせて、 それ以外な何もさせないような鍵がつくれます。クライアントの TCP/IP や X11 転送は、明示的に禁止されていない限り可能なので注意してください。 このオプションはシェル、コマンドまたはサブシステムの実行に適用されます。 .It Cm environment="NAME=value" 認証にこの鍵が使われたとき、環境変数に追加される文字列を指定します。この やりかたで指定した環境変数は、デフォルトの環境変数の値を上書きします。 このオプションは複数指定することも可能です。 環境変数の変更はデフォルトでは禁止されており、これを許可するには .Cm PermitUserEnvironment を設定する必要があります。 .Cm UseLogin を使っているときは、このオプションは自動的に禁止されます。 .It Cm no-port-forwarding 認証にこの鍵が使われたときは TCP/IP 転送が禁止されます。 クライアントがポート転送を要求しても、すべてエラーになります。 これはたとえば .Cm command オプションの指定されている接続などで使われます。 .It Cm no-X11-forwarding 認証にこの鍵が使われたときは X11 転送が禁止されます。 クライアントが X11 転送を要求しても、すべてエラーになります。 .It Cm no-agent-forwarding 認証にこの鍵が使われたときは、認証エージェントの転送が禁止されます。 .It Cm no-pty 端末の割り当てを禁止します (仮想端末の割り当てが失敗するようになります)。 .It Cm permitopen="host:port" ローカルな .Li ``ssh -L'' のポート転送先を、指定されたホストの指定されたポートのみに限定します。 IPv6 アドレスの場合は、指定する形式が異なります: .Ar host/port .Cm permitopen オプションはカンマで区切って複数指定することもできます。 パターンマッチングはおこなわれません。ホスト名にはドメイン名かアドレスを そのまま書く必要があります。 .El .Ss authorized_keysファイルの例: 1024 33 12121.\|.\|.\|312314325 ylo@foo.bar .Pp from="*.niksula.hut.fi,!pc.niksula.hut.fi" 1024 35 23.\|.\|.\|2334 ylo@niksula .Pp command="dump /home",no-pty,no-port-forwarding 1024 33 23.\|.\|.\|2323 backup.hut.fi .Pp permitopen="10.2.1.55:80",permitopen="10.2.1.56:25" 1024 33 23.\|.\|.\|2323 .Sh ssh_known_hosts ファイルの形式 .Pa /etc/ssh/ssh_known_hosts および .Pa $HOME/.ssh/known_hosts の各ファイルは今までに知られている ホストの公開鍵をすべて格納しています。システム用の known_hosts ファイル (大域的 known_hosts ファイル) は管理者によって用意され (必須ではありません)、 ユーザ用の known_hosts ファイルは自動的に更新されます。 これは、ユーザがまだ知られていないホストに接続すると、そのホスト鍵が 自動的にユーザ用 known_hosts ファイルに追加されるようになっています。 .Pp これら known_hosts ファイルの各行は次のようなフィールドからなっています: ホスト名、ビット数、指数、係数、そしてコメント。 各フィールドはスペースによって区切られています。 .Pp ホスト名はカンマで区切られたパターン列です ( .Ql * および -.Ql ? +.Ql \&? はワイルドカードとして使われます)。 各パターンは (クライアントを認証している ときは) 順にそのホストの正式名と比較されるか、あるいは (サーバを 認証しているときは) ユーザが与えた名前と比較されます。 パターンの先頭に -.Ql ! +.Ql \&! をつけると「〜でない」という否定 (negation) の意味になります。 否定されたパターンにマッチしたホストは、 たとえその行の他のパターンにマッチしても (その行では) 受けつけられません。 .Pp ビット数、指数および係数は RSA ホスト鍵から直接取り込まれます。 たとえばこれらは .Pa /etc/ssh/ssh_host_key.pub などから取得されます。オプションのコメント フィールドは行末まで続き、 これは無視されます。 .Pp .Ql # で始まる行および空行はコメントとして無視されます。 .Pp ホスト間認証をおこなうさい、どれか適切な鍵をもった行がマッチすれば、 認証は受け入れられます。したがって同じ名前が複数の行にあったり、 同一ホストに異なるホスト鍵が書いてあったりしても受けつけられます (が、おすすめはしません)。異なったドメインにあるホスト名の短縮形が ひとつのファイルにまとめられているときは、これは仕方がないでしょう。 また、これらのファイルには矛盾する情報が書かれていることもあり得ます。 その場合は、どれかのファイルに正しい情報が書いてあれば認証は受け入れられます。 .Pp 注意。これらのファイルの各行は、ふつう何百文字もの長さになっています。 もちろんこんなホスト鍵を手で入力したくはないでしょう。かわりにスクリプトで 生成するか、 .Pa /etc/ssh/ssh_host_key.pub をとってきてその先頭にホスト名をつけ加えるかしてください。 .Ss 例: .Bd -literal closenet,.\|.\|.\|,130.233.208.41 1024 37 159.\|.\|.93 closenet.hut.fi cvs.openbsd.org,199.185.137.3 ssh-rsa AAAA1234.....= .Ed .Sh 関連ファイル .Bl -tag -width Ds .It Pa /etc/ssh/sshd_config .Nm sshd の設定ファイルです。 このファイルの形式と設定項目は .Xr sshd_config 5 で説明されています。 .It Pa /etc/ssh/ssh_host_key, /etc/ssh/ssh_host_dsa_key -これら 3つのファイルはホストの秘密鍵を格納します。 +これら 2 つのファイルはホストの秘密鍵を格納します。 このファイルは root が所有し、root だけが読み込み可能にすべきであり、 これ以外の誰にも読ませてはいけません。 .Nm はこのファイルが誰にでも読めるようになっていると 起動しないので注意してください。 .It Pa /etc/ssh/ssh_host_key.pub, /etc/ssh/ssh_host_dsa_key.pub -これら 3つのファイルはホストの公開鍵を格納します。 +これら 2 つのファイルはホストの公開鍵を格納します。 このファイルは誰にでも読めるようになっている必要がありますが、 書き込めるのは root だけにしてください。 この内容は秘密鍵のファイルと対応しています。 このファイルが実際に使われることはありません。 これは単にユーザの便宜をはかるためだけに存在し、 ユーザはこれを known_hosts ファイルにコピーする -ことができます。これら 2つのファイル (秘密鍵と公開鍵) は +ことができます。これら 2 つのファイル (秘密鍵と公開鍵) は .Xr ssh-keygen 1 を使って生成することができます。 .It Pa /etc/ssh/moduli Diffie-Hellman 鍵交換 (Diffie-Hellman Group Exchange) で使われる、 Diffie-Hellman 群を格納します。 このファイルの形式は .Xr moduli 5 で説明されています。 .It Pa /var/empty .Nm が特権分離のさいに、認証前の段階で使用する .Xr chroot 2 用のディレクトリです。 このディレクトリはどんなファイルも含んでいてはならず、 所有者は root でグループあるいは他人が書きこめるようになっていてはいけません。 .It Pa /var/run/sshd.pid -現在 接続を受けつけている +現在接続を受けつけている .Nm のプロセス ID が入っています (複数の .Nm が異なるポートで走っているときは、最後に開始したプロセスの ID が入ります)。 このファイルの内容は機密事項ではなく、誰でも読めるようにしてかまいません。 .It Pa $HOME/.ssh/authorized_keys そのユーザのアカウントでログインするときに使われる公開鍵 (RSA または DSA) の 一覧が入っています。このファイルは root に読めるようになっている必要が あります (つまりそのユーザのホームディレクトリが別ホストの NFS ボリューム上にあるような場合、 (訳注: 一般に NFS では他ホストからの root アクセスを認めていないので) そのファイルは誰にでも読めるようになっていなければなりません)。 でもこれは他の人には読めないようにしておくことをすすめます。 このファイルの形式は上で説明されています。ユーザは自分の .Pa identity.pub, .Pa id_dsa.pub や .Pa id_rsa.pub ファイルの内容をこのファイルに入れておきます。 これは .Xr ssh-keygen 1 で説明されています。 .It Pa "/etc/ssh/ssh_known_hosts" and "$HOME/.ssh/known_hosts" これらのファイルは、プロトコル バージョン 1 の RSA ホスト間認証または プロトコル バージョン 2 のホストベース認証とともに rhosts ファイルを 使うとき、相手ホストの公開鍵をチェックするために使用されます。 認証が成功するためには、これらのファイルのどちらかに相手のホスト鍵が 格納されていなくてはいけません。一方、SSH クライアントは このファイルを、接続先のリモートホストが本当に接続しようとしている ホストかどうか確認するのに使います。 これらのファイルは root と所有者には書き込み可能にしておきます。 .Pa /etc/ssh/ssh_known_hosts は誰からでも読めるようにしておいてください。 .Pa $HOME/.ssh/known_hosts -は別にそうする必要はありません。 +は誰からも読めるようにできますが、別にそうする必要はありません。 .It Pa /etc/nologin このファイルが存在していると、 .Nm は root を除くすべてのユーザのログインを拒否します。 このファイルの内容は root 以外で ログインしようとして拒否された人に対して表示されます。この ファイルは誰にでも読めるようになっている必要があります。 .It Pa /etc/hosts.allow, /etc/hosts.deny このファイルは tcp-wrappers によるアクセス制限を定義しています。 詳しい説明は .Xr hosts_access 5 を参照してください。 .It Pa $HOME/.rhosts このファイルには、各行にホスト名とユーザ名の対をスペースで区切って 格納します。当該ホストの指定されたユーザからはパスワードなしの ログインが許可されます。このファイルは rlogind および rshd からも 使われます。これはそのユーザにのみ書き込めるようにしておき、 他の人からはアクセス不可能にしておくのがよいでしょう。 .Pp このファイルでは ネットグループ (netgroup) を使うこともできます。 ホスト名やユーザ名は +@groupname のような形式で書くことができ、 この場合はそのグループ中のすべてのホストあるいはユーザが指定されます。 .It Pa $HOME/.shosts ssh は、これを .Pa .rhosts とまったく同じように扱います。 しかしこれは rlogind や rshd からは使われないので、SSH を使ったときのみ アクセスを許可するときにこのファイルを使います。 .It Pa /etc/hosts.equiv このファイルは .Pa .rhosts 認証のさいに使われます。いちばん 簡単な形式は、各行にひとつのホスト名を書いておくことです。これらの ホストからのユーザは、両方のマシンでユーザ名が同じならば パスワードなしでログインを許可されます。ホスト名のあとにユーザ名を つけることもできます。この場合、そのユーザはこのマシン上で .Em どんな ユーザとしてもログインできてしまいます (root を除く)。 .Dq +@group のような形式で ネットグループ (netgroup) を指定することもできます。 否定のエントリは 先頭に .Ql \&- をつけてください。 .Pp もし相手のクライアント、あるいはそこのユーザがこのファイルに マッチする場合、クライアント側とサーバ側のユーザ名が同じならばログインは 自動的に許可されます。通常はこれに加えて RSA ホスト間認証が 成功していることが必要です。このファイルは root にしか書き込み可能に してはいけません。また、誰にでも読めるようにしておくほうがよいでしょう。 .Pp .Sy 「警告: .Pa hosts.equiv .Sy でユーザ名を使うのは絶対にやめるべきです」 .Pp これはそのユーザが本当に .Em 誰としてでも ログインできてしまうことになるんです。つまり bin や daemon や adm や、その他非常に重要な バイナリやディレクトリを所有しているアカウントでもログインできるのです。 ユーザ名を使うのは、実際にはそのユーザに root の アクセスを許しているのと同じです。ここでのユーザ名の唯一の まともな使いみちは、おそらく否定のエントリで使うことだけでしょう。 .Pp ここでの警告は rsh/rlogin にもあてはまることを覚えておいてください。 .It Pa /etc/ssh/shosts.equiv これは .Pa /etc/hosts.equiv とまったく同じように使われます。 このファイルは rsh や rlogin を ssh と同じ環境で動かすときに有用でしょう。 .It Pa $HOME/.ssh/environment このファイルは (存在していれば) ログイン時に環境変数に読み込まれ ます。これが含んでいてよいのは、空行、コメント行 ( .Ql # で始まる)、および ``変数名=値'' の形式の代入行だけです。このファイルは そのユーザにのみ書き込み可能にしておいてください。べつに 他人が読めるようにしておく必要もありません。 環境変数の変更はデフォルトでは禁止されており、これを許可するには .Cm PermitUserEnvironment を設定する必要があります。 .It Pa $HOME/.ssh/rc このファイルが存在していると、環境変数ファイルが読み込まれた 後にこのファイルが .Pa /bin/sh によって実行されます。これはユーザの シェルあるいはコマンドの実行よりも前におこなわれます。 このファイルは標準出力には何も出力してはいけません。 かわりに標準エラー出力を使ってください。X11 転送を使っているときは、 このスクリプトには標準入力から ``プロトコル クッキー'' の対 (および環境変数には .Ev DISPLAY ) が与えられます。このとき、スクリプトは .Xr xauth 1 を呼び出す必要があります。なぜなら .Nm はこの場合 X11 クッキーを追加するための xauth を自動的には 実行しないからです。 .Pp このファイルの基本的な目的は、ユーザがホームディレクトリに アクセス可能になる前に必要と考えられる初期化ルーチンを実行することです。 とくにこのような環境の例として、AFS があります。 .Pp おそらくこのファイルは、たとえば次のような何らかの初期化コードを 含むことになるでしょう: .Bd -literal if read proto cookie && [ -n "$DISPLAY" ]; then if [ `echo $DISPLAY | cut -c1-10` = 'localhost:' ]; then # X11UseLocalhost=yes echo add unix:`echo $DISPLAY | cut -c11-` $proto $cookie else # X11UseLocalhost=no echo add $DISPLAY $proto $cookie fi | xauth -q - fi .Ed .Pp このファイルが存在しない場合は .Pa /etc/ssh/sshrc が実行されます。これも存在しない場合は、 xauth がクッキーを追加するために使われます。 .Pp このファイルは、そのユーザにのみ書き込み可能にしておいてください。 誰でも読めるようにしておく必要はありません。 .It Pa /etc/ssh/sshrc .Pa $HOME/.ssh/rc に似ています。これはそのマシン全体にわたって ログイン時の初期化を指定するのに使われます。これは root のみ書き込み可能にしておき、誰からも読めるようにしておくべきです。 .El .Sh 作者 OpenSSH は Tatu Ylonen による、フリーな オリジナル版 ssh 1.2.12 リリースから派生したものです。 Aaron Campbell、 Bob Beck、 Markus Friedl、 Niels Provos、 Theo de Raadt および Dug Song が多くのバグをとり除き、 新しい機能をふたたび追加して OpenSSH をつくりました。 SSH プロトコル バージョン 1.5 および 2.0 のサポートは Markus Friedl の貢献によるものです。 Niels Provos および Markus Friedl が特権分離のサポートに 貢献しました。 .Sh 日本語訳 -新山 祐介 (yusuke at cs . nyu . edu) 2002/9/28 (for 3.5p1) +新山 祐介 (yusuke at cs . nyu . edu) 2003/3/31 (for 3.6p1) .Pp 当マニュアルページは氏のご好意により .Fx 日本語マニュアルに収録させていただいています。 翻訳についてのご意見、ご指摘がありましたら新山氏 (yusuke at cs . nyu . edu)、および .Fx jpman プロジェクト .Aq man-jp@jp.FreeBSD.org までお送りください。 .Sh 関連項目 .Xr scp 1 , .Xr sftp 1 , .Xr ssh 1 , .Xr ssh-add 1 , .Xr ssh-agent 1 , .Xr ssh-keygen 1 , .Xr login.conf 5 , .Xr moduli 5 , .Xr sshd_config 5 , .Xr sftp-server 8 .Rs .%A T. Ylonen .%A T. Kivinen .%A M. Saarinen .%A T. Rinne .%A S. Lehtinen .%T "SSH Protocol Architecture" .%N draft-ietf-secsh-architecture-12.txt .%D January 2002 .%O work in progress material .Re .Rs .%A M. Friedl .%A N. Provos .%A W. A. Simpson .%T "Diffie-Hellman Group Exchange for the SSH Transport Layer Protocol" .%N draft-ietf-secsh-dh-group-exchange-02.txt .%D January 2002 .%O work in progress material .Re