smrsh(8) FreeBSD 一般コマンドマニュアル

smrsh

前のページ 上に戻る 次のページ

smrsh



書式

       smrsh -c command


解説

       smrsh   は、  sendmail(8) の設定ファイルで、 sh の代わりに
       ``prog'' メーラとして使用する事を目的としています。  smrsh
       は、システムの全体的なセキュリティを改善するために、 send-
       mail の ``|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/vaca-
       tion'',    ``vacation''         な    ど    は    全    て
       ``/usr/libexec/sm.bin/vacation'' と解釈されます。

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


コンパイル

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


関連ファイル

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


関連項目

       sendmail(8)

ABELNET VPSサービス