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 example@unixlinux.online
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 を安全にインストールする方法を学びました
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。