スキップしてメイン コンテンツに移動

sendmailでの転送設定

某システムにてメールを配信する機能を開発へ依頼。
受け取った後、PHPのmb_send_mailはsendmailが無いと動かない事実を伝えられる。
うちのメールサーバはPostfixですよ。。。Σ(|||▽||| )
仕方が無いので、WEBサーバにsendmailを立てDMZ内のpostfixへリレーするようする。
意外と内部のメールサーバに転送する文献がなかったので、備忘録として残すことにした。


■sendmail-cf-8.13.8-8.el5.i386.rpmのインストール
設定ファイルをコンパイルするm4コマンドを使う為に必要。
    ・モジュールの確認  
        # rpm -qa | grep sendmail
        sendmail-8.13.8-8.el5
        sendmail-cf-8.13.8-8.el5
        「sendmail-cf-8.13.8-8.el5」がインストールされていなければ以下を実施


    ・パッケージのインストール  
        # rpm -ivh sendmail-cf-8.13.8-8.el5.i386.rpm


    ・再度モジュールの確認  
        # rpm -qa | grep sendmail
        sendmail-8.13.8-8.el5
        sendmail-cf-8.13.8-8.el5
■hostsファイルの確認      
    ・hostnameの確認  
        # hostname
        hogeweb01


    ・hostsファイルの編集  
        # cp -ip /etc/hosts /etc/hosts.日付
        # vi /etc/hosts
        172.xxx.xxx.1         hogeweb01.localdomain hogeweb01
                                ^^^^^^^^^^^^^^^^^^^^
        メールサーバっぽいドメインになってること。
    これをしないとsendmailの起動がやたら遅い。


■sendmail SMTPのリレー設定      
    ・sendmail.mcの編集  
        # cd /etc/mail
        # cp -ip sendmail.mc sendmail.mc.日付
        # cp -ip sendmail.cf sendmail.cf.日付
        # vi sendmail.mc
        26行目あたりに、下記のようなSMART_HOSTという記述があると思うので、これを変更します。
        dnl define(`SMART_HOST',`smtp.your.provider')
        ↓
        define(`SMART_HOST', `smtp:[172.xxx.xxx.xx2]')dnl
        ★ここがポイント!
        `smtp:[172.xxx.xxx.xx2]' と記述するときはIPアドレス指定
        `smtp:smtp.yourdomain.jp' と記述するときはドメイン指定(DNSで引けること, hostsファイルでは駄目でした)


        # diff sendmail.mc sendmail.mc.日付
        26c26
        < define(`SMART_HOST', `smtp:[172.xxx.xxx.xx2]')dnl
        ---
        > dnl define(`SMART_HOST', `smtp.your.provider')dnl


    ・sendmail.cfの作成  
        m4 sendmail.mc > sendmail.cf


    ・sendmailの起動  
        # cd /etc/init.d
        # ./sendmail start
        sendmail を起動中:                                         [  OK  ]
        sm-client を起動中:                                        [  OK  ]


    ・動作確認  
        # sendmail hoge@hoge.co.jp
        From: moge@hoge.co.jp
        To: hoge@hoge.co.jp
        Subject: This is test mail.
        hogehoge
        .
以上でメールが正しく送信されればOK!

コメント

このブログの人気の投稿

Android端末の操作を自動化する

システムの運用保守をやってると、必ず実機確認(サービス正常性確認)というモノをやらされる訳であります。 スマホアプリ操作なんかだと、複雑なうえに素早く実施しないとイケない。 はっきり言って、アラフォー男子には限界があります。そこで 自動化 を思いつきます。 FRep - Finger Replayer が有力そうだけど、Root化しないとイケない?業務端末では無理です!! 有償で良さ気なソフトもありそうですが、まずは自力でチャレンジ。調べて見るとadbコマンドを使ってタップやスワイプのイベントを端末に送信できることがわかりました。早速、作業に取り掛かります。 2015/05/05 時点でリリースされている最新版を使って開発環境を構築します。 開発環境となるPCのOSはWindows7 Professional SP1 64bit。 作業は全て管理者権限が付与されたユーザで実施しています。 1. Android SDK をインストール ここ からAndroid SDKをダウンロードします。 サイトの下の方に「SDK Tools Only」があるので、そこから[installer_r24.2-windows.exe]をダウンロードしてインストールします。 次にシステム環境変数の中の[Path]変数を編集し、以下のパスを登録します。 "C:\android-sdk-windows\platforms" "C:\android-sdk-windows\tools"    ※"C:\"はご自身のインストール先によって異なります。 2. PCにAndroid端末を繋げる ①Android端末本体の「設定」から「アプリケーション」>「開発」>「USBデバッグ」にチェック。 ②Android端末をUSBでPCに接続。 ③コマンドプロンプトを立ち上げ、adbコマンドで端末の接続を確認。  > adb devices 以上で準備が整いました。 3. 画面キャプチャを撮って、座標を調べる 次に画面を操作する為、座標を調べます。画面キャプチャをペイント等のアプリで開いてみましょう。図の左下に座標が表示されます。ここではFace...