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

LAMPを使用してWordPressをインストールし、RockyLinuxでSSLを無料で暗号化する方法

WordPress は現在最も人気のあるコンテンツ管理システム(CMS)のひとつであり、何百万もの人々によって使用されています。 WordPressプロジェクトは、CMS「b2 / cafelog」からのフォークとして2003年に開始され、GPLv2ライセンスが付属し、無料のオープンソースソフトウェアになります。

現在、インターネット上のWebサイトの34%以上が WordPressを使用しています。 。 WordPressが非常に人気がある理由の1つは、シンプルで使いやすく、柔軟性があるためです。数百/数千のプラグインを備えたWordPressは、シンプルなブログエンジン、eコマースウェブサイト、シンプルな会社概要、オンラインフォーラムコミュニティなど、さまざまな方法で使用できます。

このガイドでは、RockyLinux8.4にWordPressCMSをインストールする方法を学習します。 WordPressをLAMPスタック(Linux、Apache2 / httpd、MySQL / MariaDB、およびPHP)の下にインストールします。

前提条件
  • RockyLinuxサーバー。すべてのパッケージが最新バージョンに更新されていることを確認してください。
  • root権限を持つユーザー。このユーザーは、sudoコマンドを使用してroot権限を取得します。

Apache /HttpdWebサーバーのインストール

最初に、ApacheまたはhttpdWebサーバーをRockyLinuxサーバーにインストールします。

1.以下のdnfコマンドを実行して、httpdWebサーバーをインストールします。

sudo dnf install httpd

y」と入力します 」を押して「Enter」を押します "httpdパッケージを確認してインストールします。

2.インストールが完了したら、次のコマンドを使用してhttpdサービスを有効にして開始します。

sudo systemctl enable httpd
sudo systemctl start httpd

systemctlenable "コマンドを使用すると、起動するたびにサービスを開始できます。

3.その後、以下のコマンドを実行してhttpdサービスを確認します。

sudo systemctl status httpd

そして、以下と同様の結果が得られます。

上のスクリーンショットに見られるように、httpdはアクティブで実行中です。

PHPパッケージのインストール

今のところ、WordPressCMSのインストールにはPHP7.4以降が必要です。次に、remiリポジトリからPHP7.4をインストールします。

1.次のコマンドを実行して、epelおよびremiリポジトリを追加します

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

「y」と入力し、「Enter」を押して、epelおよびremiリポジトリを追加します。

インストールが完了したら、次のコマンドを使用してepelおよびRemiリポジトリを確認します。

sudo dnf repolist

リポジトリリストにepelとremiのリポジトリが表示されます。

2.次に、デフォルトのリポジトリモジュールPHPをリセットします。次に、remiリポジトリからPHP7.4のモジュールを有効にします。

次のコマンドを実行して、デフォルトのphpモジュールリポジトリをリセットします。

sudo dnf module reset php

その過程で、「 y」と入力します 」を押して「Enter」を押します "gpgkeyremiリポジトリを追加します。

その後、以下のコマンドを実行して、remiリポジトリからphpモジュールを有効にします。

sudo dnf module enable php:remi-7.4

y」と入力します 確認して「Enter」を押します 「続行します。これで、PHPとWordPressインストール用のすべての拡張機能をインストールする準備が整いました。

3.次のコマンドを実行して、必要な拡張機能を備えたphpをインストールします。

sudo dnf install php php-common php-mysqlnd php-gd php-imagick php-bcmath

インストールが完了したら、次の手順に進みます。

MariaDBサーバーのインストールと構成

この段階では、MariaDBデータベースサーバーをインストールし、MariaDBのデプロイを保護し、WordPress用の新しいデータベースとユーザーを作成します。

1. MariaDBデータベースサーバーをインストールするには、以下のコマンドを実行します。

sudo dnf install mariadb mariadb-server

mariadbのインストールを待ちます。

2.インストールが完了したら、次のコマンドを使用してMariaDBサービスを有効にして開始します。

sudo systemctl enable mariadb
sudo systemctl start mariadb

4. mariadbがアクティブで実行されます。次のコマンドを実行して、MariaDBサービスを確認します。

sudo systemctl status mariadb

mariadbサービスが実行されている場合は、以下のような出力が得られます。

