//---------- CentOS-7/Postfix  ----------//

[ [[CentOS-7]] ]

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


** 必要パッケージのインストール [#u55adb5c]
#shjs(sh){{
##■ cyrus-sasl-plain をダウンロードする
[root@localhost ~]# wget -P /root/setup/rpm/deps/ ftp://ftp.riken.jp/pub/Linux/centos/7.1.1503/os/x86_64/Packages/cyrus-sasl-plain-2.1.26-17.el7.x86_64.rpm
[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.1.1503/os/x86_64/Packages/cyrus-sasl-md5-2.1.26-17.el7.x86_64.rpm
[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 起動 [#mf281b0e]
#shjs(sh){{
##■ 起動確認 (何も出力されなければ起動していない)
[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 設定 [#a80d1626]
- 内部留保の設定 (ローカルサーバーから外部へメールを送信せず、内部の特定ユーザーへ強制的に転送する)~
[[内部留保>CentOS-7/Postfix/内部留保]]
&br();

- 外部へメールを送信の設定 (ローカルサーバーからGmailを経由して、外部へメールを送信する場合)~
[[Gmail-経由送信>CentOS-7/Postfix/Gmail-経由送信]]


** 送信確認 [#h9f1e369]
#shjs(sh){{
[root@localhost ~]# echo "test message" | mail -s "test subject" user@example.com
[root@localhost ~]#
}}



** アプリケーションからメール送信 [#l5ac1f22]
- PHP から mail()関数で送信する例

#shjs(php){{
<?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