aboutsummaryrefslogblamecommitdiff
path: root/ja_JP.eucJP/man/man1/ssh.1
blob: 4dd3530b7aef452b076c9c18e3d9a903eed288df (plain) (tree)




































                                                                             
                                                                                  
                                                                                     



                      
        

































                                                                       
        








                                                                      
            

































                                                                              
                         
                                                          
                

































































































                                                                           
                                                                      






















































































































                                                                          
                                                                  


































                                                                
     


































































































































































                                                                            
                          





















                                                                      
                                              





























                                                                     
          
















                                                                      
            






























                                                              
                                                  






                                                                          
     



























































































                                                                        
        


























































































                                                                          
      
















































































































                                                                    
                           











































                                                                            
                















































                                                                    
                                                                           













































                                                                          
                                   








































































































                                                                         
                                                                     






















                                                                
.\"  -*- nroff -*-
.\"
.\" Author: Tatu Ylonen <ylo@cs.hut.fi>
.\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, 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.64 2000/10/16 21:46:31 markus Exp $
.\" %FreeBSD: src/crypto/openssh/ssh.1,v 1.4.2.7 2001/03/15 09:27:00 asmodai Exp %
.\" $FreeBSD: doc/ja_JP.eucJP/man/man1/ssh.1,v 1.5 2001/07/04 05:31:24 horikawa Exp $
.\"
.Dd September 25, 1999
.Dt SSH 1
.Os
.Sh 名称
.Nm ssh
.Nd OpenSSH セキュア シェル クライアント (リモート ログイン プログラム)
.Sh 書式
.Nm ssh
.Op Fl l Ar ログイン名
.Op Ar ホスト名 | ユーザ@ホスト名
.Op Ar コマンド
.Pp
.Nm ssh
.Op Fl afgknqtvxACNPTX246
.Op Fl c Ar 暗号化オプション
.Op Fl e Ar エスケープ文字
.Op Fl i Ar identityファイル
.Op Fl l Ar ログイン名
.Op Fl o Ar オプション
.Op Fl p Ar ポート
.Oo Fl L Xo
.Sm off
.Ar ポート :
.Ar ホスト :
.Ar ホスト側ポート
.Sm on
.Xc
.Oc
.Oo Fl R Xo
.Sm off
.Ar ポート :
.Ar ホスト :
.Ar ホスト側ポート
.Sm on
.Xc
.Oc
.Op Ar ホスト名 | ユーザ@ホスト名
.Op Ar コマンド
.Sh 解説
.Nm
(Secure Shell、セキュア シェル) はリモートマシンにログイン
したり、リモートマシン上でコマンドを実行するためのプログラムです。
これは rlogin と rsh を置き換えるためのもので、安全でないネットワーク
上にある、2つの信頼されていないホスト間で、暗号化された安全な通信を
提供します。X11 の接続や任意の TCP/IP ポートなども安全な通信路を通して
転送できます。
.Pp
.Nm
は指定された
.Ar hostname
に接続し、ログインします。
ユーザはリモートマシンに対して、自分自身であることを証明しなければいけません。
これにはプロトコルのバージョンに応じたいくつかの方法のうちのひとつを使います:
.Pp
.Ss SSH プロトコル バージョン 1
.Pp
最初に、ユーザがリモートマシン上の
.Pa /etc/hosts.equiv
あるいは
.Pa /etc/ssh/shosts.equiv
に記されているマシンからログインしてきて、
さらにそのユーザの名前が両方のホストで同じならば、そのユーザは
すぐにログインが許可されます。
つぎに、
.Pa \&.rhosts
か
.Pa \&.shosts
がリモートホスト上のそのユーザのホームディレクトリに存在していて、そこに
クライアントホスト名とそのホスト上におけるユーザ名が記されている
行が存在すれば、そのユーザはログインが許可されます。
この形の認証はふつう、これのみではサーバから許可されません。
安全ではないからです。
.Pp
2番目の (原始的な) 認証方法は
.Pa rhosts
または
.Pa hosts.equiv
を RSA ベースのホスト認証と組み合わせて使うことです。これは
もしログインが
.Pa $HOME/.rhosts ,
.Pa $HOME/.shosts ,
.Pa /etc/hosts.equiv ,
あるいは
.Pa /etc/ssh/shosts.equiv
で許可されていて、さらにサーバ側がクライアントのホスト鍵 (
.Sx 関連ファイル
セクションの
.Pa /etc/ssh/ssh_known_hosts
と
.Pa $HOME/.ssh/known_hosts
の項を参照) を確認できる場合、そして
その場合のみログインが許可されます。この認証方法を使うと IP 詐称、
DNS 詐称 および 経路詐称 によるセキュリティーホールをふさぐことができます。
[管理者の方へ:
.Pa /etc/hosts.equiv
や
.Pa $HOME/.rhosts 、
そして一般的な rlogin/rsh プロトコルは
本質的に危険であり、セキュリティを考えるなら禁止しなくてはいけません]
.Pp
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行ごとにひとつの鍵を格納します。
各行はかなり長くなることもあります)。
この後、ユーザはパスワードなしでログインすることができます。
RSA 認証は rhosts 認証よりもずっと安全です。
.Pp
RSA 認証を使う際にいちばん便利なのは「認証エージェント」と呼ばれる
ものを使うことかもしれません。詳しくは
.Xr ssh-agent 1
のマニュアルページを見てください。
.Pp
もし他の認証方法が失敗した場合、
.Nm
はユーザにパスワードを要求します。
このパスワードはチェックのためリモートホストに送られますが、
すべての通信は暗号化されているため、ネットワークを盗聴している何物かに
よってパスワードが見られてしまうようなことはありません。
.Pp
.Ss SSH プロトコル バージョン 2
.Pp
ユーザがバージョン 2 のプロトコルで接続したときには、別の認証方法が
使えるようになります: まず、クライアントは公開鍵の方法で認証しようと
こころみます。これが失敗するとパスワード認証が使われます。
.Pp
公開鍵による方法は前節に書かれている RSA 認証と似ていますが、
特許のある RSA アルゴリズムの代わりに DSA アルゴリズムが使われる点が
違っています。クライアントは
.Pa $HOME/.ssh/id_dsa
にある自分の DSA 秘密鍵をつかってセッション識別子と
呼ばれるものに署名し、この結果をサーバに送ります。
サーバはこれに対応する公開鍵が
.Pa $HOME/.ssh/authorized_keys2
ファイルに存在するかどうかチェックし、
もし両方の鍵が存在してその署名が正しければアクセスを許可します。
セッション識別子は共有 Diffie-Hellman 値によって与えられ、この値は
クライアントとサーバのみが知ることができます。
.Pp
公開鍵認証が失敗するか、それが使えなかった場合、リモートホストには
そのユーザであることを証明するパスワードが送られます。この
プロトコル 2 の実装はまだ Kerberos や OPIE 認証をサポートしていません。
.Pp
プロトコル 2 は信頼性
(通信は 3DES, Blowfish, CAST128 または Arcfour によって暗号化されます)
や、データが途中で改竄されることを防ぐための追加の機構
(hmac-sha1, hmac-md5)
を提供しています。プロトコル 1 では
接続の清潔さを保証する強力なメカニズムは存在しないことに注意してください。
.Pp
.Ss ログインセッション と リモート実行
.Pp
ユーザの同一性が確認されると、サーバは与えられたコマンドを実行するか、
そのマシンにログインさせユーザに標準のリモートマシンでのシェル環境を
与えます。リモートコマンドあるいはシェルにおけるすべての通信は
自動的に暗号化されます。
.Pp
仮想端末が割り当てられる場合 (通常のログイン時)、ユーザは
.Ic ~.
という文字を入力することによって接続を切ることができ、
.Ic ~^Z
によって
.Nm
をサスペンドできます。
転送されている接続の一覧は
.Ic ~#
によって見ることができます。X11 あるいは TCP/IP 接続が
終了するのを待つためにセッションがブロックされているときは、
.Ic ~&
を入力することによって ssh をバックグラウンド化することができます
 (ユーザのシェルがまだ生きているときに
これをやってはいけません、
シェルが止まってしまいます)。
使用可能なエスケープ文字の一覧は、
.Ic ~? .
で見ることができます。
.Pp
チルダ記号そのものを 1回入力するには
.Ic ~~
を押します (あるいは上で述べられている以外の文字をチルダに続けます)。
エスケープ文字は、必ず改行の直後に来なければ特別な文字とは
解釈されません。このエスケープ文字は設定ファイルかコマンドラインから
変更することもできます。
.Pp
もし仮想端末が割り当てられていない場合、そのセッションは透過となり、
バイナリファイルもきちんと送ることができます。ほとんどのシステムでは
エスケープ文字を
.Dq none
に設定すると、たとえ端末が使われていても
透過なセッションにすることができます。
.Pp
セッションは、リモートマシン上のコマンドやシェルが完了し、すべての
X11 や TCP/IP 接続が閉じられると終了します。このときのリモート
プログラムの終了状態が
.Nm ssh
の終了状態となります。
.Pp
.Ss X11 と TCP の転送
.Pp
ユーザが X11 を使っている (環境変数
.Ev DISPLAY
が設定されている) 場合には、
X11 ディスプレイへの接続をリモート側に転送するようにできます。これは、
シェル (あるいはコマンド) から起動された X11 プログラムはどれも
暗号化された通信路を通って、本当の X サーバへの接続はローカルマシン上から
なされるようになるのです。ユーザは
.Ev DISPLAY
を手動で設定すべきではありません。
X11 接続の転送はセキュリティを弱めるためデフォルトでは禁止されていますが、
コマンドラインあるいは設定ファイルによって有効にできます。
.Pp
.Nm
によって設定された
.Ev DISPLAY
の値はサーバマシン上を指すように
なっていますが、ディスプレイ番号は 0 より大きい値になっているでしょう。
これは正常な状態です。
.Nm
は暗号化された通信路を介して接続を転送するため、
サーバマシン上に
.Dq プロキシーの
X サーバをつくるのでこうなるのです。
.Pp
また、
.Nm
は自動的にサーバマシン上で Xauthority の情報を用意します。
この目的のため、
.Nm
はランダムな認証クッキーを生成し、サーバ側の
Xauthority に格納し、接続が転送されるときはすべてこのクッキーを持たせる
ようにします。そして接続が開かれるときに、これが本物のクッキーと置き換わる
ようにするのです。本物の認証クッキーがサーバ側に送られることは
決してありません (し、それに暗号化されないままでクッキーが送られるような
こともありません)。
.Pp
ユーザが認証エージェントを使っている場合、そのエージェントへの接続は
それがコマンドラインあるいは設定ファイルで禁止されていない限り、
自動的にリモート側に転送されます。
.Pp
安全な通信路をつかった任意の TCP/IP 接続への転送は、
コマンドラインあるいは設定ファイルで指定します。TCP/IP 転送の
応用として、ひとつは電子預金への安全な接続が考えられます。ほかにも
ファイヤーウォールを抜けるなどの使いみちがあるでしょう。
.Pp
.Ss サーバ認証
.Pp
.Nm
はこれまでに使った鍵すべてが入っているデータベースを
自動的に保持し、チェックします。これらのうち、RSA ホスト鍵はユーザの
ホームディレクトリにある
.Pa $HOME/.ssh/known_hosts
に格納され、 DSA ホスト鍵は
.Pa $HOME/.ssh/known_hosts2
に格納されます。
加えて、
.Pa /etc/ssh/ssh_known_hosts
および
.Pa /etc/ssh/ssh_known_hosts2
が既知のホストとして自動的にチェックされます。
新しいホストはユーザ側のファイルに自動的に追加されていきます。
もし、あるホストの鍵が変わっていた場合、
.Nm
は警告を発してパスワード認証を禁止します。
これはトロイの木馬がユーザのパスワードを盗むのを防ぐためです。
この仕組みのもうひとつの目的は、どこか他の場所で man-in-the-middle
攻撃が行われ、暗号化がたくみにかわされてしまうのを防ぐことです。
.Cm StrictHostKeyChecking
オプション (下記参照) はホスト鍵が知られていなかったり、
それが変更されていた場合のログインを防ぐために使われます。
.Sh オプション
.Bl -tag -width Ds
.It Fl a
認証エージェントの接続を転送することを禁止します。
.It Fl A
認証エージェントの接続を転送することを許可します。
これは設定ファイルによってホストごとに指定することも可能です。
.It Fl c Ar blowfish|3des
このセッションで使われる暗号化の方法を指定します。デフォルトでは
.Ar 3des
が使われます。これが安全であると考えられているためです。
.Ar 3des
(トリプル des) は 3つの異なる鍵をつかって
暗号化-復号化-暗号化を行うもので、
.Nm
ではもう完全にはサポートされなくなった
.Ar des
暗号化よりもおそらく安全です。
.Ar blowfish
は高速なブロック暗号化アルゴリズムで、非常に安全のようです。
そして
.Ar 3des
よりかなり速くなります。
.It Fl c Ar "3des-cbc,blowfish-cbc,arcfour,cast128-cbc"
さらにプロトコル バージョン 2 では、暗号化の方法をカンマで
区切ったリストにより優先順位をつけて指定することができます。
プロトコル バージョン 2 は 3DES, Blowfish および CAST128 を
それぞれ CBC モードでサポートし、Arcfour もサポートします。
.It Fl e Ar ch|^ch|none
仮想端末を使うセッションにおけるエスケープ文字を指定します
(デフォルトは
.Ql ~
)。エスケープ文字は行頭に来たときのみ認識されます。
エスケープ文字のあとにドット (
.Pq Ql \&.
) がくると接続が閉じられ、control-Z がくると接続はサスペンドされます。
そのエスケープ文字自身がきたときには、その文字が 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 認証のさい、 identity (秘密鍵) を読むファイルを指定します。
デフォルトはユーザのホームディレクトリにある
.Pa $HOME/.ssh/identity
になっています。identity ファイルは設定ファイルによって、
ホストごとに指定することもできます。複数の
.Fl i
オプションを指定することも可能です。
(設定ファイルで複数の鍵を指定することもできます。)
.It Fl k
Kerberos チケットおよび AFS トークンの転送を禁止します。
これは設定ファイルによって、ホストごとに指定することもできます。
.It Fl l Ar ログイン名
リモートマシン上でログインするユーザ名を指定します。
これは設定ファイルによって、ホストごとに指定することもできます。
.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 オプション
設定ファイルと同じ形式でオプションを与えたいときに使用します。
コマンドラインオプションでは指定できないオプションを指定したいときに
有用です。このときのオプションは設定ファイルの 1行と
同じ形式である必要があります。
.It Fl p Ar ポート
リモートホストに接続するポート番号あるいはポート名を指定します。
これは設定ファイルによって、ホストごとに指定することもできます。
.It Fl P
外に向けての接続を、特権ポートでないポートから張るようにします。
これはファイヤーウォールが特権ポートからの接続を禁じているときに
使われます。このオプションを指定すると、
.Cm RhostsAuthentication
および
.Cm RhostsRSAAuthentication
オプションがオフになることに注意してください。
.It Fl q
静かなモード。すべての警告メッセージや診断メッセージは
抑制されます。致命的なエラーだけが表示されます。
.It Fl t
強制的に仮想端末を割り当てます。これはリモートマシン上で
任意の画面ベースのプログラムを実行するときに非常に有用かもしれません。
たとえば、メニューサービスを実装するときなどに。
.It Fl T
仮想端末の割り当てを禁止します (プロトコル バージョン2 のみ)。
.It Fl v
冗長表示モード。
.Nm
が進行中のデバッグメッセージを表示するようにします。
これは接続や認証、設定の問題をデバッグするときに助けとなります。
またユーザがパスワードとして "s/key" を入力したときに、
.Xr skey 1
チャレンジを表示するためにも冗長モードが使われます。
複数の -v オプションをつけると冗長性が増します。最大は 3個です。
.It Fl x
X11 の転送を禁止します。
.It Fl X
X11 の転送を許可します。
これは設定ファイルによって、ホストごとに指定することもできます。
.It Fl C
すべてのデータを圧縮するよう指示します (標準入力、標準出力、
標準エラー出力、転送された X11 や TCP/IP 接続を含む)。圧縮に
使われるアルゴリズムは
.Xr gzip 1
と同じもので、
.Dq レベル
は
.Cm CompressionLevel
(下記参照) によって制御できます。
圧縮は、モデムその他の遅い接続においては必要ですが、高速な
ネットワークでは速度が低下するだけです。このデフォルト値は
2ホスト間ごとに設定ファイルに書くことができます。下の
.Cm Compress
オプションを参照してください。
.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 としてログインしているときだけです。
.It Fl 2
.Nm
がプロトコル バージョン 2 のみを使うよう強制します。
.It Fl 4
.Nm
が IPv4 アドレスのみを使うよう強制します。
.It Fl 6
.Nm
が IPv6 アドレスのみを使うよう強制します。
.El
.Sh 設定ファイル
.Nm
は次のものから、この順序で設定情報を取得します: コマンドライン
オプション、ユーザの設定ファイル
.Pq Pa $HOME/.ssh/config
、そしてシステムの設定ファイル
.Pq Pa /etc/ssh/ssh_config
。各設定項目は、ぞれそれ
最初に取得されたものが使われます。設定ファイルはいくつかのセクションに
分かれており、これらは
.Dq Host
指定子により区切られていて、その
指定子のパターンどれかにマッチするホストに対応するセクションが
適用されます。マッチさせるホストの名前は、コマンドラインから
与えられたものになります。
.Pp
各設定項目で最初に得られた値が使われるので、よりホストに特化した宣言を
ファイルの先頭近くに置くようにし、一般的なものを後に置くのが
よいでしょう。
.Pp
設定ファイルは以下のような形式になっています:
.Pp
空行、および
.Ql #
で始まる行は、コメントとみなされます。
.Pp
それ以外の場合、この行は
.Dq キーワード  引数
の形式とみなされます。
とりうるキーワードとその意味は以下のとおりです
(設定ファイルは大文字小文字を区別することに注意してください) :
.Bl -tag -width Ds
.It Cm Host (ホスト)
これ以後の宣言 (次の
.Cm Host
キーワードが現れるまで) を、
このキーワードに与えられるパターンのどれかにマッチするホストのみに
限定します。パターン中では
.Ql \&*
と
.Ql ?
がワイルドカードとして使えます。単独の
.Ql \&*
は、あらゆるホストに対してのデフォルトになります。
ここでのホストとは、コマンドライン引数で与えられた
.Ar hostname
のことです (つまりホスト名はマッチングの前に正規化されたりしません)。
.It Cm AFSTokenPassing (AFS トークンパス)
リモートホストに AFS トークンを渡すかどうかを指定します。
このキーワードがとりうる引数の値は
.Dq yes
あるいは
.Dq no
のどちらかになります。
.It Cm BatchMode (バッチ処理モード)
これが
.Dq yes
に設定されているときは passphrase および password の
問い合わせが禁止されます。このオプションはスクリプトその他の
バッチ処理中で、パスワードを打ち込むユーザがいない場合に有用です。
引数の値は
.Dq yes
あるいは
.Dq no
です。
.It Cm CheckHostIP (ホスト IP のチェック)
このフラグが
.Dq yes
に設定されていると、ssh は
.Pa known_hosts
ファイルにあるホストの IP アドレスも加えてチェックするようになります。
これによって、DNS 詐称によりホスト鍵が変えられたことを
検出できます。このオプションが
.Dq no
に設定されている場合は、このチェックは行われません。
.It Cm Cipher (暗号化アルゴリズム)
プロトコル バージョン 1 のセッションで使われる暗号化の
アルゴリズムを指定します。現在のところ
.Dq blowfish
および
.Dq 3des
がサポートされており、デフォルトは
.Dq 3des
です。
.It Cm Ciphers (複数の暗号化アルゴリズム)
プロトコル バージョン 2 で許可されている暗号化アルゴリズムの
優先順位を指定します。複数の暗号化アルゴリズムを指定する場合は
カンマで区切ってください。デフォルトは
.Dq 3des-cbc,blowfish-cbc,cast128-cbc,arcfour
です。
.It Cm Compression (圧縮)
データ圧縮を行うかどうかを指定します。
引数の値は
.Dq yes
あるいは
.Dq no
です。
.It Cm CompressionLevel (圧縮レベル)
圧縮をおこなうさいの圧縮レベルを指定します。この引数がとる値は
整数の 1 (高速) から 9 (遅いが高圧縮) までです。デフォルトの
値は 6 で、ほとんどのアプリケーションにはこれで充分です。
この値の意味は
.Xr gzip 1
と同じです。
.It Cm ConnectionAttempts (接続試行回数)
接続を試みる回数 (1秒に一回) を指定します。これを越えると
ssh は rsh に移行するか、終了してしまいます。この値は整数で
なければなりません。これは、ときどき接続に失敗する環境での
スクリプトなどに有用です。
.It Cm DSAAuthentication (DSA 認証)
DSA 認証を行うかどうかを指定します。この引数の値は
.Dq yes
か
.Dq no .
です。DSA 認証は DSA identity ファイルが存在するときにのみ
試されます。このオプションはプロトコル バージョン 2 にしか適用されません。
.It Cm EscapeChar (エスケープ文字)
エスケープ文字を設定します (デフォルトは
.Ql ~
)。エスケープ文字はコマンドラインからも指定できます。
この引数には 1つの文字か、
.Ql ^
に1文字を付けたもの、あるいはエスケープ文字の使用をすべて禁止するなら
.Dq none
を指定します (これはその接続を、バイナリ
データに対して透過にすることになります)。
.It Cm FallBackToRsh (rsh への退行)
.Nm
経由の接続が拒否された (connection refused、リモートホスト上で
.Xr sshd 8
が listen していない) とき、かわりに (このセッションが
暗号化されていないという適切な警告のあとで)
.Xr rsh 1
を自動的に使うべきかどうかを指定します。この引数の値は
.Dq yes
または
.Dq no
です。
.It Cm ForwardAgent (エージェント転送)
認証エージェントへの接続を、(それがあれば) リモートマシンに
転送するかどうかを指定します。この引数の値は
.Dq yes
あるいは
.Dq no
でなければならず、デフォルトは
.Dq no
です。
.It Cm ForwardX11 (X11 転送)
X11 接続を自動的に安全な通信路へリダイレクトし、
.Ev DISPLAY
を設定するかどうかを指定します。この引数の値は
.Dq yes
あるいは
.Dq no
でなければならず、デフォルトは
.Dq no
です。
.It Cm GatewayPorts (ゲートウェイポート)
ローカルから転送されたポートに、リモートホストが接続することを
許可するかどうかを指定します。この引数の値は
.Dq yes
または
.Dq no
でなければならず、デフォルトは
.Dq no
です。
.It Cm GlobalKnownHostsFile (大域的 known_host ファイル)
.Pa /etc/ssh/ssh_known_hosts
のかわりに使用するファイルを指定します。
.It Cm HostName (本当のホスト名)
ログインする本当のホスト名を指定します。これはホストの
ニックネームや省略形を指定するときに使います。デフォルトは
コマンドラインから与えられた名前になります。 (コマンドライン、
.Cm HostName
指示子の両方とも) 数字の IP アドレスでもかまいません。
.It Cm IdentityFile (identity ファイル)
ユーザの RSA 認証用 identity (秘密鍵) を読むファイルを
指定します (デフォルトはユーザのホームディレクトリにある
.Pa $HOME/.ssh/identity
です)。加えて、認証のさいには認証エージェントによって現れる identity も
使われます。ファイル名ではユーザのホームディレクトリを表すのに
チルダ表記を使うことができます。設定ファイルには複数の identity が
指定されていてもよく、この場合すべての identity が順に試されます。
.It Cm IdentityFile2 (identity ファイル 2)
ユーザの DSA 認証用 identity (秘密鍵) を読むファイルを
指定します (デフォルトはユーザのホームディレクトリにある
.Pa $HOME/.ssh/id_dsa
です)。ファイル名はユーザのホームディレクトリを
表すのにチルダ表記を使うことができます。
設定ファイルには複数の identity が指定されていてもよく、
この場合すべての identity が順に試されます。
.It Cm KeepAlive (生かしておく)
システムが相手のマシンに 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 に転送するよう指示します。
最初の引数はポートで、2番目の引数には host:port の形で指定します。
ポート転送は複数指定することができ、コマンド
ラインから追加指定することもできます。特権ポートを転送できるのは
スーパーユーザだけです。
.It Cm LogLevel (ログレベル)
.Nm ssh
が出力するログメッセージの冗長性レベルを指定します。
とりうる値は次のとおりです:
QUIET, FATAL, ERROR, INFO, VERBOSE および DEBUG。
デフォルトでは INFO です。
.It Cm NumberOfPasswordPrompts (パスワード試行回数)
パスワードを何回まで訊くかを指定します。
これを越えるとあきらめてしまいます。
このキーワードの引数は整数でなくてはなりません。
デフォルト値は 3 です。
.It Cm PasswordAuthentication  (パスワード認証)
パスワード認証を使うかどうかを指定します。この引数の値は
.Dq yes
または
.Dq no
です。このオプションはプロトコル バージョン 1 と 2 の
両方に適用されることに注意してください。
.It Cm Port (ポート)
リモートホストに接続するときのポート番号あるいはポート名を指定します。
デフォルトは 22 です。
.It Cm Protocol (プロトコル)
.Nm
がサポートすべきプロトコルのバージョンの優先順位を指定します。
とりうる値は
.Dq 1
と
.Dq 2
で、複数のバージョンを
指定するときはカンマで区切ってください。デフォルト値は
.Dq 1,2
です。これは
.Nm
がまず始めにバージョン 1 を試し、それが失敗した場合に
バージョン 2 を試すことを指示しています
.It Cm ProxyCommand (プロキシ コマンド)
サーバに接続するのに使用するコマンドを指定します。コマンド文字列は
.Pa /bin/sh
によって実行され、これは行末まで書くことができます。
コマンド文字列では、
.Ql %h
は接続するホスト名に置換され、
.Ql %p
はポート番号あるいはポート名に置換されます。
コマンドは基本的に何でもよいのですが、標準入力から読み込み、
標準出力に書き込むようなものでなければいけません。
これは最終的にサーバマシン上で動いている
.Xr sshd 8
に接続するか、どこか別の場所で
.Ic sshd -i
を起動させるようにします。ホスト鍵の管理は接続されているホストの
HostName を使って行われます (デフォルトでは、これはユーザが
タイプした名前になります)。このオプションを使うと、
.Cm CheckHostIP
は使用できませんので注意してください。
[訳注: それと rhosts 認証も使用できなくなります。これは
特権ポートから接続を張る方法がないためです]
.Pp
.It Cm RemoteForward (リモート転送)
リモートマシン上の TCP/IP ポートを、安全な通信路を経由させて
ローカルマシン上から与えられた host:post に転送するよう指示します。
最初の引数はポートで、2番目の引数には host:port の
形で指定します。ポート転送は複数指定することができ、コマンド
ラインから追加指定することもできます。特権ポートを転送できるのは
スーパーユーザだけです。
.It Cm RhostsAuthentication (rhosts 認証)
Rhosts ベースの認証を試みるかどうかを指定します。この宣言は
クライアント側にのみ影響し、セキュリティにまったくなんの
効果もないことに注意してください。rhosts 認証を禁止すると、
rhosts 認証が使われないときに、遅い接続での認証にかかる時間が
短縮されます。ほとんどのサーバでは RhostsAuthentication は
安全でないという理由で許可されていません (RhostsRSAAuthenticationを参照)。
この引数の値は
.Dq yes
または
.Dq no
です。
.It Cm RhostsRSAAuthentication (rhosts-RSA 認証)
RSA ホスト認証を使った Rhosts ベースの認証を試みるかどうかを
指定します。これはほとんどのサイトでの基本的な認証方法です。
この引数の値は
.Dq yes
または
.Dq no
です。
.It Cm RSAAuthentication (RSA 認証)
RSA 認証を試みるかどうかを指定します。この引数の値は
.Dq yes
または
.Dq no
にしてください。RSA 認証は identity が存在するか、
認証エージェントが動いているときにのみ試されます。このオプションは
プロトコル バージョン 1 にしか適用されないので注意してください。
.It Cm SkeyAuthentication (s/key 認証)
.Xr skey 1
認証を使うかどうかを指定します。引数の値は
.Dq yes
あるいは
.Dq no
になります。デフォルトは
.Dq no
です。
.It Cm StrictHostKeyChecking (厳格なホスト鍵チェック)
このフラグが
.Dq yes
に設定されていると、
.Nm
が
.Pa $HOME/.ssh/known_hosts
および
.Pa $HOME/.ssh/known_hosts2
に自動的にホスト鍵を追加することはしなくなり、ホスト鍵が変わっている
ホストには接続を拒否します。これはトロイの木馬攻撃に対する最大の
防御になります。しかし適切な
.Pa /etc/ssh/ssh_known_hosts
や
.Pa /etc/ssh/ssh_known_hosts2
ファイルをもっていないものの、
しょっちゅう新しいホストに接続するような場合は、この機能は余計な
お世話になります。基本的にこのオプションは、ユーザが新しいホストを
手で追加するよう強制するものです。ふつうこのオプションは
禁止されていて、新しいホストは自動的に known_hosts ファイルに
追加されていきます。どちらの場合も known_hosts にあるホスト鍵は
自動的に検証されます。この引数の値は
.Dq yes
または
.Dq no
です。
.It Cm UsePrivilegedPort (特権ポートの使用)
外に向けての接続をおこなうときに、
特権ポートを使用するかどうかを指定します。この引数の値は
.Dq yes
または
.Dq no
で、デフォルトは
.Dq yes
になっています。このオプションを
.Dq no
にすると
.Cm RhostsAuthentication
および
.Cm RhostsRSAAuthentication
が使えなくなることに注意してください。
[訳注:
.Cm ProxyCommand
を使っているときも特権ポートは
使えないため、これらの認証は使えなくなります。]
.It Cm User (ユーザ)
ログインするユーザ名を指定します。これは異なるマシン上で
異なるユーザ名を持っているような場合に有用です。
これでコマンドラインからわざわざユーザ名を与えなくてもすみます。
.It Cm UserKnownHostsFile (known_hosts ファイルの使用)
.Pa $HOME/.ssh/known_hosts
の代わりに使われるファイルを指定します。
.It Cm UseRsh (rsh の使用)
このホストに対して rlogin/rsh が使われるべきかどうかを指定します。
相手のホストが
.Nm
プロトコルをまったくサポートしていないということもあり得ます。
こうなったとき
.Nm
.Xr rsh 1
を exec します。このオプションが指定されていると、
これ以外のすべてのオプション (
.Cm HostName
を除く) は無視されます。とりうる値は
.Dq yes
あるいは
.Dq no
です。
.It Cm XAuthLocation (xauth の位置)
.Xr xauth 1
プログラムの場所を指定します。デフォルトは
.Pa /usr/X11R6/bin/xauth
です。
.El
.Sh 環境変数
.Nm
はふつう以下の環境変数を設定します:
.Bl -tag -width Ds
.It Ev DISPLAY
.Ev DISPLAY
変数は X11 サーバの場所を示しています。これは
.Nm
によって、
.Dq hostname:n
という形の値が自動的にセットされます。
ここで hostname の部分はシェルが走っているホストを表しており、
n は n \*(>= 1 の整数です。
.Nm
はX11 接続を安全な通信路で転送するために、この特別な値を使うのです。
ユーザはふつう DISPLAY を明示的に設定すべきではありません。
なぜならそうすると X11 の接続が安全でなくなってしまうからです
(しかもユーザは認証に必要なクッキーを手でコピーしなければならなくなります)。
.It Ev HOME
ユーザのホームディレクトリのパス名に設定されます。
.It Ev LOGNAME
.Ev USER
と同じです。この環境変数を使うシステムで互換性を保つために設定されます。
.It Ev MAIL
ユーザのメールボックスを指しています。
.It Ev PATH
デフォルトの
.Ev PATH
です。これは
.Nm ssh
のコンパイル時に指定されます。
.It Ev SSH_AUTH_SOCK
認証エージェントと通信するのに使われる Unix ドメインソケットの
パスを表しています。
.It Ev SSH_CLIENT
接続の末端にあるクライアントの識別子です。この変数にはスペースで
区切られた 3つの値が入っています: クライアントの IP アドレス、
クライアントのポート、および サーバのポート。
.It Ev SSH_TTY
現在のシェルあるいはコマンドに割り当てられている tty の名前
(端末装置へのパス) にセットされます。現在のセッションが端末を
持たない場合、この変数はセットされません。
.It Ev TZ
デーモンが起動したとき、現在の時間帯を表すタイムゾーン変数が
セットされていると、それがここにセットされます (つまりデーモンは
その値を新規の接続に渡します)。
.It Ev USER
ログインしているユーザ名にセットされます。
.El
.Pp
これらに加えて、
.Nm
は
.Pa $HOME/.ssh/environment
を読み込み、
.Dq VARNAME=value
という形式の行を環境変数に追加します。
.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
RSA および DSA 認証用のユーザの identity (秘密鍵)を格納します。
これらのファイルには他人に見られるとまずいデータが入っているため、
そのユーザには読めても、他人からはアクセスできないようにしてください
(読み込み/書き込み/実行属性ともに)。
.Nm
は、他人がアクセスできるようになっている
identity ファイルは無視するので注意してください。
鍵を作成するときにパスフレーズを指定することも可能です。この
パスフレーズはファイル中の見られるべきでない部分を、
3DES を使って暗号化するのに用いられます。
.It Pa $HOME/.ssh/identity.pub, $HOME/.ssh/id_dsa.pub
認証のための公開鍵を格納します (鍵ファイルのうち公開できる
部分が可読形式で格納されています)。
.Pa $HOME/.ssh/identity.pub
ファイルの内容は、RSA 認証を使ってログインしたいすべてのマシン上の
.Pa $HOME/.ssh/authorized_keys
ファイルに加えられていなければいけません。また、
.Pa $HOME/.ssh/id_dsa.pub
ファイルの内容も同様に、
DSA 認証を使ってログインしたいすべてのマシン上にある
.Pa $HOME/.ssh/authorized_keys2
ファイルに加えられている必要があります。
これらのファイルは見られてもよいため、他人が読めるように
しておいてもかまいません (が必須ではないです)。これらのファイルが
自動的に使われることは決してなく、必要でもありません。これはただ
ユーザの便宜をはかるために提供されています。
.It Pa $HOME/.ssh/config
これはユーザごとの設定ファイルです。
このファイルの形式は上で説明されているものです。
このファイルは
.Nm
クライアントによって使われます。
このファイルはふつう特に見られてはまずい情報は含んでいません。
しかし望ましいパーミッションとしては、そのユーザからは
読み/書きが可能で、他人からはアクセス不可能に
しておくのがよいでしょう。
.It Pa $HOME/.ssh/authorized_keys
このユーザのログインに使われる RSA 公開鍵のリストです。この形式は
.Xr sshd 8
のマニュアルで説明されています。
このファイルのいちばん簡単な形式は、.pub 公開鍵ファイルと同じにすることです
(つまり各行に、係数のビット数、公開されている指数、
係数およびコメントフィールドがスペースで区切られて
格納される)。これは見られても非常にまずいというものでは
ありませんが、できればこのユーザからは読み/書きが可能で、
他人からはアクセス不可能なパーミッションに設定しておくのがよいでしょう。
.It Pa $HOME/.ssh/authorized_keys2
このユーザのログインに使われる DSA 公開鍵のリストです。この
ファイルも見られて非常にまずいというものではありませんが、
このユーザからは読み/書きが可能で、他人からはアクセス不可能の
パーミッションを設定しておくのがよいでしょう。
.It Pa /etc/ssh/ssh_known_hosts, /etc/ssh/ssh_known_hosts2
システム全体にわたる known hosts 鍵です。
.Pa /etc/ssh/ssh_known_hosts
は RSA 鍵を、
.Pa /etc/ssh/ssh_known_hosts2
は DSA 鍵を格納します。
これらのファイルはシステム管理者によって用意され、その組織内で
使われるすべてのマシン用の公開ホスト鍵を格納するようになっているはずです。
このファイルは誰からも読めるようになっていなければいけません。
このファイルは 1行ごとに公開鍵を格納し、これは次のような
形式になっています (各フィールドはスペースで区切られます):
システム名、係数のビット数、公開されている指数、係数、そして
オプションとしてコメント用フィールド。同一のマシンにいくつかの
異なる名前が使われている場合は、それらをずべてカンマで区切って
列挙する必要があります。この形式は
.Xr sshd 8
マニュアルページで説明されています。
.Pp
.Xr sshd 8
がログイン時にクライアント側のホストを検証するさいには、
システムの正式な名前 (ネームサーバの返す canonical name) が
使われます。これ以外の名前が必要なのは次のような理由によります。
.Nm
は、鍵を検査する前にユーザの指定した名前を正式なものに変換する、
ということをしません。何物かがネームサーバに仕掛けを入れれば、
これを使ってホスト認証をだますことが可能になってしまうからです。
.It Pa /etc/ssh/ssh_config
システム全体にわたる設定ファイルです。このファイルはユーザの設定
ファイルでは指定されなかった値を提供し、また設定ファイルを
持たないユーザのためのデフォルトにもなります。このファイルは
誰にでも読み込み可能でなければいけません。
.It Pa $HOME/.rhosts
このファイルは
.Pa \&.rhosts
認証で使われる、ログインを許可されたホスト名と
ユーザの対の一覧です。(このファイルは 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
とまったく同じように扱われます。このファイルは、
.Xr rlogin 1
や
.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 環境変数
の節を見てください。
.It Pa libcrypto.so.X.1
ssh が動作するためには、このライブラリで RSA アルゴリズムの
サポートを含むバージョンが必要です。
.El
.Sh 作者
OpenSSH
は Tatu Ylonen によってリリースされたオリジナルの (フリー)
ssh 1.2.12 から派生したものです。しかしバグがとり除かれ、より新しい機能が
追加されています。1.2.12 がリリースされるとすぐに、オリジナルの ssh は
だんだんと制限されたライセンスになっていき、フリーのバージョンに対する
要求が生まれました。
.Pp
このバージョンの OpenSSH は…
.Bl -bullet
.It
何らかの制限的事項 (つまり特許など。
.Xr ssl 8
を参照) がついているコンポーネントはすべて、
ソースコードから直接削除されています。
かわりにライセンスあるいは特許つきのコンポーネントは、
外部ライブラリから取り込まれます。
.It
SSH プロトコル 1.5 と 2 をサポートするようにアップデートされました。
これで他のすべての SSH クライアントやサーバと互換になります。
.It
.Xr kerberos 8
認証とチケットパスの追加サポートが含まれています。
.It
.Xr skey 1
を用いた、使い捨てパスワード (one-time password)
認証をサポートしています。
.El
.Pp
OpenSSH は以下の人々によって製作されました: Aaron Campbell, Bob Beck,
Markus Friedl, Niels Provos, Theo de Raadt, そして Dug Song。
.Pp
SSH プロトコル 2 のサポートは Markus Friedl の手によるものです。
.Sh 日本語訳
新山 祐介 (euske@cl.cs.titech.ac.jp) 2000/11/23
.Pp
当マニュアルページは氏のご好意により
.Fx
日本語マニュアルに収録させていただいています。
翻訳についてのご意見、ご指摘がありましたら新山氏
<euske@cl.cs.titech.ac.jp>、および
.Fx
jpman プロジェクト <man-jp@jp.FreeBSD.org> までお送りください。
.Sh 関連項目
.Xr rlogin 1 ,
.Xr rsh 1 ,
.Xr scp 1 ,
.Xr ssh-add 1 ,
.Xr ssh-agent 1 ,
.Xr ssh-keygen 1 ,
.Xr telnet 1 ,
.Xr sshd 8 ,
.Xr ssl 8