安価で広告無しメルマガ配信サーバ作る話

スポンサーリンク

こちらから積極的に情報を伝えたい場合、メールは今でも便利な手段です。空メール登録/解除、不達メール対応の無料ソフトacmailerを、さくらレンタルサーバにインストールし、安価で広告無しの独自ドメインのメルマガを送る方法。他のサーバでも良く似た手順で導入可能かと思われます。

スポンサーリンク
スポンサーリンク

メールマガジン?

情報を取りに来て貰うのであればWebが便利ですが、きちんと読んで欲しい情報を、読んで欲しい人に届けたい場合は今でもメールが有効です。

若い世代向けにはLINE@等もありますが、アンケートや商品購入などを通じて既にメールアドレスが手元にある場合や、情報を届けたい先が普段あまりPCを使わない携帯電話(ガラケー)ユーザの場合、やはりこちらの方がしっくり来ます。

今回の対象の方

  • 配信先はさほど多くない(~数百人程度)
  • 無料で送りたいが、無料サービスの広告は嫌
  • 登録されたメールアドレスを自分で管理したい(無料サービスは登録メールアドレスが見られない場合も多い)
  • 独自ドメインでメルマガを発行したい
  • 空メール登録/解除、不達メール機能を使いたい
  • 何らかの理由で独自でシステムを構築したい
  • ある程度ITの知識がある

上記に該当しない方はインストール不要の広告付きの無料サービスか、安価な広告無しの有料サービスがオススメです。

メールマガジン配信システムの構築

メールマガジンを送るシステムのことをメールマガジン配信スタンドなどと呼ぶようです。沢山の有料/無料のオンラインサービスがありますが、今回は他所の配信スタンドを使用するのでは無く、ソフトを自分でサーバ(レンタル)へインストールし構築します。

メールマガジン配信システム(無料)

無料のオープンソースの配信システムを調べたところ、メジャーな下記2つが見つかりました。

どちらもインターネット上での情報が多かったのですが、phpListは若干規模の大きな配信システムと言う気がした&後者は日本の方が作ったプログラムのため、日本固有のガラケー対応、空メール対応で、設定も簡単そうだったため、acmailerを選びました。

ざっくりとこんな機能が付いています。

  • 空メール登録/解除、不達メール機能
  • CSV対応メールアドレス管理(一括登録など)
  • 絵文字/デコメール/HTMLメール対応
  • 予約配信
  • テスト配信
  • 絞り込み配信(特定ドメインのみ配信など)
  • 差し込み送信
  • 配信履歴とバックナンバー

などなど…
ちなみに、再販、配信システムレンタルを行う場合は要有料ライセンスとなるようです。

対応レンタルサーバー

コチラから一方的に送るだけの場合は別ですが、ユーザ側で自由に購読登録/解除をさせたい場合、配信システムを入れるサーバが必要です。

公式ページでは、エックスサーバー、さくらインターネット(含ライトプラン)、データホテル、カゴヤ(スタンダード10以上)が、サポートしているサーバとして載っていました。

他にもメール送受信機能があり、転送の設定が有る程度自由にできるようなレンタルサーバ、VPS/IaaS(クラウドもの)等、自分で構築したメールサーバにも設置可能かと思われますが、一度に大量のメールを送る場合は、何らかの制限や制約が有る場合もあると思いますので、各レンタルサーバにお問い合わせ下さい。

今回は、さくらインターネットのスタンダードプランを使用しました。

前準備(独自ドメインメールの設定)

ユーザ名@独自ドメイン名で配信する場合の設定です。ユーザ名@サブドメイン名.レンタルサーバドメイン名でメルマガを配信する場合は、この項目は読み飛ばしてください。

独自ドメインの割り当て

今回は、さくらのレンタルサーバ&さくらでドメインを取得した環境です。

メール配信に必要なDNSのMXレコードとSPFレコードの設定が必要なので、慣れない方は少々高くても、さくらで取得しておいた方が楽です。他の場所でドメインを管理している場合は、そちらで、MXとSPFレコードを設定し、サーバで独自ドメインのメールを受信できる状態にします。

2015-05-11_16h43_03

SPFレコードの設定は必須では無いが、”迷惑メール扱い”になりにくくなる

送受信のチェック

独自ドメインでメールの送受信が正常にできることを確認してから、メルマガ配信システムのインストール準備をします。この段階で普通のメールの送受信ができていないと、配信システムをインストールしても多分動きません。

acmailerのインストール

下記からインストール用スクリプトをダウンロードします。

開発版の機能は必要なかったため正式版、さくらサーバのperlのpathである #!/usr/bin/perlの方を選びました。開発版の機能が必要な場合は開発版をダウンロードします。