5.次に、MariaDBのルートパスワードを設定してMariaDBのデプロイメントを保護し、いくつかのデフォルト構成を削除する必要があります。これを行うには、コマンドラインツール' mysql_secure_installationを使用できます。 '、これはデフォルトのMariaDBインストールに含まれています。

mysql_secure_installation」を実行します "以下のコマンド。

mysql_secure_installation

最初に、mariadbルートパスワードを設定するように求められます。

強力なmariadbrootパスワードを入力して繰り返し、[ Enter]を押します。 「続行します。

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

ここで、 "Y"と入力します 「Enter」を押します "デフォルトの匿名ユーザーをmariadbサーバーから削除します。

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

その後、デフォルトユーザーのリモートログインを無効にします' root '。 「Y」と入力します 」を押して「Enter」を押します 「続行します。

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

Y」と入力します "もう一度デフォルトデータベースを削除します"テスト 」を押して「Enter」を押します "。

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

最後に、「 Y」と入力します "もう一度、すべてのテーブルの権限をリロードして、新しい構成を適用します。

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

これでプロセスが完了し、次の出力が表示されます。

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!
WordPressのデータベースとユーザーを作成

1.以下のmysqlコマンドを使用してmariadbシェルにログインします。

mysql -u root -p

2.次に、次のmysqlクエリを実行して、新しいデータベース「 wordpress_db」を作成します。 "。

CREATE DATABASE wordpress_db;

3.次のクエリを実行して、新しいデータベースユーザー「 wpuser」を作成します。 "。"strongpasswordを変更します 「強力なパスワードを使用してください。

CREATE USER [email protected] IDENTIFIED BY 'strongpassword';

4.ユーザー「wpuser」が「wordpress_db」にアクセスして書き込むことを許可します "次のクエリを使用します。

GRANT ALL PRIVILEGES ON wordpress_db.* to [email protected];

5.次に、すべてのテーブル権限をリロードして、新しいデータベース構成を適用します。

FLUSH PRIVILEGES;

次に、「終了」と入力します 」を押して「Enter」を押します "mariadbシェルを終了します。

ワードプレスをダウンロード

1.作業ディレクトリを「/var/ www」に変更し、以下のようにwgetコマンドを使用してWordPressソースコードをダウンロードします。

cd /var/www/
wget https://wordpress.org/latest.tar.gz

2.WordPressソースコード「latest.tar.gz」を抽出します "そしてあなたは新しいディレクトリ"wordpress を取得します "、次に「wordpress」ディレクトリの所有者を「apache」ユーザーに変更します。

tar -xzvf latest.tar.gz
sudo chown -R apache:apache wordpress/

これで、WordPressのインストールを構成する準備が整いました。

WordPressの設定

この段階で、WordPressの構成を編集します "wp-config.php" 、データベースの詳細を設定し、認証キーとソルトを追加します(セキュリティ保護を強化するため)。

1.まず、作業ディレクトリを「 / var / www / wordpress」に変更します "。

cd /var/www/wordpress/

2.サンプル構成「wp-config-sample.php」をコピーします "から"wp-config.php "、次に、nanoエディターを使用して構成ファイルを編集します。

cp wp-config-sample.php wp-config.php
nano wp-config.php

3.データベースの詳細(DB_NAME、DB_USER、およびDB_PASSWORD)をデータベース情報で変更します。

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress_db' );

/** MySQL database username */
define( 'DB_USER', 'wpuser' );

