メールのあれこれ(postfix,mailらへん)

前回、ログの監視ツールを扱った
それに伴い、メールで前日のログを自動送信できたらいいね
となったので、今回はメールの設定をします 

postfixについては他のサイトを参考にしてください 

postfixの導入 

今回もインストールから  sudo apt-get install postfix  途中でメッセージが出てくるけれど、とりあえずno configurationにしといた 

postfixの設定 

postfixはなにやら設定のサンプルがあるみたいなので、それをありがたく使用させてもらうことにした  そのファイルをコピーのち、修正 

sudo cp /usr/lib/postfix/main.cf /etc/postfix/
sudo vi /etc/postfix/main.cf

書き換えたのは以下の通り

75行あたり
myhostname = ○○○.mail.com  <-○○○は自分のホスト名をぶち込んだ 正解は知らん
mydomain = mail.com

102行あたり
myorigin = /etc/mailname

120行あたり
inet_interfaces = loopback-only

170行あたり
mydestination = $myhostname,localhost

250行あたり
mynetworks_style = host

270行あたり
mynetworks = 127.0.0.0/8

630行あたり
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /etc/postfix
readme_directory = /usr/share/doc/postfix

あと、デフォルトだとmailコマンドがないのでインストール  sudo apt-get install mailutils
newaliasesでエイリアスDBを作成する sudo newaliases  その後にpostfixを起動  sudo service postfix start

テストでメールをrootに送信してみる
Cc: Subject:test hi root Ctrl+Dで送信 

設定が間違ってなければきっと送信できるはず 

suでrootに変更  mailコマンドで確認するとさっき送ったメールがあるはず 

さて、ここまででメールを送ることができるようになったので次は転送設定をしていく 

今回はGoogleのメールを使用する  先ほどの設定ファイルの最後にこれを付け足す 

relayhost = [smtp.gmail.com]:587
sender_canonical_map = regexp:/etc/postfix/canonical <-これは別になくてもよさそう
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/relay_password
smtp_sasl_mechanism_filter = cram-md5,login,plain
smtp_tls_pl\olocy_maps = hash:/etc/postfix/tls_policy
smtp_use_tls = yes
smtp_sasl_security_options = noanonymous

rootへの転送の設定はroot直下にいれておくことにした  他にいい方法があれば教えていただきたい  sudo vi /root/.forward
中身は以下の通り  \root,○○○   ○○○<-転送先
これで転送されるはず
一応、パーミッションは600にしておく

gmailへの転送の設定  まず、googleアカウント情報を入れるファイルを作成  sudo vi /etc/postfix/relay_password
中身は  smtp.gmail.com googleアカウント@gmail.com:パスワード  root以外のユーザが読めないようにする  sudo chmod 400 /etc/postfix/relay_password
作成したファイルをハッシュ化する  sudo postmap hash:/etc/postfix/relay_password 

もう一つtlsの設定ファイルを作成  sudo vi /etc/postfix/tls_policy 内容  [smtp.gmail.com]:587 encrypt
作成したファイルをハッシュ化  sudo postmap hash:etc/postfix/tls_policy

これで設定は終わり あとはメール送ってみて