[ CentOS-7 ]

Postfix

  • 今回の構築で SMTP は、利用頻度が低いと思われる為、Postfix は簡易的な設定にしている。
    フォームから電子メールが送信できないのは不都合なので、最低限の対応をしておくことにする。
    2つの構築方法を状況に応じて、設定する。
    • 内部留保 (ローカルサーバーから外部へメールを送信せず、内部の特定ユーザーへ強制的に転送する)
    • 外部へメールを送信 (ローカルサーバーからGmailを経由して、外部へメールを送信する場合)

必要パッケージのインストール

##■ cyrus-sasl-plain をダウンロードする
[root@localhost ~]# wget -P /root/setup/rpm/deps/ ftp://ftp.riken.jp/pub/Linux/centos/7/os/x86_64/Packages/cyrus-sasl-plain-2.1.26-17.el7.x86_64.rpm
[root@localhost ~]#

##■ cyrus-sasl-plain をインストールする
[root@localhost ~]# rpm -ihv /root/setup/rpm/deps/cyrus-sasl-plain-2.1.26-17.el7.x86_64.rpm
[root@localhost ~]#

##■ cyrus-sasl-md5 をダウンロードする
[root@localhost ~]# wget -P /root/setup/rpm/deps/ ftp://ftp.riken.jp/pub/Linux/centos/7/os/x86_64/Packages/cyrus-sasl-md5-2.1.26-17.el7.x86_64.rpm
[root@localhost ~]#

##■ cyrus-sasl-md5 をインストールする
[root@localhost ~]# rpm -ihv /root/setup/rpm/deps/cyrus-sasl-md5-2.1.26-17.el7.x86_64.rpm
[root@localhost ~]#

saslauthd 起動

##■ 起動確認 (何も出力されなければ起動していない)
[root@localhost ~]# ps -ef | grep saslauthd | grep -v grep
[root@localhost ~]#

##■ 起動していなければ、起動させる
[root@localhost ~]# systemctl start saslauthd.service
[root@localhost ~]#

##■ 自動起動を設定する
[root@localhost ~]# systemctl enable saslauthd.service
[root@localhost ~]#

Postfix 設定

  • 内部留保の設定 (ローカルサーバーから外部へメールを送信せず、内部の特定ユーザーへ強制的に転送する)
    内部留保
  • 外部へメールを送信の設定 (ローカルサーバーからGmailを経由して、外部へメールを送信する場合)
    Gmail-経由送信

送信確認

[root@localhost ~]# echo "test message" | mail -s "test subject" user@example.com
[root@localhost ~]#

アプリケーションからメール送信

  • PHP から mail()関数で送信する例
<?php
// 送信元のメールアドレス(Gmail に送信元として登録しているメールアドレス)
$from    = '';
// 送信先のメールアドレス
$to      = '';
// 変身先のメールアドレス
$reply   = '';
// 件名
$subject = 'test subject';
// 本文
$message = 'test message';

$headers = 'From: ' . $from . "\r\n" .
    ($reply ? 'Reply-To: ' . $reply . "\r\n" : "") .
    'X-Mailer: PHP/' . phpversion();

echo mail($to, $subject, $message, $headers);
?>

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-05-10 (火) 13:59:41 (948d)