2015-05-11_16h19_30

サーバ内のwebからアクセスできる位置にディレクトリを作成し、ダウンロードしたinstall.cgiを設置、24時間以内に起動します。

設置~インストールまではさくら管理コンソールのファイルマネージャーツールでもできるのですが、ファイルマネージャーは安全のためwww以下しかいじれず、後述する空メール登録/解除/不達メールの設定ができないため、SCP(WinSCP)やFTP(FFFTP)クライアントソフトで接続して設定する方が良いです。

さくらの場合は、
/home/{username}/www/
以下にディレクトリを作って設置します。

ディレクトリのパーミションは777 or 755
cgiのパーミションは755

/home/{username}/www/mailmgz
等、SCPクラインとソフトを使い接続→任意のディレクトリ作成し、そのディレクトリにinstall.cgiをコピーします。

インストールファイルの設置だけなら、ここのファイルマネージャも使えます。

インストールファイルの設置だけなら、このファイルマネージャも使えます。

設置したらブラウザから、該当のアドレスを叩くと、インストーラーが起動します。

今回の場合、
http://独自ドメイン名/mailmgz/install.cgi
でした。

ちなみに、インストール時にacmailer側に、設置URL(リファラー)、IPアドレス等の情報が渡るようです。若干の抵抗はありますが、無料のソフトなので我慢しましょう。

インストールは簡単で、管理パスワードや配信アドレスなどを入力し、次へを押していくと、自動的に必要なファイルをダウンロードし、設置してくれます。インストールが終わったら、設置した時と同じ手順でサーバに接続し、install.cgiは削除します。

acmailerの配信テスト

とりあえず送信ができるかどうかだけ試しましょう。

