Google Cloud Platform で Bedrock を使用して WordPress のインストールを保護する方法。 Bedrock は、別の改善されたディレクトリ構造と簡単な構成を備えた WordPress ボイラープレートです。
MD5 ハッシュを最新の bcrypt メソッドに置き換える wp-password-becrypt を使用して、Web ルートを分離し、Web 以外のファイルへのアクセスを制限し、より安全なパスワードを使用することで、より安全になります。
このガイドでは、Bedrock を使用して WordPress をインストールおよび構成する方法を学習します。この設定は Google Cloud Platform でテストされています。
前提条件
- Google Cloud を使用している場合は、Ubuntu 20.04 で VM インスタンスをセットアップする必要があります。
- Let’sEncrypt SSL で LAMP の設定を完了する
上記の前提条件が満たされたら、Bedrock のセットアップに進むことができます。
Composer のインストール
Bedrock をインストールして構成するには、Composer が必要です。次のコマンドを使用して composer をインストールできます。
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
Bedrock ベースの WordPress のセットアップ
Web ルート ディレクトリに移動します。
cd /var/www/html/yourpath/public
Composer を使用して Bedrock ベースの WordPress をダウンロードします。
sudo composer create-project roots/bedrock .
.
に注意してください これは、bedrock
という名前のサブディレクトリを作成せずに、WordPress のコンテンツをこのフォルダー内に直接セットアップすることを意味します。 .
ls
を使用して構造を確認すると、 コマンドを実行すると、以下のような構造が表示されます。
├── composer.json ├── config │ ├── application.php │ └── environments │ ├── development.php │ ├── staging.php │ └── production.php ├── vendor └── web ├── app │ ├── mu-plugins │ ├── plugins │ ├── themes │ └── uploads ├── wp-config.php ├── index.php └── wp
web
ディレクトリは、WordPress の Web ルートです。app
ディレクトリにはアップロード、テーマ、プラグインが含まれます。
このディレクトリ構造では、wp-content
はありません その代わりに app
になります ディレクトリ。
管理ファイルは wp
内にあります ディレクトリ。
安全なパスワード用に Bcrypt を構成する
composer を使用して Bcrypt をインストールし、bcrypt を使用してパスワードを保護します。
sudo composer require roots/wp-password-bcrypt
このコマンドには、wp-password-bcrypt.php
という名前のファイルが含まれます これは Composer によって自動的に自動ロードされ、プラグインには表示されません。
正しい Web ルートを使用するように Apache を構成する
Documentroot
を更新する必要があります。 および Directory
Web ディレクトリを指すパス。
以下のコマンドで仮想ホスト構成を編集します。
sudo nano /etc/apache2/sites-available/domainname.conf
ファイルが以下と同じであることを確認してください。
<VirtualHost *:80> ServerAdmin [email protected] ServerName domainname.com ServerAlias www.domainname.com DocumentRoot /var/www/html/domainname/public/web <Directory /var/www/html/domainname/public/web> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
CRTL + X
をヒット 続いて Y
と ENTER
ファイルを保存して終了します。
SSL 構成を持つ仮想ホストに対して同じことを行い、正しい Web ルートを指すようにします。
変更を有効にするために Apache を再起動してください。
sudo service apache2 restart
WordPress 用のデータベースを作成
データベースとユーザーがすでにある場合は、スキップして .env
を構成できます ファイル。
MySQL コンソールにログインします。
mysql -u root -p
サーバーのセットアップ中に使用したパスワードを使用してください。
以下のコマンドを実行して、新しいデータベースを作成します。
CREATE DATABASE database_name /*\!40100 DEFAULT CHARACTER SET utf8mb4 */;
新しいユーザーを作成し、上記で作成したデータベースに割り当てます。
CREATE USER 'username'@'localhost' IDENTIFIED BY 'secure_password'; GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
特権をフラッシュします。
FLUSH PRIVILEGES;
これで、WordPress 用の新しいデータベース、ユーザー名、およびパスワードが作成されました。
データベースを使用して WordPress を構成する
Web ルートの外にある .env ファイルを編集します。
sudo nano /var/www/html/yourpath/public/.env
以前に使用した詳細で以下を更新してください。
- DB_NAME => データベース名
- DB_USER => ユーザー名
- DB_PASSWORD => secure_password
- DB_HOST と DB_PREFIX のコメントを外します。
- DB_PREFIX を変更してください。
この URL (https://roots.io/salts.html) を使用してソルトを生成し、以下のキーを置き換えます。
.htaccess の構成
.htaccess ファイルを構成するか、パーマリンクを更新してきれいな URL にすることもできます
sudo nano /var/www/html/yourpath/public/web/.htaccess
以下の構成をそれに追加します。
#BEGIN WordPress RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] #END WordPress
これで、Web ブラウザーで Web サイトを確認し、画面の指示に従ってインストールを完了できます。
結論
これで、Bedrock を使用して WordPress を安全にインストールする方法を学びました
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。