xenial (8) smrsh.8.gz

Provided by: manpages-ja_0.5.0.0.20140515+dfsg-2_all bug

名称

       smrsh - sendmail用に制限されたシェル

書式

       smrsh -c command

解説

       smrsh  は、  sendmail(8) の設定ファイルで、 sh の代わりに ``prog'' メーラとして使用する事を目的としていま
       す。 smrsh は、システムの全体的なセキュリティを改善するために、 sendmail の ``|program'' 書式により起動す
       る事ができるコマンドを制限します。 つまり、もし ``悪者'' が alias ファイルや forward ファイルを経由せずに
       sendmail からプログラムを実行する事ができたとしても、 smrsh  を使えば、彼(あるいは彼女)が実行できるプログ
       ラムを制限する事ができるのです。

       簡単に言うと、  smrsh は、実行可能なプログラムを単一のディレクトリに存在するものと、 シェル組み込みコマン
       ドの     ``exec'',     ``exit'',     ``echo''     だけに限定します。     このディレクトリは、デフォルトで
       は、/usr/libexec/sm.bin です。 これにより、システム管理者は利用可能なコマンドを選択する 事ができます。 更
       に、 smrsh は、``end run'' 攻撃を防ぐために、コマンド行に ``', `<', `>', `;', `$', `(', `)', `\r' (復改文
       字), `\n' (改行文字) の文字を含むコマンドは実行しません。 ``||'' と ``&&'' は、許可されており、次のような
       コマンドを使用可能です: ``"|exec /usr/local/bin/procmail -f- /etc/procmailrcs/user || exit 75"''

       プログラム名の前にあるパス名は全て取り除かれるため、                               ``/usr/bin/vacation'',
       ``/home/server/mydir/bin/vacation'',  ``vacation'' などは全て ``/usr/libexec/sm.bin/vacation'' と解釈され
       ます。

       システム管理者は、 sm.bin ディレクトリに置くプログラムを選ぶ際には慎重な 判断をすべきです。適切な物として
       は、 vacation(1) や procmail(1) などがあげられるでしょう。いかなる要望があっても、シェルや、 perl(1) など
       のシェルに似たプログラムを sm.bin に入れてはいけません。 これは、単に任意のプログラムを実行する事を制限す
       るだけで、 ``#!''書式を用いた、シェルスクリプトや perl スクリプトを sm.bin ディレクトリに入れる事を制限す
       る訳ではありません。

コンパイル

       コンパイルはほとんどのシステムでつまらないものです。         デフォルトのサーチパス         (デフォルトで
       は``/bin:/usr/bin'') を変更するためには、-DPATH=\"path\" を 使用する必要があり、また、 デフォルトのプログ
       ラムディレクトリ (デフォルトでは ``/usr/libexec/sm.bin'') を変更するためには、-DCMDBIN=\"dir\" を  使用す
       る必要があります。

関連ファイル

       /usr/libexec/sm.bin - 制限されたプログラム用のディレクトリ

関連項目

       sendmail(8)

                                          1Date: 2000/12/15 19:50:46 1                                  SMRSH(8)