/** MySQL database password */
define( 'DB_PASSWORD', 'strongpassword' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

4.このリンクにアクセスして認証キーとソルトを生成し、構成を「 wp-config.php」に貼り付けます "以下のファイル。

/**#@+
 * Authentication unique keys and salts.
 *
 * Change these to different unique phrases! You can generate these using
 * the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}.
 *
 * You can change these at any point in time to invalidate all existing cookies.
 * This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'v$4/xyGF7t!^(-Xr~lUKT,1oBxOpxzXPAs)kPE_C%Oc^~^%JN]C-y(k>~Wj+JZRM');
define('SECURE_AUTH_KEY',  'y<|#/jfYs,Y_l;{[`2uNp9SMNH8zNGK[eb&RYqb-+bd<a,Fi<9z9rj2_#=R(5O&s');
define('LOGGED_IN_KEY',    '&U8Z{I~,xV%D>FDq+Qx{[email protected]?ZD|_GgYby)z,l5jZDVqLC#&#+]#/6zh1-JQf6n6+X');
define('NONCE_KEY',        'pQv#Z_;q$4E: `AV.0eu-L7JA_BN-dvHV#W|;#s7>PTA<Vfs13S|-pE7RYV8+LX)');
define('AUTH_SALT',        '?;-?bWr%zTbx7lphp&]=IQ-P8D?ItOzs?4rGtaNI,kypb4xj$&X|ueIDA}5v?sj|');
define('SECURE_AUTH_SALT', 'mn<t0DVAfMX*SpqKC7NE}xFNZ|4c_N{s7|s-iKR4Jvc#GPc.9H:aW9%k2r?nAe;Z');
define('LOGGED_IN_SALT',   'ni D0H;5wrM3NQLWe<R-Y$j-_{)4{v*abQ(kAbhNrmi&+EXFMW-Gv7SQb6ya[)!s');
define('NONCE_SALT',       '[email protected]@hmv:~G/<+_8fPvQ(m%oR.A)%ZPtp``sZWK! !G6C%UYPrKU{xQJD.<bd45');
/**#@-*/

Ctrl+ x」を押します "と入力して"y" 保存して終了します。

RockyLinuxでhttpdmod_sslを有効にする

このチュートリアルでは、WordPressをインストールし、LetsencryptからSSLで保護します。したがって、RockyLinux上のhttpdサーバーに対してmod_sslを有効にする必要があります。

1.パッケージ「mod_ssl」をインストールします "以下のdnfコマンドを使用します。

sudo dnf install mod_ssl mod_http2

2.その後、以下のopensslコマンドを使用してローカルホストのデフォルトSSLを生成します。

openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crt

この証明書はローカルホストにのみ使用され、WordPressドメイン名には使用されないため、すべての質問に対してEnterキーを押すだけです。

3.次に、次のコマンドを実行して、mod_sslがhttpdWebサーバーで使用可能であることを確認します。

apachectl -M | grep ssl

ssl」などの出力がある場合 "の場合、mod_sslが有効になります。有効にしないと、空白の出力が返されます。

RockyLinuxでSSLLetsencryptを生成

この段階では、cerbotツールをインストールし、WordPressインストール用のSSL証明書を生成します。 webrootプラグインを使用してSSLLetsencryptsを生成します。

1.次のコマンドを実行して、SSLLetsencryptを生成するためのcertbotツールをインストールします。

sudo dnf install certbot

インストールプロセスを待ちます。

2.インストールが完了したら、次のコマンドを使用して、letsencrypt認証用の新しいディレクトリを作成します。

sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp apache /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt

3.次に、作業ディレクトリを「/etc/httpd/conf.d/」に変更し、nanoエディターを使用して新しい構成「well-known.conf」を作成します。

cd /etc/httpd/conf.d/
nano well-known.conf

次の構成を追加します。

Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
    AllowOverride None
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    Require method GET POST OPTIONS
</Directory>

Ctrl+ x」を押します "と入力し、" y "保存して終了します。

4.次に、次のコマンドを実行してhttpd構成を確認し、httpdサービスを再起動します。

apachectl configtest
sudo systemctl restart httpd

エラーがなければ、webrootプラグインを使用してSSLLetsencryptを生成する準備ができています。

5. SSL Letsencryptを生成する前に、ドメイン名がサーバーのIPアドレスに解決されていることを確認してください。その後、以下のcertbotコマンドを実行して、webrootプラグインを使用してSSLLetsencryptを生成できます。また、メールアドレスとドメイン名を自分のものに変更してください。

sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d domain.com -d www.domain.com

プロセスが完了すると、SSL証明書は「 /etc/letsencrypt/live/domain.com/」で利用できるようになります。 "ディレクトリ。

WordPress用の仮想ホストの設定

このステップでは、WordPress用の新しいapache/httpd仮想ホスト構成を追加します。

1.作業ディレクトリを「/etc/httpd/conf.d」に変更します "と新しい構成を作成します"wordpress.conf 「nanoエディターを使用しています。

cd /etc/httpd/conf.d/
nano wordpress.conf

詳細ドメイン名とSSLパスディレクトリを独自のものに変更し、構成を「wordpress.conf」ファイルに貼り付けます。

# httpd port 80
<VirtualHost *:80>
  ServerName domain.com
  ServerAlias www.domain.com

  # automatic redirect http to https
  Redirect permanent / https://domain.com/
</VirtualHost>

# httpd port 443/ssl
<VirtualHost *:443>
  ServerName domain.com
  ServerAlias www.domain.com

  # WordPress path directory
  DocumentRoot /var/www/wordpress

  Protocols h2 http:/1.1

  <If "%{HTTP_HOST} == 'www.domain.com'">
    Redirect permanent / https://domain.com/
  </If>
 
  ErrorLog /var/log/httpd/domain.com-error.log
  CustomLog /var/log/httpd/domain.com-access.log combined

  SSLEngine On
  SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
 
  SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
  SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
  SSLCompression off

  <Directory /var/www/wordpress/>
       Options FollowSymlinks
       AllowOverride All
       Require all granted
  </Directory>
 
  <Directory /var/www/wordpress/>
       RewriteEngine on
       RewriteBase /
       RewriteCond %{REQUEST_FILENAME} !-f
       RewriteRule ^(.*) index.php [PT,L]
  </Directory>
</VirtualHost>

Ctrl+ x」を押します 「」と入力し、「 Y」と入力します "構成を保存して終了します。

3.次に、次のコマンドを実行してhttpd構成を確認します。

sudo apachectl configtest

エラーが発生しない場合は、以下のコマンドを使用してhttpdサービスを再起動します。

sudo systemctl restart httpd

これで、WebブラウザからWordPressをインストールする準備が整いました。

WordPressのインストール

関連するすべてのサーバー構成が完了すると、Webブラウザーを使用してWordPressのインストールにアクセスできます。

1. Webブラウザーを開き、WordPressインストールのURLアドレスを入力します。

http://domain.com

これで、安全なHTTPS接続にリダイレクトされ、次のようなページが表示されます。

WordPressのインストールに使用する言語を選択します。デフォルトは、「英語(米国)」です。 "をクリックし、[続行]をクリックします "。

2.「サイトタイトル」と入力します "そして新しいユーザー名を入力します 、メール 、およびパスワード WordPressのインストール用。

次に、[WordPressのインストール]ボタンをクリックします 「インストールを開始します。

3.インストールが完了すると、次のページが表示されます。

[ログイン]をクリックします 'ボタンをクリックして続行します。

4.これで、WordPressのログインページにリダイレクトされます。

ユーザー名とパスワードを入力し、[ログイン]をクリックします "。

5.デフォルトのWordPressインデックスページが表示されます。

6.カーソルをメニュー[マイブログ]に移動します "をクリックし、[ダッシュボード]をクリックします "または"テーマ "、以下のようにWordPress管理ダッシュボードが表示されます。

7. WordPressプラグインをインストールするには、カーソルを「プラグイン」に移動します [メニュー]をクリックし、[新規追加]をクリックします '、その後、プラグインページにリダイレクトされます。

インストールするプラグインを選択し、[今すぐインストール]をクリックします "をクリックすると、[アクティブ化]をクリックできます プラグインをアクティブ化するための「」ボタン。

結論

おめでとうございます! RockyLinuxサーバーにLAMPスタックを備えたWordPressCMSが正常にインストールされました。以下は、このチュートリアルで学んだことです:

  • LAMPスタックのインストール
  • MariaDBデプロイメントの保護
  • mysql/mariadbシェルからmysqlデータベースとユーザーを作成します
  • certbotwebrootプラグイン用のapache/httpdWebサーバーのセットアップ
  • SSLLetsencryptを生成する
  • 最後はWordPressのインストールです

次のステップでは、テーマを選択または購入して、WordPressにインストールできます。


Rocky Linux
  1. RockyLinux8にNGINX用のLet'sEncryptSSLをインストールする方法

  2. Arch LinuxにApache、MariaDB、PHP7を使用してWordPressをインストールする方法

  3. Rocky Linux 8にLEMP(Nginx、MariaDB、PHP)を使用してWordPressをインストールする方法は?

  1. NGINXを使用してShopwareをインストールし、CentOS7で暗号化する方法

  2. NGINXを使用してShopwareをインストールし、Fedora30で暗号化する方法

  3. Nginxを使用してWordPressをインストールし、CentOS8でSSLを暗号化する方法

  1. Nginxを使用してDokuWikiをインストールし、CentOS8でSSLを暗号化する方法

  2. Nginxを使用してX-Cartをインストールし、Ubuntu18.04LTSでSSLを暗号化する方法

  3. RockyLinuxにNextcloudをインストールする方法