GCPのWordPress初期設定

このサイトはGCPのMarketPlaceにあるWordPressを使いました。再構築する際に備えて、やったことを簡単に記録しておきます。

この手順はGCP MarketPlaceにあるWordPress Container Registry tag:5.3で実行したときのものです。

TLS対応

まずはTLS対応しましょう。今回はテスト用途なので、デフォルトのものをサクッと使います。

: 自己署名証明書を作成
sudo make-ssl-cert generate-default-snakeoil --force-overwrite

: ApacheでSSLを有効化
sudo a2ensite default-ssl
sudo a2enmod ssl
sudo systemctl restart apache2

ここまでで、httpsでアクセスできるようになっているはずです。ただしGCP側のファイアウォールでブロックされるので、GCPのコンソールに入ってファイアウォールを開放します。VMインスタンスの設定画面に入り、HTTPSトラフィックを許可するにチェックすれば良いです。

HTTPSトラフィックの許可

アクセスできることを確認したら、間違ってhttpを使わないように、80番ポートは完全に落とすか、リダイレクトするかしましょう。今回は落とす方法でやりました。

sudo vi /etc/apache2/ports.conf
: 中に Listen 80 という記載があるのでコメントアウトする

sudo systemctl restart apache2

また、GCPのファイアウォールに80番を開放するルールがデプロイ時に作成されているので、消しておきましょう。

[2020/11/01 追記]
ここで80番ポートを閉塞しましたが、結局Let's Encrypt導入時に開放しました。

ユーザ名・テンポラリパスワードの変更

WordPressをデプロイすると、このような形でテンポラリパスワードが使われているので、心配であればより強固なものに変えておきましょう。セキュリティ的にはデフォルトでよく使われるユーザアカウント(例えば、root、adminや、wordpressなどのソフト名)も避けるとより安全です。この画面はDeployment Managerからいつでも見ることができます。

WordPress MySQL passwordとMySQL root passwordはphpMyAdminから、WordPress Admin passwordはWordPressから変更できます。なお、WordPress MySQL user/passwordを変更すると/var/www/html/wp-config.phpの変更も必要なので注意してください。ここではMySQLのルートユーザを変更してみます。

use mysql; 
update user set user='NewRootUser' where user='root'; 
flush privileges;

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です