Azure

Azure AppService (WebApps)で Sendmailを利用する方法。これでSendGridもPerlで使えます。

はじめに

くどうです。

Linuxではsendmailが重宝され、様々なアプリケーションで利用されています。
Postfixになっても互換コマンドが使えるなど永久に無くならないでしょう。

そこで、Azure AppService のWebAppsでsendmailを利用する方法を紹介します。
WebAppsは基本的にインストールは行えません。しかも中身はWindowsです。

では、どのようにWebAppsでsendmailを利用するか?fake sendmail for windowsを利用します。
fake sendmailはWindowsで動作するsendmail ライクなアプリケーションです。
しかも、インストールが必要なく単独で動作します。

fake sendmailを利用することでPerlに限らず、PHP、RubyなどWebAppsで動作する言語全てで利用可能です。
また、SMTP AUTHに対応しており、SendGridにも問題なく対応可能です。

今回は例として、PerlでSendGridを利用方法を紹介していきます。
WebApps + Perl + SendGrid の組み合わせです。
現状、これが一番シンプルな方法だと思います。

fake sendmailの設置

fake sendmail for windowsのサイトから、sendmail.zipをダウンロードしてきます。
解凍後、以下のファイルをkudu等を利用し、WebAppsにsendmailというフォルダを作成、保存します。
sendmail.exe
sendmail.ini
ssleay32.dll
libeay32.dll

設置例

次にSendGridで送信する設定をします。SendGridは事前に立ち上げUsernameを取得しておきましょう。
Passwordは作成時に設定しているものです。

sendmail.iniの以下の部分を編集します。

以上で、sendmailの設定は完了です。

次に実際に送信するPerlを準備します。

Perlで送信

perlをWebAppsで利用するには以下を参考ください。
App Service (Web Apps) でPerl CGIを動作させる。立ち上げてすぐ使えます。

Perlが利用できる環境で送信用スクリプトsendmail.cgiを設置します。

sendmail.cgiは以下です。基本的に、従来のsendmailと利用方法は同じです。

以下の部分でfake sendmailへ渡しています。

他にも、メールの内容を一度、外部出力して受け渡すことも可能です。

一旦、外部へ出力します。

コマンドとして外部へ出力したファイルを読み込みこませます。

一応、送信判定ができます。

送信結果

送信結果は以下です。
どちらで送信しても結果は一緒です。

まとめ

WebAppsでsendmailを利用する方法を紹介しました。sendmailは、これまでの様々なOSSで利用されているケースが多かったと思います。特に古いCMSなどなど。
紹介した通りWebAppsでは、SendGridを利用しsendmailで送信できる環境を簡単にできます。そのため、既存のアプリケーションの移行がスムーズに行えます。ぜひ活用してもらえればと思います。
ではでは

Related post

  1. Azure

    Deep Security User Night #3 に参加してきました。

    はじめにくどうですDeep Security User N…

  2. Azure

    Azure RemoteAppを使ってみる。Officeが使えますよ!

    はじめにくどうです。事務所はちょっと寒いです。RemoteAppの…

  3. Azure

    Azure Cloud Shell にインストールされているものを確認。vimも使えます。

    Azure PortalでCloud Shellが登場し、ブラウザのみ…

  4. Azure

    Azure Active Directory の削除方法。それ、ServicePrincipalの問…

    はじめにくどうです。みなさんAzure Active Direct…

  5. AWS

    CLR/H in TOKYO #7 ~カソウ化デイ~

    12/20に開催されたCLR/H in TOKYO #7 ~カソウ化デ…

  6. Azure

    AzureにVulsをインストールしてみる。コピペでどーん。Docker編

    はじめにくどうです。Vulsです。前回と一緒。いろ…

Comment

  1. No comments yet.

  1. No trackbacks yet.

  1. Azure

    Serverless Meetup Sapporoで話てきた。
  2. Linux

    一定回数のログイン失敗でロックしちゃうぜ!
  3. 未分類

    「Virtual Server 2005 R2」にFedora 5 をインストー…
  4. AWS

    パソコン同士をVPNで接続する方法(お気に入りツールの紹介)
  5. 未分類

    「Virtual Server 2005 R2」にFedora 5 をインストー…
PAGE TOP