acmailerコントロールパネル(http://独自ドメイン名/mailmgz/ )へログインし、「メールアドレス管理」で自分のメールアドレスを手動登録し、「メール配信」で配信します。問題なくメールが届けば、空メール登録/解除、不達メールの設定をします。

2015-05-18_15h15_39

空メール登録/解除、不達メール機能の設定

空メールを送ると自動的にメルマガに登録される「空メール登録」機能、購読を解除する「空メール解除」。指定したアドレスへ届かない場合、自動的にメルマガの購読解除をする「不達メール」機能を設定します。

ユーザ作成

下記4つのアドレスを用意します。アドレスは任意の文字列が使用可能です。

  1. メルマガ配信用
  2. 登録用
  3. 解除用
  4. 不達メール管理

今回は、

  1. メルマガ配信用→ mag
  2. 登録用 → reg
  3. 解除用 → del
  4. 不達メール管理 → error

としました。

さくらなら管理コンソール→「メールに関する設定」→「メールアドレスの管理」から作ります。

2015-05-18_14h31_39

配信用アドレス(mag)以外は外部から接続して受信しないので、パスワードは何でも良いです

プログラムに転送する設定

さくらレンタルサーバの場合maildropと言うソフトを使ってメール配信をしているらしく、.mailfilterファイルを使用して届いたメールをメルマガ配信システムに転送できます。

WADAX、kagoya、ファーストサーバー、Xserverに関しては公式のマニュアルに設定方法が書いてあります。他のレンタルサーバやVPS等を使っている場合は「レンタルサーバ名 メール プログラム 渡す」「MTA名(postfix,qmail,sendmail) プログラム 渡す」等で調べてみてください。

さくらの場合は上記オンラインマニュアルにあるように、メモ帳等で下記のよう書いたファイルを用意し、適当にファイル名を付けて保存します(他のサーバでは若干 記述は異なります)。

・登録用ファイル

to "| /home/{username}/www/{acmailerを設置したディレクトリ}/lib/autoreg.pl reg"

・解除用ファイル

to "| /home/{username}/www/{acmailerを設置したディレクトリ}/lib/autoreg.pl del"

・不達メール管理ファイル

to "| /home/{username}/www/{acmailerを設置したディレクトリ}/lib/errmail.pl"

次に、SCP(WinSCP)やFTP(FFFTP)クライアントソフトを使用し上記ファイルを下記のディレクトリへ転送します。さくら管理ツールのファイルマネージャは下記のディレクトリが見られないので注意してください。

さくらの場合は、
/home/{username}/MailBox/{作ったユーザ名}
へ、上記各ファイルを.mailfilterと言う名前でコピーし、パーミションを600にします。

今回の場合は、

  • 登録用ファイル→/home/{username}/MailBox/reg/.mailfilter
  • 解除用ファイル→/home/{username}/MailBox/del/.mailfilter
  • 不達メール管理→/home/{username}/MailBox/error/.mailfilter

と言った感じ。

2015-05-11_17h41_26

既にできているMailbox/regに.mailfilterを置く(登録用)

必要であれば、配信用アドレスを普段使っているメールアドレスに転送設定を行ってください。このアドレス宛に、購読ユーザが返信したメールや、登録/解除情報などが届きます。

「配信用アドレス」のみ普段使っているメールに転送しておいても良いと思います

「配信用アドレス(mag)」のみ普段使っているメールに転送しておいても良いと思います

不達メール管理設定

登録と解除の設定は必要有りませんが、不達メールはacmailer側の設定が必要です。

各種設定→不着メール設定
・不着メール管理→使用する
・メールアドレス→設定
・停止設定、保存ログ件数→適当に

各種設定→送信サーバ設定
・ローカルサーバ→sendmailパス→-f オプション→チェック

公式のマニュアル(不着メール設定方法(さくらインターネット))に入っていませんが、-fオプションの設定が無いと、さくらでは不着メールが管理できないので注意してください。

2015-05-11_17h47_01

各種設定→不着メール設定

2015-05-11_17h49_48

各種設定→送信サーバ設定。さくらでは-f (from)オプションを付ける。

登録/配信/解除/不着テスト

空メール登録テスト

上記の登録ができたら自分で使用しているメールから、登録用@ドメイン名(今回はreg@独自ドメイン名)へ空メールを送って、

  1. 登録希望のアドレスに「登録しました」のメールが来る
  2. 管理ツール→メールアドレス管理→メールアドレス一覧に該当メールアドレスが入っている

事を確認します。

配信テスト

管理ツール→メール配信で登録したアドレス宛にメールが届くかテストします。
また、メールのソースを見て、Return-Pathに不着アドレスで指定したアドレスが入っていることを確認します(重要)。

2015-05-11_17h58_21

Gmailならメッセージ選択→右上の▼→「メッセージのソースを表示」

空メール解除テスト

解除宛にメールを送り、解除されることを確認します。

  1. 解除しましたのメールが来る
  2. 管理ツール→メールアドレス管理→メールアドレス一覧に該当メールアドレスが消えている

事を確認します。

不着テスト

上記の配信テストでReturn-Pathに不着アドレスが入っていることを確認してから、
管理ツール→メールアドレス管理→メールアドレス登録で”絶対にエラーとなるメールアドレス”を登録し、再度配信テストを行います。

送信後しばらくしたら、
管理ツール→各種設定→不着メール管理→0回以上の不着データを表示
等して不着に入っていることを確認します。

2015-05-11_18h06_42

「表示」を押すと、再表示されて不着のアドレスが表示されます

他の設定

細かい設定はマニュアルに従うとして、さくらではメール送信が「15分間で250通」に制限されているらしいので、
管理ツール→各種設定→送信サーバ設定→送信モード→分割送信→250件/待ち900秒
に設定しました。

他はテンプレート変えたり、少し設定を変えたり…

セキュリティ設定(アクセス制限)

セキュリティ設定って書くほどのセキュリティは保てないのですが、漏れると怖いメールアドレス一覧がWebから見られる状態になっていることは怖かったので、設置サーバ以下のディレクトリをウェブサーバの機能を使い認証させることにしました(さくらレンタルサーバはdigest認証が使えないため、basic認証としました)。共用SSL使って接続するともっと良い気もします。

で.htpasswdファイルを作り、
/home/{username}/www/mailmgz/.htpasswd
として設置、


AddHandler cgi-script .pl

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
AuthUserFile /home/{username}/www/mailmgz/.htpasswd
AuthGroupFile /dev/null
AuthName "password ?"
AuthType Basic
require valid-user
order deny,allow

上記の.htaccessファイルを、
/home/{username}/www/mailmgz/.htaccess
へ設置しました。

ちなみにこの設定をすると、メルマガ購読者がWebで登録/解除/バックナンバーの閲覧等々の機能が使えなくなります(ちゃんと除外すれば使える気もするけど、どこでどんなファイルを使っているか分からない&面倒)ので、ご注意下さい。

また、上記の設定をした場合、無料ライセンスの場合は他の場所に著作権表示をしないとダメとのことなので、それに従うことにします。

2015-05-11_18h27_37

上記の決まりを守る

その他の作業

下記で登録用アドレスのQRコード画像を作ったりしました。

最後に

若干ややこしくも見えますが、レンタル配信ポストを使えない理由がある/使わない場合は独自で持つのもありだと思います。

コメント

タイトルとURLをコピーしました