Dell Optiplex GXa Solaris 8  x86  6/00

こちらSolaris 9編に引っ越します。今後このページの更新はありません。


POP Before SMTP with sendmail-8.12.10 + smtpfeed

戻る

1. BerkeleyDB.4.1.25のインストール
2. drac-1.12のインストール
3. qpopper4.0.3のインストール
4. smtpfeed-1.18のインストール
5. sendmail-8.12.10のインストール
6. sendmail-8.12.10の設定
6-2 (バーチャルドメインの設定)

sendmail-8.12.10


ダウンロード: 作業ディレクトリを作成 $ mkdir /opt/src/sendmail-8.12.10 作業ディレクトリに移動 $ cd /opt/src/sendmail-8.12.10 sendmailアーカイブをダウンロード $ wget ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.12.10.tar.gz sendmailアーカイブを解凍展開 $ tar xozf sendmail.8.12.10.tar.gz インストール: sendmailディレクトリのdevtools/OSに移動 $ cd /opt/src/sendmail-8.12.10/sendmail-8.12.10/devtools/OS SunOS.5.8.m4 を ../Site/SunOS.5.8.m4 としてコピーする。 $ cp SunOS.5.8 ../Site/SunOS.5.8.m4 コピーしたファイルSunOS.5.8.m4 をviで開く。 $ vi ../Site/SunOS.5.8.m4 以下のように修正して保存する。 ##################################################### # $Id: SunOS.5.8,v 8.14 2002/03/21 23:59:26 gshapiro Exp $ dnl DO NOT EDIT THIS FILE. dnl Place personal settings in devtools/Site/site.config.m4 define(`confCC', `gcc') define(`confLDOPTS_SO', `-G') define(`confBEFORE', `sysexits.h') define(`confMAPDEF', `-DNEWDB -DNIS -DNISPLUS -DMAP_REGEX') define(`confENVDEF', `-DSOLARIS=20800 -DNETINET6') define(`confSM_OS_HEADER', `sm_os_sunos') define(`confLIBS', `-lsocket -lnsl') define(`confMTCCOPTS', `-D_REENTRANT') define(`confMTLDOPTS', `-lpthread') define(`confMBINDIR', `/usr/lib') define(`confEBINDIR', `/usr/lib') define(`confSBINGRP', `sys') define(`confINSTALL', `${BUILDBIN}/install.sh') define(`confDEPEND_TYPE', `CC-M') define(`confLIBDIRS', `-L/usr/local/BerkeleyDB.4.1/lib') APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.1/include') PUSHDIVERT(3) sysexits.h: if [ -r /usr/include/sysexits.h ]; \ then \ ln -s /usr/include/sysexits.h; \ fi POPDIVERT ##################################################### セキュリティを高めるため、このサーバーを経由して配信されたメール のヘッダ部分に表示されるバージョン番号(8.12.10/8.12.10)を変える。 もしも自分が使っているバージョンにセキュリティホールが見つかってし まった場合、クラッカーはその情報を元に攻撃を仕掛けてくる可能性があ るので、ソースを少々書き換えて、表示させるバージョンを架空のものに してしまう。 (後のsendmail.cfのDZの書き換えも忘れずに) ディレクトリを移動する。 $ cd /opt/src/sendmail-8.12.10/sendmail-8.12.10/sendmail version.cをviで開く。 $ vi version.c 最下行(18行目)を以下のように書き換えて保存する。 (" "の中は適当に) /* ##### 変更前 ##### */ char Version[] = "8.12.10"; /* ##### 変更後例 ##### */ char Version[] = "2008"; ディレクトリを移動する。 $ cd ../ コンパイル $ /bin/sh ./Build -c -f /opt/src/sendmail-8.12.10/sendmail-8.12.10/devtools/Site/SunOS.5.8.m4 SuperUserになって、マニュアルがインストールされるディレクトリを作っておく。 $ su Password: # mkdir /usr/share/man/cat1 # mkdir /usr/share/man/cat5 # mkdir /usr/share/man/cat8 新しいグループsmmspを作成する。 # groupadd smmsp 新しいユーザーsmmspを作成する。 # useradd -g smmsp -s /bin/false smmsp 新しいディレクトリclientmqueueを作成する。 # mkdir /var/spool/clientmqueue 各バイナリとディレクトリのパーミッションを変更しておく。 # chown root:smmsp /usr/lib/sendmail # chown smmsp:smmsp /var/spool/clientmqueue # chmod 770 /var/spool/clientmqueue インストールする。 # /bin/sh ./Build install # exit $ dracへの対応。 ディレクトリを移動する。 $ cd /opt/src/sendmail-8.12.10/sendmail-8.12.10/cf/feature/ 新規ファイル drac.m4を作成する。 $ vi drac.m4 内容は以下のように記述して保存する。(tabとスペースの違いに注意!) ##################################################### divert(-1) # # drac for sendmail.mc # divert(0) VERSIONID(`drac.m4, for sendmail-8.12.*') divert(-1) define(`_CHECK_BY_DRAC_',`dnl # check by drac R`$'* $: $&{client_addr} R$+ $: $(drac `$'1 $: ? $) R? `$'@ ? R$+ `$'@ `$'#OK') LOCAL_CONFIG Kdrac ifdef(`confDRAC_DBTYPE',confDRAC_DBTYPE,`btree') -a@rej@ -o ifdef(`confDRAC_DB', confDRAC_DB,`/etc/mail/dracd') ##################################################### ディレクトリを移動する。 $ cd /opt/src/sendmail-8.12.10/sendmail-8.12.10/cf/m4/ proto.m4 をviで開く。 $ vi proto.m4 SLocal_check_rcptという行を検索して、以下のようにすぐ下に1行追加記述して保存する。 (8.12.10の場合は1882行目、8.12.9の場合は1880行目、8.12.7の場合は1876行目、と8.12.5と8.12.4の場合は1871行目。 8.12.3の場合は1865行目、8.12.2は1856行目、8.12.1の場合は1844行目、だった) SLocal_check_rcpt ifdef(`_CHECK_BY_DRAC_', _CHECK_BY_DRAC_) <-新規追加記述行 Scheck`'_U_`'rcpt