sendmail-8.12.5-7の設定
作成 : 2002/10/23
sendmail-8.12.5-7とsendmail-cf-8.12.5-7のインストール
Redhat8.0へアップグレードしたとき、sendmail-8.12.5-7とsendmail-cf-8.12.5-7にアップデートされる。
| 旧バージョン | 新バージョン |
|---|---|
| /etc/aliases | /etc/aliases.rpmnew |
| /etc/mail/sendmail.mc | /etc/mail/sendmail.mc.rpmnew |
| /etc/mail/sendmail.cf.rpmsave | /etc/mail/sendmail.cf |
aliasesとsendmail.mcは、旧バージョンのファイルが有効。 sendmail.cfは、sendmail起動時にsendmail.mcファイルがmakeされるので、設定は旧バージョンと同じ内容で起動する。
/etc/mail/sendmail.mc.rpmnewの編集
デフォルト設定は、旧バージョンも新バージョンも同じ内容(たぶん)なので、sendmail.mcをそのまま使用してもいいが、新バージョンsendmail.mc.rpmnewを使用する。
divert(-1) dnl This is the sendmail macro config file. If you make changes to this file, dnl you need the sendmail-cf rpm installed and then have to generate a dnl new /etc/mail/sendmail.cf by running the following command: dnl dnl m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf dnl include(`/usr/share/sendmail-cf/m4/cf.m4') VERSIONID(`linux setup for Red Hat Linux')dnl OSTYPE(`linux') dnl Uncomment and edit the following line if your mail needs to be sent out dnl through an external mail server: dnl define(`SMART_HOST',`smtp.your.provider') define(`confDEF_USER_ID',``8:12'')dnl undefine(`UUCP_RELAY')dnl undefine(`BITNET_RELAY')dnl dnl define(`confAUTO_REBUILD') define(`confTO_CONNECT', `1m')dnl define(`confTRY_NULL_MX_LIST',true)dnl define(`confDONT_PROBE_INTERFACES',true)dnl define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl define(`ALIAS_FILE', `/etc/aliases')dnl dnl define(`STATUS_FILE', `/etc/mail/statistics')dnl define(`UUCP_MAILER_MAX', `2000000')dnl define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl define(`confAUTH_OPTIONS', `A')dnl dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl dnl define(`confCACERT_PATH',`/usr/share/ssl/certs') dnl define(`confCACERT',`/usr/share/ssl/certs/ca-bundle.crt') dnl define(`confSERVER_CERT',`/usr/share/ssl/certs/sendmail.pem') dnl define(`confSERVER_KEY',`/usr/share/ssl/certs/sendmail.pem') dnl define(`confTO_QUEUEWARN', `4h')dnl dnl define(`confTO_QUEUERETURN', `5d')dnl dnl define(`confQUEUE_LA', `12')dnl dnl define(`confREFUSE_LA', `18')dnl define(`confTO_IDENT', `0')dnl dnl FEATURE(delay_checks)dnl FEATURE(`no_default_msa',`dnl')dnl FEATURE(`smrsh',`/usr/sbin/smrsh')dnl FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl FEATURE(redirect)dnl FEATURE(always_add_domain)dnl FEATURE(use_cw_file)dnl FEATURE(use_ct_file)dnl dnl The '-t' option will retry delivery if e.g. the user runs over his quota. FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db')dnl FEATURE(`blacklist_recipients')dnl FEATURE(dnsbl,`relays.ordb.org')dnl MASQUERADE_AS(nina.jp)dnl FEATURE(`masquerade_envelope')dnl EXPOSED_USER(`root')dnl dnl This changes sendmail to only listen on the loopback device 127.0.0.1 dnl and not on any other network devices. Comment this out if you want dnl to accept email over the network. dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA') dnl NOTE: binding both IPv4 and IPv6 daemon to the same port requires dnl a kernel patch dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6') dnl We strongly recommend to comment this one out if you want to protect dnl yourself from spam. However, the laptop and users on computers that do dnl not have 24x7 DNS do need this. FEATURE(`accept_unresolvable_domains')dnl dnl FEATURE(`relay_based_on_MX')dnl MAILER(smtp)dnl MAILER(procmail)dnl
FEATURE(dnsbl,`relays.ordb.org')dnl
不正中継を許容する設定になっているサーバのデータベースを参照して、メールの受信を拒否する。 SPAM対策。 ハートコンピュータ株式会社のspamと不正なメール中継についての解説を参考にした。
MASQUERADE_AS(nina.jp)dnl
FEATURE(`masquerade_envelope')dnl
「xxxx@linux.nina.jp」として送られるところを、「xxxx@nina.jp」に変換(マスカレード)して送る。 2行目は、エンベロープもマスカレードする(通常は、ヘッダのみ)。
dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
127.0.0.1(ローカル)のみListenする。 dnl から行末までは無視されるので、コメントアウトと同じ。 この行をコメントアウトしないと、他のホストとのSMTP通信ができなくなる。
/etc/sendmail.cfの作成
sendmail.cfを作成するには、次のようなコマンドを実行する。
# mv sendmail.mc /etc/sendmail.mc.bak # mv sendmail.mc.rpmnew /etc/sendmail.mc # m4 sendmail.mc > /etc/sendmail.cf
/etc/mail/local-host-namesの編集
local-host-names には、そのサーバがメールを受け取るドメインを記述する。
linux.polaris.as.wakwak.ne.jp polaris.as.wakwak.ne.jp
/etc/mail/relay-domainsの編集
relay-domains には、そのサーバが無条件でリレーを許可するドメインを記述する。 MUA(Mail User Agent:OutlookやEudoraなどのメールソフト)からのメールをリレーするためには、この記述が必要になる。
nina.jp
IPアドレスから逆引きができないときは、IPアドレスで記述することも可能。 192.168.1.0/255.255.255.0 のネットワークに存在するホストに対するリレーを許可するには、次のように記述する。
192.168.1
逆引きができないが、relay-domainsにIPアドレスを記述したくない場合は、/etc/hostsファイルにホスト名とIPアドレスの対応を記述する。
192.168.1.X hostname.nina.jp
sendmailの再起動
sendmailを再起動する。
# /etc/init.d/sendmail restart
不正中継のチェック
sendmailの設定が不正中継を許容しないようになっているか、rbl.jp の第三者中継チェックで確認する。