aboutsummaryrefslogblamecommitdiff
path: root/ja_JP.eucJP/man/man8/rshd.8
blob: 0955f9d667e458faffb6c64ec6520b4aa39a9e05 (plain) (tree)































                                                                              
                                                                             
   
                                                                                       


                
   



                          
   
               
        
   




                                        
   


                                                                    
   


                                








                                                                  


                                             














                                                                               


                                                    














                                                              
   







                                                


                                              


                                          
                    

                                                        



                                                                           

                                                                         

                              
   


                            
                                                    
   


                                                





                                            

                                                              
        
                          



                              











                                                                  











                                                                              
                        


                                                                

                                                                      

                        
           
                    
                                      




                                      


                                      
                             
            
          












                                                                  
                 
             
                   




                  
             
                
                                         

                       
                      
                           
                       



                                                                          


                          



                                                                   

                                                       
.\" Copyright (c) 1983, 1989, 1991, 1993
.\"	The Regents of the University of California.  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.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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.
.\"
.\"     @(#)rshd.8	8.1 (Berkeley) 6/4/93
.\" %FreeBSD: src/libexec/rshd/rshd.8,v 1.18.2.5 2001/08/16 10:44:18 ru Exp %
.\"
.\" $FreeBSD: doc/ja_JP.eucJP/man/man8/rshd.8,v 1.14 2001/07/29 05:15:29 horikawa Exp $
.\"
.Dd June 4, 1993
.Dt RSHD 8
.Os
.Sh 名称
.Nm rshd
.Nd リモートシェルのサーバ
.Sh 書式
.Nm
.Op Fl \&?DLaln
.Sh 解説
.Nm
は、
.Xr rcmd 3
ルーチンのためのサーバであり、結果として
.Xr rsh 1
の実行のために必要となるサーバです。
.Nm
は、信頼できるホストからの特権ポート番号に基づいた
認証を行なうことによって、プログラムのリモート実行機能を提供します。
.Pp
.Nm
サーバは、
.Dq cmd
サービスに割り当てられたポート (
.Xr services 5
参照) でサービス要求を受け付けます。サービス要求を受信すると、
サーバは以下の手順を開始します:
.Bl -enum
.It
サーバは、クライアントの要求元ポート番号のチェックをおこないます。
要求元ポート番号
が 512 から 1023 の範囲にない場合、サーバは接続を強制切断します。
.It
サーバは、ソケットから
.Tn ヌル
バイト (`\e0') を検出するまで文字を読みます。
受信文字列は、
.Tn ASCII
コードによる 10 進数の数値に変換します。
.It
ステップ 2 で受信した数値が 0 でない場合、その数値を
.Em 標準エラー出力
で使用する 2 番目のストリームのポート番号として解釈します。
そしてクライアントマシン上でも指定されたポート番号の 2 番目の接続を生成します。
この 2 番目の接続の要求元ポート番号も、512 から 1023 の範囲で指定します。
.It
サーバは、クライアントの要求元アドレスをチェックし、該当するホスト名を要求し
ます (
.Xr gethostbyaddr 3 ,
.Xr hosts 5 ,
.Xr named 8
を参照してください)。ホスト名が特定できない場合、
または確認したホスト名とアドレスとが一致しない場合、
ドット表記法によるホストアドレスを用います。
.It
最初のソケットを介して、ヌル終端された最大 16 文字の
ユーザ名を取得します。ユーザ名は、
.Em クライアント
マシン上のユーザ識別に使用します。
.It
最初のソケットを介して、ヌル終端された最大 16 文字の
ユーザ名を取得します。ユーザ名は、
.Em サーバ
マシン上のユーザ認証に使用します。
.It
最初のソケットを介して、シェルに渡されるべき、ヌル終端された
コマンドを取得します。コマンド長の制限は、システムの引数リスト
サイズの上限に依存します。
.It
.Nm
は、
.Pa /etc/hosts.equiv
および当該ユーザのホームディレクトリ上に存在する
.Pa .rhosts
ファイルを用いる
.Xr ruserok 3
を使用して、ユーザ認証を行います。
.Fl l
オプションは、ユーザがスーパユーザでない限り、
.Pa .rhosts
ファイルに基づいた
.Xr ruserok 3
のすべての認証をおこなわないようにします。
.It
.Pa /var/run/nologin
ファイルが存在し、ユーザがスーパユーザでない場合、接続を
切断します。
nologin ファイルの名前に関しては、
.Pa login.conf
にて
ローカルユーザのログインクラスに関する nologin ケーパビリティが優先します。
ログインクラスは、ログイン時間(times.allow と times.denny ケーパビリティ)
およびリモートホスト(hosts.allow と hosts.denny ケーパビリティ)による
.Xr rsh 1
アクセスの制限にも使われます。
.It
最初のソケットを用いて
.Tn ヌル
バイトを返し、コマンドライン
を、ユーザの通常のログインシェルに渡します。シェルは
.Nm
によって確立されたネットワーク接続を継承します。
.El
.Pp
オプションは次の通りです:
.Bl -tag -width indent
.It Fl \&?
使用方法のメッセージを表示し、終了します。
.It Fl D
TCP_NODELAY ソケットオプションを設定します。
小さな連続する (back-to-back) 書き込みの性能を向上させますが、
ネットワークトラフィックは増えてしまいます。
.It Fl L
すべての成功したアクセスを
.Xr syslogd 8
を経由して
.Li auth.info
メッセージとして、ログします。
.It Fl a
このフラグは無視されます。
互換性のためにあります。
.It Fl l
ユーザがスーパユーザでない限り、ユーザの
.Pa .rhosts
ファイルを認証に使用しません。
.It Fl n
トランスポートレベルの keepalive メッセージを無効にします。
これにより、クライアントがクラッシュしたり到達不能になった場合に、
セッションがタイムアウトするのを防ぎます。
.El
.Sh 診断
以下に示す例のうち最後のものを除き、
すべての診断メッセージを最初のソケットを用いて返した後、
すべての接続をクローズします。
エラーは、先行する 1 バイトとして値 1 が返されるこ
とでわかります (ログインシェル実行の前のすべてのステップが正常に完了した場合、
上記のステップ 10 の処理で 0 を返します)。
.Bl -tag -width indent
.It Sy Locuser too long.
クライアントマシン上のユーザ名が、16 文字を超えています。
.It Sy Ruser too long.
リモートマシン上のユーザ名が、16 文字を超えています。
.It Sy Command too long.
渡されたコマンドラインの長さが、引数リストの大きさを超えています
(システムに依存します)。
.It Sy Login incorrect.
当該ユーザに関するエントリが、パスワードファイルに登録されていないか、
上述の認証手続きに失敗しました。
.It Sy Remote directory.
ホームディレクトリへの
.Xr chdir 2
関数が失敗しました。
.It Sy Logins not available right now.
ローカルユーザのログインクラスに対する
.Pa login.conf
において、許された時間以外で
.Xr rsh 1
が試されました。
.It Sy Can't make pipe.
.Em 標準エラー出力
に必要なパイプを作成できませんでした。
.It Sy Can't fork; try again.
サーバによる
.Xr fork 2
が失敗しました。
.It Sy <shellname>: ...
ユーザのログインシェルを起動できませんでした。本メッセージの出力は
.Em 標準エラー出力
に関連づけられたコネクションを介して返されますので、
フラグバイトは先行しません。
.El
.Sh 関連項目
.Xr rlogin 1 ,
.Xr rsh 1 ,
.Xr gethostbyaddr 3 ,
.Xr rcmd 3 ,
.Xr ruserok 3 ,
.Xr auth.conf 5 ,
.Xr hosts 5 ,
.Xr hosts.equiv 5 ,
.Xr login.conf 5 ,
.Xr nologin 5 ,
.Xr services 5 ,
.Xr named 8 ,
.Xr rlogind 8 ,
.Xr syslogd 8
.Sh 関連ファイル
.Bl -tag -width /var/run/nologin -compact
.It Pa /etc/hosts
.It Pa /etc/hosts.equiv
.It Pa /etc/login.conf
.It Ev $HOME Ns Pa /.rhosts
.It Pa /var/run/nologin
.El
.Sh バグ
ここで用いられているユーザ認証手順は、各クライアントマシンおよび接続媒体が
信頼できるものと仮定しています。
これは安全ではないですが、
.Dq オープン
な環境下では便利です。
.Pp
全てのデータについて暗号化を行なう機能が実装されるべきです。
.Pp
TELNET のような、もっと拡張性のあるプロトコルが用いられるべきです。
.Sh 歴史
IPv6 サポートは、WIDE/KAME プロジェクトが追加しました。