ユーザー登録 & スパム対策 on Leopard

職場サーバを10時間ほどかけて仕上げる破目になった。
年度末にマシンは購入済み、旧サーバの利用のピークをさけ、ゆっくりと移行して行くつもりだったのだが、様々な圧力に負けましたっ
これまでの旧サーバは、Mac OS X Server 10.3、機能を考慮するとサーバでなくともなんとかなりそうだったので、マシンに付属の「普通の」Leopardをサーバに仕立てることにした。
自宅サーバはLeopard Serverで、特にスパム対策に関しては、適宜参照すればなんとかなる、と、タカをくくっていた、のだけれども、やはり、微妙に異なっていた。

そもそも、利用者登録して、UIDとGIDを自由に設定できない。
だから、ここで書いたようなグループの設定もできない。
困った。
が、参考になる記事を見つけた。
自宅サーバを設定していて、Tigerまでのように、rootを有効にしたり、グループにメンバーを追加したり、NetInfoマネージャーを利用しようと思ったのだが、そもそもそんなアプリケーションが、ないっ
nidumpやniloadもないっ
代わりに、dsclを使うのね。へぇ〜い。

ちょっと、覗いてみる。

dscl . -read /Groups/admin
dscl . -read /Groups/clamav
dscl . -read /Groups/amavisd

admin、を参考に、メンバーを追加。

dscl . -append /Groups/clamav GroupMembership _clamav _amavisd
dscl . -append /Groups/amavisd GroupMembership _amavisd _clamav

そして、起動用のplistを編集、追加。
amavisd用には既にplistが用意されているが、Disabled、状態。

cd /System/Library/LaunchDaemons/
vi org.amavis.amavisd.plist

次の2行を抹消※。
<key>Disabled</key>
<true/>

念のため、<key>Program</key>の部分も変えてしまった。
<string>/usr/local/bin/amavisd</string>

ただ、どうも、org.clamav.clamd.plist、では、<key>UserName</key>を
<string>_amavisd</string>

と、書かないとダメだった。Tigerでやった通りならば、
<string>_clamav</string>
と書けばよい筈、だったのだが…グループのメンバー登録をしくじったか…※※

いいのだ、動いたから。

========== ========== ========== ========== ==========
org.amavis.amavisd.plist
========== ========== ========== ========== ==========
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple Computer//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>Label</key>
<string>org.amavis.amavisd</string>
<key>OnDemand</key>
<false/>
<key>Program</key>
<string>/usr/local/bin/amavisd</string>
<key>ProgramArguments</key>
<array>
<string>amavisd</string>
<string>foreground</string>
</array>
<key>ServiceIPC</key>
<false/>
<key>UserName</key>
<string>_amavisd</string>
</dict>
</plist>

========== ========== ========== ========== ==========
org.clamav.freshclam.plist
========== ========== ========== ========== ==========
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>Iterations</key>
<integer>1</integer>
<key>Label</key>
<string>org.clamav.freshclam</string>
<key>OnDemand</key>
<false/>
<key>Program</key>
<string>/usr/local/clamXav/bin/freshclam</string>
<key>ProgramArguments</key>
<array>
<string>freshclam</string>
<string>-d</string>
<string>-pfreshclam.pid</string>
<string>-c 4</string>
</array>
<key>ServiceIPC</key>
<false/>
<key>UserName</key>
<string>_clamav</string>
</dict>
</plist>

========== ========== ========== ========== ==========
org.clamav.clamd.plist
========== ========== ========== ========== ==========
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>Label</key>
<string>org.clamav.clamd</string>
<key>OnDemand</key>
<false/>
<key>Program</key>
<string>/usr/local/clamXav/sbin/clamd</string>
<key>ProgramArguments</key>
<array>
<string>clamd</string>
</array>
<key>ServiceIPC</key>
<false/>
<key>UserName</key>
<string>_amavisd</string>
</dict>
</plist>


ここの情報によると、

launchctl load -w

という具合に、-w オプションを付けてloadすれば、disable部分が削除されるらしい。
なるほど。

※※気を取り直してやってみた。

cd /System/Library/LaunchDaemons/
vi org.clamav.clamd.plist

動いている。

========== ========== ========== ========== ==========
org.clamav.clamd.plist
========== ========== ========== ========== ==========
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>
<plist version=”1.0″>
<dict>
<key>Label</key>
<string>org.clamav.clamd</string>
<key>OnDemand</key>
<false/>
<key>Program</key>
<string>/usr/local/clamXav/sbin/clamd</string>
<key>ProgramArguments</key>
<array>
<string>clamd</string>
</array>
<key>ServiceIPC</key>
<false/>
<key>UserName</key>
<string>_clamav</string>
</dict>
</plist>

Author: Kumecchi

コメントを残す