This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
vps:vps4th2nd_07 [2019/06/16 20:15] hoge@hoge created |
vps:vps4th2nd_07 [2019/06/29 21:48] (current) hoge@hoge [/etc/mail/mailer.conf 設定] |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== 構成 ===== | ===== 構成 ===== | ||
- | - fw, web, desktopの各root宛メールはjailerのroot宛とする。 | + | - jailer, prisnor それぞれの root 宛メールを gmail アカウント宛とする。 |
- | - jailerのroot宛メールはgmailアカウント宛とする。 | + | |
- | ===== jailer設定 ===== | + | |
- | ==== sendmail + tls + sasl導入 ==== | + | |
- | sendmail+tls+sasl2 をインストールする。 | + | |
+ | |||
+ | ===== MTA 設定 ===== | ||
+ | ==== インストール ==== | ||
+ | 以下をインストールする。 | ||
+ | * ssmtp | ||
==== /etc/mail/mailer.conf 設定 ==== | ==== /etc/mail/mailer.conf 設定 ==== | ||
- | 導入したsendmailを指定する。 | + | 導入した ssmtp を指定する。 |
+ | <code> | ||
#sendmail /usr/libexec/sendmail/sendmail | #sendmail /usr/libexec/sendmail/sendmail | ||
- | #send-mail /usr/libexec/sendmail/sendmail | ||
#mailq /usr/libexec/sendmail/sendmail | #mailq /usr/libexec/sendmail/sendmail | ||
#newaliases /usr/libexec/sendmail/sendmail | #newaliases /usr/libexec/sendmail/sendmail | ||
#hoststat /usr/libexec/sendmail/sendmail | #hoststat /usr/libexec/sendmail/sendmail | ||
#purgestat /usr/libexec/sendmail/sendmail | #purgestat /usr/libexec/sendmail/sendmail | ||
- | sendmail /usr/local/sbin/sendmail | + | sendmail /usr/local/sbin/ssmtp |
- | send-mail /usr/local/sbin/sendmail | + | mailq /usr/local/sbin/ssmtp |
- | mailq /usr/local/sbin/sendmail | + | newaliases /usr/local/sbin/ssmtp |
- | newaliases /usr/local/sbin/sendmail | + | hoststat /usr/bin/true |
- | hoststat /usr/local/sbin/sendmail | + | purgestat /usr/bin/true |
- | purgestat /usr/local/sbin/sendmail | + | </code> |
- | + | ||
- | ==== /etc/rc.conf 設定==== | + | ==== /usr/local/etc/ssmtp/revaliases 設定 ==== |
- | fw, web, desktopからメールを受け取るため、rc.confにdaemon起動の設定を追加する。 | + | revaliases.sample を revaliases にコピーし編集する。 |
<code> | <code> | ||
- | sendmail_enable="YES" | + | root:<転送先メールアドレス>:smtp.gmail.com:587 |
- | sendmail_procname="/usr/local/sbin/sendmail" | + | |
- | saslauthd_enable="YES" | + | |
</code> | </code> | ||
- | * sendmail_procnameは効いていない様子 | ||
- | ==== /etc/hosts 設定 ==== | + | ==== /usr/local/etc/ssmtp/ssmtp.conf 設定 ==== |
- | メールのリレー元であるfw, web, desktopを/etc/hostsに登録する。 | + | ssmtp.conf.sample を ssmtp.conf にコピーし編集する。 |
- | + | ||
- | ==== /etc/mail/jailer.mc 設定 ===== | + | |
- | [[http://port23.wordpress.com/2008/02/25/freebsd-sendmail-squirrelmail/|HowTo: Configure Sendmail with Gmail SMTP Server in FreeBSD]]を基にjailer.mcを編集する。jailer.mcはfreebsd.mcのコピーとする。\\ 82行目 dnl Enable for both IPv4 and IPv6 (optional) の上に追記 | + | |
<code> | <code> | ||
- | define(`confAUTH_OPTIONS',`A')dnl | + | root=<転送先メールアドレス> |
- | define(`confAUTH_MECHANISMS',`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl | + | mailhub=smtp.gmail.com:587 |
- | TRUST_AUTH_MECH(`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl | + | rewriteDomain=<自ドメイン> |
- | FEATURE(`authinfo',`Hash -o /etc/mail/authinfo')dnl | + | hostname=<gmail から見た FQDN> |
- | define(`SMART_HOST',`smtp.gmail.com')dnl | + | FromLineOverride=YES |
- | define(`RELAY_MAILER_ARGS',`TCP $h 587') | + | UseTLS=YES |
- | define(`ESMTP_MAILER_ARGS',`TCP $h 587') | + | UseSTARTTLS=YES |
+ | AuthUser=<転送先メールアドレス> | ||
+ | AuthPass=<パスワード> | ||
+ | AuthMethod=LOGIN | ||
</code> | </code> | ||
- | ==== /etc/mail/sendmail.cf 生成 ==== | ||
- | 編集したjailer.mcからsendmail.cfを生成する。 | ||
- | # cd /etc/mail | ||
- | # m4 /usr/local/share/sendmail/cf/m4/cf.m4 jailer.mc > sendmail.cf | ||
- | # | ||
- | ==== /etc/mail/authinfo.db 生成 ==== | + | ==== /etc/rc.conf 設定==== |
- | * authinfo.dbの基となるauthinfoを作成する。<code> | + | 標準の sendmail を完全に無効化する。 |
- | AuthInfo:smtp.gmail.com "U:smmsp" "I:<gmailユーザ名>" "P:<gmailパスワード>" "M:PLAIN" | + | <code> |
- | AuthInfo:smtp.gmail.com:587 "U:smmsp" "I:<gmailユーザ名>" "P:<gmailパスワード>" "M:PLAIN" | + | sendmail_enable="NO" |
- | </code> | + | sendmail_submit_enable="NO" |
- | * authinfoからauthinfo.dbを生成する。<code> | + | sendmail_outbound_enable="NO" |
- | # makemap -r hash authinfo.db < authinfo | + | sendmail_msp_queue_enable="NO" |
- | </code> | + | |
- | + | ||
- | ==== /etc/mail/local-host-names 作成 ==== | + | |
- | local-host-namesを作成する。(必須であるかは不明)<code> | + | |
- | #touch local-host-names | + | |
</code> | </code> | ||
+ | 編集後、一度サーバの再起動を行う。 | ||
- | ==== /etc/mail/aliases.db 設定 ==== | ||
- | aliasesを編集して、root宛メールの送付先をgmailアカウントとする。 | ||
- | # root: me@my.domain | ||
- | root: <gmailアカウント> | ||
- | newaliaesを実行し、aliases.dbを更新する。 | ||
- | # newaliases | ||
- | /etc/mail/aliases: 28 aliases, longest 22 bytes, 301 bytes total | ||
- | # | ||
==== 送信テスト ==== | ==== 送信テスト ==== | ||
- | - sendmailを停止、起動する。<code> | ||
- | # service sendamil stop | ||
- | # service sendmail start | ||
- | </code> | ||
- mailコマンドでroot宛メールを送信する。<code> | - mailコマンドでroot宛メールを送信する。<code> | ||
# mail root | # mail root | ||
Line 91: | Line 71: | ||
</code> | </code> | ||
- gmailでメールが受信できていれば完了。/var/log/maillogにてstat=Sentとなっている事も併せて確認する。 | - gmailでメールが受信できていれば完了。/var/log/maillogにてstat=Sentとなっている事も併せて確認する。 | ||
- | |||
- | ===== prisoner 設定 ===== | ||
- | prisoner fw, web, desktopそれぞれで設定を行う。 | ||
- | ==== /etc/hosts 設定 ==== | ||
- | メールのリレー先であるjailerを/etc/hostsに登録する。 | ||
- | |||
- | ==== /etc/mail/aliases.db 設定 ==== | ||
- | aliasesを編集して、root宛メールの送付先をroot@jailerとする。 | ||
- | # root: me@my.domain | ||
- | root: <jailerのroot宛> | ||
- | |||
- | newaliaesを実行し、aliases.dbを更新する。 | ||
- | # newaliases | ||
- | /etc/mail/aliases: 28 aliases, longest 22 bytes, 301 bytes total | ||
- | # | ||
- | |||
- | ==== 送信テスト ==== | ||
- | - sendmailを停止・起動する。<code> | ||
- | # service sendamil stop | ||
- | sendmail_submit not running? (check /var/run/sendmail.pid). | ||
- | Stopping sendmail_clientmqueue. | ||
- | # service sendmail sart | ||
- | Cannot 'start' sendamil. Set sendmail_enable to YES in /etc/rc.conf or use 'onestart' instead of 'start' | ||
- | </code> | ||
- | - mailコマンドでroot宛メールを送信する。<code> | ||
- | # mail root | ||
- | Subject: TEST | ||
- | TEST from fw | ||
- | . | ||
- | EOT | ||
- | </code> | ||
- | - gmailでメールが受信できていれば完了。 | ||