戻る

3201:Options

概要

オプションは 以下のように 文字 o から 始めます設定ファイル(xxx.cf sendmail.cf 等において)の表現は

OQ/var/spool/mqueue/
O QueueDirectory=/var/spool/mqueue/ :必ず1個の 空白が 文字 O と オプション の間に必要

この場合は 表現が異なるが同じ事を 別の表現にて表しています。最初の方 は オプションの間に 空白はいれてはいけませんと云う事のようです

また オプションの値は 文字列 数 時間 真偽値 が 使用できるようです パス は 文字列と云う事です ;/var/spool/mqueue/ これは 文字列 と云う事;

必要なオプション

これが全てでは無いし これだけ有れば 十分 という理由では無いが まあこ れ位は というものを 抜粋すると

オプション 名        タイプ     くゎんたんな 説明
QueueDirectory (Q)   文字列    キューディレクトリの位置
Timeout (r)          文字列    タイムアウトの設定
DeliveryMode (d)     文字      配信モードの設定
TempFileMode (F)     8進数値   1時ファイルのパーミッション
DefaultUser (u)      文字列    デフォルトの配信エージェントの ID
LogLevel (L)         数値      ロギングレベルの設定(増大)
OldStyleHeaders(o)   真偽値    受信者リストの空白を許す
BlankSub(B)          文字      クォートのついていない空白の置換

sendmail.cf の オプションを 見てみる

なんか設定して行くようですが まだ 具体的にはわからないので 実際の sendmail.cfにどのようなものがあるか みてみましょう また お断りせねばいけ んのは これは多摩たまかろうじて 動作していると思っている ものです これが 正解であるということでは有りません くれぐれも 参考にと云う事です。

$ /usr/sbin/sendmail -d37.1 -C/etc/mail/sendmail.cf  -bt </dev/null
setoption SevenBitInput (7)=False
setoption AliasWait (a)=10 (unsafe)
setoption AliasFile (A)=/etc/mail/aliases (unsafe)
setoption MinFreeBlocks (b)=100
setoption BlankSub (B)=. (unsafe)
setoption HoldExpensive (c)=False (unsafe)
setoption DeliveryMode (d)=background
setoption TempFileMode (F)=0600 (unsafe)
setoption HelpFile (H)=/etc/mail/helpfile (unsafe)
setoption SendMimeErrors (j)=True
setoption ForwardPath (J)=$z/.forward.$w+$h:$z/.forward+$h:$z/.forward.$w:$z/.forward (unsafe)
setoption ConnectionCacheSize (k)=2 (unsafe)
setoption ConnectionCacheTimeout (K)=5m (unsafe)
setoption UseErrorsTo (l)=False (unsafe)
setoption LogLevel (L)=9
setoption CheckAliases (n)=False (unsafe)
setoption OldStyleHeaders (o)=True
setoption DaemonPortOptions (O)=Name=MTA (unsafe)
Daemon MTA flags: 
setoption PrivacyOptions (p)=goaway
setoption QueueDirectory (Q)=/var/spool/mqueue (unsafe)
setoption Timeout (r).queuereturn=5d (unsafe)
setoption Timeout (r).queuewarn=4h (unsafe)
setoption SuperSafe (s)=True
setoption StatusFile (S)=/etc/mail/statistics (unsafe)
setoption SmtpGreetingMessage (0x90)=$j Sendmail $v/$Z; $b (unsafe)
setoption UnixFromLine (0x91)=From $g $d (unsafe)
setoption OperatorChars (0x92)=.:%@!^/[]+ (unsafe)
setoption MaxHeadersLength (0xaa)=32768 (unsafe)
setoption HoldExpensive (c)=F
setoption DeliveryMode (d)=
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>

みてわかるように ”DefaultUser (u)”は 有りません 何故だかは にゃんた ろうには わかりません とまれ このようなものが有ると云う事です

unsafe

(unsafe) というのが 沢山有りますが これは なんでしょう?root さんの場 合は

# /usr/sbin/sendmail  -d37.1 -C/etc/mail/sendmail.cf  -bt </dev/null
setoption SevenBitInput (7)=False
setoption AliasWait (a)=10
setoption AliasFile (A)=/etc/mail/aliases
setoption MinFreeBlocks (b)=100
setoption BlankSub (B)=.
setoption HoldExpensive (c)=False
setoption DeliveryMode (d)=background
setoption TempFileMode (F)=0600
setoption HelpFile (H)=/etc/mail/helpfile
setoption SendMimeErrors (j)=True
setoption ForwardPath (J)=$z/.forward.$w+$h:$z/.forward+$h:$z/.forward.$w:$z/.forward
setoption ConnectionCacheSize (k)=2
setoption ConnectionCacheTimeout (K)=5m
setoption UseErrorsTo (l)=False
setoption LogLevel (L)=9
setoption CheckAliases (n)=False
setoption OldStyleHeaders (o)=True
setoption DaemonPortOptions (O)=Name=MTA
Daemon MTA flags: 
setoption PrivacyOptions (p)=goaway
setoption QueueDirectory (Q)=/var/spool/mqueue
setoption Timeout (r).queuereturn=5d
setoption Timeout (r).queuewarn=4h
setoption SuperSafe (s)=True
setoption StatusFile (S)=/etc/mail/statistics
setoption SmtpGreetingMessage (0x90)=$j Sendmail $v/$Z; $b
setoption UnixFromLine (0x91)=From $g $d
setoption OperatorChars (0x92)=.:%@!^/[]+
setoption MaxHeadersLength (0xaa)=32768
setoption HoldExpensive (c)=F
setoption DeliveryMode (d)=
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>

root の権限を保持したまま実行出来ないことを示しているということです、 なにか危険な事をしたときは 常にsendmail は root になることをやめて ユー ザーになるようです root しか使用できない オプションを指定する毎に (unsafe) を 表示する 従って上記のように root で 行えば (unsafe) と云う事 には ならない。

http://www.unix.org.ua/orelly/networking/sendmail/ch13_03.htm
Second, note that some of the lines end with (unsafe). This is sendmail telling you that it cannot run as root. Whenever you do something unsafe (such as using your own configuration file with the -C switch), sendmail stops being root and becomes you. It prints (unsafe) for each option you specify that only root should be able to use.

-C switch を 使用して 色々処理するのも 危険な 行為のようです

戻る

にゃんたろう 拝!
2006年10月 8日 (日) 21:21:18 JST 作成

Copyright © 2004.-2007. nyantarou All Rights Reserved.