GCPでMauticをワンクリックデプロイしSSL化する

こんにちは。香田です。

今回はGCPのワンクリックデプロイでMauticをデプロイし、Let’s EncryptにてSSL対応していく流れを紹介していきます。

Mauticとは

簡単にMauticについて紹介しておくと、Mauticは無料で利用できるオープンソースのマーケティングオートメーションツールで、Marketo等のベンダー製品と比較しても、基本的な機能に関しては引けを取らない製品です。

無料で利用できる為、マーケティングオートメーションツールでどういったことができるか等入門にも最適ではないでしょうか。

Mauticをワンクリックデプロイ

ここでは、GCPで提供されているワンクリックデプロイ機能を使用してMauticを起動していきます。

GCPのMarketplaceよりMautic(Google Click to Deploy)で検索し選択します。

下記のような画面が表示され、[運用開始]をクリックします。適宜マシンタイプやZone等を設定し[デプロイ]を実行します。

gcp1

下記のようにSite addressが表示され、Mauticインストール画面が表示されれば成功です。

gcp2

Mautic セットアップ

次にSite addressへアクセスし、データベース、管理ユーザー、メール設定を適宜設定します。

完了するとログイン画面が表示されるはずです。

m1

SSL証明書の発行

SSL設定を進める前に、GCPで払い出されたIPアドレスをもとにサイトで利用するドメインにAレコードを設定しておいてください。

SSL証明書はCertbotを利用し、Let’s Encryptの証明書を取得し設定していきます。また、インスタンスへの接続はブラウザからSSHで接続可能です。

CertBot Clientをインストール

$ wget https://dl.eff.org/certbot-auto && chmod a+x certbot-auto

SSL証明書の発行

※ domain,emailは適宜修正してください

$ ./certbot-auto certonly --webroot --webroot-path /var/www/html/mautic/ --domain mautic.example.com --email mautic@example.com --agree-tos -n

Apache SSL設定

GCPのワンクリックデプロイで提供されているMauticではApacheを利用しています。

各設定ファイルに下記のような設定を追加することで、SSLが有効化されhttpでアクセスした場合もhttpsにリダイレクトされるようになります。

※ 各設定ファイルで利用されているドメイン名等は適宜修正してください。

  • /etc/apache2/sites-available/default-ssl.conf
DocumentRoot /var/www/html/mautic
ServerName mautic.example.com
<Directory /var/www/html/mautic/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
</Directory>
SSLCertificateFile "/etc/letsencrypt/live/mautic.example.com/cert.pem"
SSLCertificateKeyFile "/etc/letsencrypt/live/mautic.example.com/privkey.pem"
SSLCertificateChainFile "/etc/letsencrypt/live/mautic.example.com/chain.pem"
  • /etc/apache2/sites-available/000-default.conf
ServerName mautic.example.com
Redirect permanent / https://mautic.example.com/

default-ssl.confのリンク作成とSSLモジュールを有効化し、Apacheを再起動します。

sudo a2ensite default-ssl
sudo a2enmod ssl
sudo systemctl restart apache2

cron設定

Let’sEncryptの有効期限は90日の為、cronで定期的に更新するように設定しておきます。

  • certbot-autoファイルをコピー
sudo cp certbot-auto /etc/letsencrypt/
  • /etc/cron.d/certbot-renew
# 例) 毎週火曜日の0時1分に実行する場合
1 0 * * 2 root /etc/letsencrypt/certbot-auto renew --post-hook 'systemctl restart apache2'

さいごに

GCPでMauticをワンクリックデプロイしSSL化する方法いかがでしたでしょうか。

有料のマーケティングオートメーションツールの場合、導入費用でそこそこのコストがかかります。

初めて導入しようとする企業にとって、Mauticのようなツールでマーケティングオートメーションツールの全体像を理解して、状況に応じて有料製品を選択するのもありではないでしょうか。

最後までご覧頂きありがとうございます。

SNSでもご購読できます。