GNU/Linux >> Linux の 問題 >  >> Linux

Bedrock を使用して WordPress のインストールを保護する方法 – Google Cloud

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 をヒット 続いて YENTER ファイルを保存して終了します。

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 を安全にインストールする方法を学びました

御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。


Linux
  1. Linuxでホームディレクトリのユーザーアカウントを削除する方法

  2. FreeBSDクラウドサーバーを使い始める方法

  3. ソートされた順序でファイルを tar する方法は?

  1. Google Cloud Platform(GCP)でKubernetesクラスタを設定する方法

  2. スクリーンショットを使用してEndeavourOSをステップバイステップでインストールする方法

  3. Ubuntu 18.04 で Apache との SSL 接続を保護する方法

  1. ONLYOFFICE9.6をWordPressと統合する方法

  2. Google Cloud Platform(GCP)で仮想マシン(VM)を作成する方法

  3. SELinuxでLinuxサーバーを保護する方法