2013年2月3日日曜日

CentOSでCUIのメール環境を構築する


CentOSでCUIのメール環境を構築する

ここでは、下記にミドルウエアの環境構築を行います。
1. Heirloom mailx
2. postfix

Heirloom mailx

1. 概要

Heirloom mailxとは、
/bin/mailの拡張版ともいえる、「Heirloom mailx」をインストールします。 「Heirloom mailx」は、IMAP、POP3、APOP、SSL/TLS、S/MIMEに対応したLinux版のCUIメーラです。

2. インストール

以下のコマンドでインストールを行います
$ cd /usr/local/src
$ wget http://sourceforge.net/projects/heirloom/files/latest/download
$ tar -jxf mailx-12.4.tar.bz2
$ cd mailx-12.4
# make
# make install UCBINSTALL=/usr/bin/install

3. 環境設定

利用するユーザ単位で、.mailrcを作成します ここでは、Gmailのメールサーバを利用することにします
$ vim ~/.mailrc
# .mailrc Gmail config
account gmail {
   set imap-cache=~/MailDir
   set imap-use-starttls
   set folder=imaps://Gmailのユーザ名@gmail.com@imap.gmail.com
   set password-Gmailのユーザ名@gmail.com@imap.gmail.com=Gmailのパスワード 
   set from=”お名前 <Gmailのユーザ名@gmail.com>”
   set record=+Sent
   set smtp-use-starttls
   set smtp=smtp://smtp.gmail.com:587
   set smtp-auth=login
   set smtp-auth-user=Gmailのユーザ名@gmail.com
   set smtp-auth-password=Gmailのパスワード
   set nss-config-dir=~/.mozilla/firefox/xxxxxxx.xxxx プロファイル情報
   shortcut allmail +[Gmail]/All\ Mail
   shortcut spam +[Gmail]/Spam
   shortcut trash +[Gmail]/Trash
}
標準では無いmailxを起動するように.bashrcの最終行に定義の追加 念のために、PAGERの定義も追加する。
# vi .bashrc

alias mailx=/usr/local/bin/mailx
export PAGER=/usr/bin/less

4. Gmailの参照

下記のコマンドでGmailを読みます。
# mailx -A gmail <---- gmailは、.mailrc で定義したアカウント
正しく設定されていれば、メールの一覧が表示されます。
mailxコマンドのオプション詳細

postfixの設定

1. Gmailに接続するには、認証用のモジュールをインストールする。

下記をインストール
# yum install cyrus-sasl
# yum install /usr/bin/c_rehash

2. Gmailの証明書を取得

# openssl s_client -connect smtp.gmail.com:465 -showcerts
0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=smtp.gmail.com
i:/C=US/O=Google Inc/CN=Google Internet Authority
ここから
-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----
ここまでを/etc/pki/tls/certs/google.pem として保存
1 s:/C=US/O=Google Inc/CN=Google Internet Authority
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
ここから
-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----
ここまでを/etc/pki/tls/certs/euqifax.pem として保存

3. postfixの認証データを作成

証明書をハッシュ化
# c_rehash /etc/pki/tls/certs
Doing /etc/pki/tls/certs
google.pem => xxxxxxxx.0
euqifax.pem => xxxxxxxx.0

4. gmailのパスワードファイル作成

# vi /etc/postfix/auth_passwd
[smtp.gmail.com]:587 xxxxx@gmail.com:password
# chown root. /etc/postfix/auth_passwd
# chown 600 /etc/postfix/auth_passwd
ファイルを更新したらpostmapを必ず実行
# postmap /etc/postfix/auth_passwd

5. Postfixの設定

# vi /etc/postfix/main.cf
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/auth_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain

smtp_tls_CApath = /etc/pki/tls/certs
smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache
Postfixを再起動
# /etc/init.d/postfix restart これで設定は終了です。

6. メール送信の確認

# mailx -s "TEST"  XXXXX@gmail.com
テストメールを送ってみます。
.
EOF

エラーがないか/var/log/maillogを確認ください。
# tail -1000 /var/log/maillog

参考URL

0 件のコメント:

コメントを投稿