LoginSignup
8
12

More than 3 years have passed since last update.

Google Cloud PlatformにSSLウェブサーバーの作成

Last updated at Posted at 2019-09-22

はじめに

AWSのroute53でDNSを登録すると毎月料金が発生します。
GCPでは無料で使えるのでご紹介させていただきます。

Compute Engineの作成

「Compute Engine」の「VMインスタンス」を作成します。
image.png
us-east-4(北バージニア)以外のusリージョン、f1-microタイプはは無料で使えます。
今回はUbuntu16.04LTSで作成してみます。
1分位待つとVMインスタンスに接続ができるようになります。
image.png
「ブラウザウィンドウで開く」を選ぶとブラウザ上でインスタンスに接続ができます。
image.png

Apacheのインストール

ubuntuを最新化します。
sudo apt-get update
sudo apt-get upgrade
apacheをインストールします。
sudo apt-get install apache2
apacheのステータスを確認します。
systemctl status apache2
image.png
自分の外部IPを確認して、ブラウザに移します。
image.png
apacheのインストールができました。

Domain登録

https://freenom.comで無料ドメインを取得します。
GCPのネットワークサービスにあるCloud DNSで「DNSゾーンの作成」を選択します。
image.png
freenom.comで取得したDNS名で作成します。
image.png
NSタイプのデータをfreenom.comのネームサーバーに設定します。
image.png
Aレコードを作成します。
IPv4アドレスに自分のGCEインスタンスの外部IPを入力します。
image.png
少し時間が過ぎると、freenom.comで取得したDNS名で接続ができます。
image.png

ApacheのSSL化

apacheに「Let's Encrypt」と「certbot」を利用してSSL接続ができるようにしましょう。

Let's Encryptとは

wikipediaから抜粋
Let's Encrypt(レッツ・エンクリプト)は、2016年4月に正式に開始された認証局である。自動化された発行プロセスにより、TLSのX.509証明書の発行を無料で行っている。

certbotとは

https://certbot.eff.orgから抜粋
Certbot is a free, open source software tool for automatically using Let’s Encrypt certificates on manually-administrated websites to enable HTTPS.

certbotのインストール

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot python-certbot-apache

SSL認証

sudo certbot --apache -d [自分のDNS名]
image.png
メールアドレスと同意の「a」とno-redirectの「1」を入力するとSSL認証ができます。
image.png
ブラウザーでSSLされているのを確認できます。

certbotの自動更新

「Let's Encrypt」は90日が有効期間です。
毎月1回は有効チェックするのをおオススメします。
crontabに
1 0 1 * * sudo certbot renew
を登録すると毎月初日00:01に認証書を更新します。

終わりに

簡単にGoogle Cloud PlatformにSSLウェブサーバーを作ってみました。
certbotがあれば、SSLの更新に気にする必要がないから開発に集中できると思います。
ありがとうございます。

8
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
12