次に、Inflexの設定を行います。inflex.cfではなく、InFlexスクリプトそのものに修正を加えます。
■ ウイルスフィルターにSweepを指定する
sweepのパスが自分の環境にあっているか確認します。赤字の部分はsweepの起動オプションとなりますが変更の必要はありません。
148行目付近
sophos=/usr/local/bin/sweep
sophosflags=" -archive -all -rec -sc -dn"
■ 添付禁止ファイルの拡張子を定義する
249行目付近
${find} ${unpackdir} | grep "unpacked/" > $filelist
の下あたりから以下の内容を追記します。
${find} ${unpackdir} $find_flags '*.386*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.3gr*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.acm*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.add*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.adt*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ap?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.asp*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.asp*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ax?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.bat*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ba?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.bin*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.chm*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.cmd*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.com*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.cpl*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.dbx*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.dll*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.dmd*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.doc*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.dot*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.drv*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.dl?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.eml*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.exe*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ex?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.flt*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.fon*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.fot*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.hlp*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ht?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.hta*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.htm*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.html*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.i13*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ifs*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ini*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.inc*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.js*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.jse*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.lnk*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.mod*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.mpd*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.mpp*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.mpt*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.mso*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.msi*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.nws*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ocx*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ov?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.df*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.px*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.pdr*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.pif*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.pl*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.pot*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.pps*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.ppt*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.prc*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.rtf*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.scr*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.sh*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.shb*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.shs*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.src*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.swf*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.sys*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.vb?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.vxd*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.vbs*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.wbk*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.wmv*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.xl?*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.xml*' >> ${namebadfileslog}
${find} ${unpackdir} $find_flags '*.rar*' >> ${namebadfileslog
これらの拡張子は ウイルススキャンプログラムに特に危険と定義付けされている拡張子を参考にしました。赤で示した拡張子は特に危険度が高いので定義した方がいいでしょう。これらのリストは自動実行が可能なタイプや、これまでにウイルスが混入されたことがある、または今後可能性の高い拡張子で、絶対ではありません。
Flash、Shockwaveを媒介するウイルスの発見
http://www.cseltd.co.jp/security/sav/virusinfo/analyses/swflfm926.htm
また、WinRARにより圧縮された.rarウイルスファイルを -archiveオプションでスキャンした結果、(format not supported) と表示されウイルスを検出することが出来ませんでした。※1
メールに添付した結果、配送されてしまったので、取り合えず.rarは禁止することにしまし た。これがRAR圧縮プログラムによって違いがあるのかどうかは分かりません。
※1
バグだったようです。アナウンスを確認しました。現在は修正されています。
inflex.cfではなく、直接実行形式のinflexを編集しているのでsendmailの再起動は必要ありませんが、念のためsendmailをkillし、修正した起動スクリプトからSendmailを起動させます。
Sendmail-3.12の場合
このように表示されていれば、取り合えず Sendmail は正常に起動しています。 セットアップはここで終了です。後は、設定どおりに動作しているかテストを行います。