基本環境#
システム環境:
CentOS Stream 9
ソフトウェア環境:
Apache-2.4.57
Mysql-8.0.36(mariaDB)
PHP-8.0.30
デプロイプロセス#
セキュリティポリシーの設定#
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all
Apache のインストール#
yum -y install httpd
systemctl start httpd
systemctl enable httpd
# バージョンを確認
httpd -v
PHP のインストール#
# PHPの関連モジュールをインストール
yum -y install php php-curl php-dom php-exif php-fileinfo php-fpm php-gd php-hash php-mbstring php-mysqli php-openssl php-pcre php-xml
# バージョンを確認
php -v
# PHPをテスト
echo "<?php phpinfo(); ?>" > /var/www/html/test.php
# ブラウザでhttp://ローカルIP/test.phpにアクセス
# テストケースを削除
rm -f /var/www/html/test.php
Mysql のインストール#
yum -y install mysql-server
# バージョンを確認
mysql -V
systemctl start mysqld
systemctl enable mysqld
# MySQLの初期パスワードを確認
grep "password" /var/log/mysql/mysqld.log
# MySQLのセキュリティ設定
mysql_secure_installation
MySQL サーバーのデプロイを保護しています。
空のパスワードで MySQL に接続しています。
VALIDATE PASSWORD COMPONENT を使用してパスワードをテストし
セキュリティを向上させることができます。これはパスワードの強度をチェックし、
ユーザーが十分に安全なパスワードのみを設定できるようにします。VALIDATE PASSWORD コンポーネントを設定しますか?はいの場合は y|Y を押し、いいえの場合は他のキーを押してください: y
パスワード検証ポリシーには 3 つのレベルがあります:
LOW 長さ >= 8
MEDIUM 長さ >= 8、数字、大文字小文字、特殊文字
STRONG 長さ >= 8、数字、大文字小文字、特殊文字、辞書ファイル0 = LOW、1 = MEDIUM、2 = STRONG を入力してください: 0
ここで root のパスワードを設定してください。新しいパスワード:
新しいパスワードを再入力:
パスワードの推定強度: 50
提供されたパスワードで続行しますか?(はいの場合は y|Y を押し、いいえの場合は他のキーを押してください): y
デフォルトでは、MySQL インストールには匿名ユーザーがあり、
誰でもユーザーアカウントを作成せずに MySQL にログインできます。これはテスト用のみであり、
インストールを少しスムーズにするためのものです。
本番環境に移行する前に削除する必要があります。
匿名ユーザーを削除しますか?(はいの場合は y|Y を押し、いいえの場合は他のキーを押してください): y
成功。通常、root は「localhost」からのみ接続を許可されるべきです。これにより、誰かがネットワークから
root パスワードを推測できないようにします。
リモートでの root ログインを禁止しますか?(はいの場合は y|Y を押し、いいえの場合は他のキーを押してください): y
成功。デフォルトでは、MySQL には「test」という名前のデータベースがあり、
誰でもアクセスできます。これもテスト用のみであり、
本番環境に移行する前に削除する必要があります。
テストデータベースとそのアクセスを削除しますか?(はいの場合は y|Y を押し、いいえの場合は他のキーを押してください): y
- テストデータベースを削除中…
成功。- テストデータベースの権限を削除中…
成功。権限テーブルを再読み込みすると、これまでのすべての変更が即座に有効になります。
権限テーブルを今すぐ再読み込みしますか?(はいの場合は y|Y を押し、いいえの場合は他のキーを押してください): y
成功。すべて完了!
検証テスト#
WordPress をインストールして LAMP の検証テストを行います。
(1)WordPress をダウンロードして設定
cd /var/www/html/
# ダウンロード解凍ツールをインストール
yum -y install wget tar
# WordPressプログラムをダウンロードして解凍
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
tar zxvf latest-zh_CN.tar.gz
(2)データベースを作成
create user 'wordpress'@'localhost' identified by 'wordpress@123';
grant all privileges on wordpress.* to 'wordpress'@'localhost';
flush privileges;
exit;
(3)サービスを再起動
systemctl restart httpd
(4)WordPress 初期設定
/var/www/html/wordpress
に wp-config.php ファイルを作成します。
vi /var/www/html/wordpress/wp-config.php
**************************wp-config.php**************************
<?php
/**
* WordPress 基本設定ファイル
*
* このファイルはインストーラーによって自動的にwp-config.php設定ファイルを生成するために使用されます。
* ウェブサイトを使用する必要はなく、このファイルを「wp-config.php」にコピーしてこれらの値を記入できます。
*
* このファイルには以下の設定オプションが含まれています:
*
* * データベース設定
* * キー
* * データベーステーブルのプレフィックス
* * ABSPATH
*
* @link https://wordpress.org/documentation/article/editing-wp-config-php/
*
* @package WordPress
*/
// ** データベース設定 - これらの情報はホストから取得できます ** //
/** WordPress データベース名 */
define( 'DB_NAME', 'wordpress' );
/** データベースユーザー名 */
define( 'DB_USER', 'wordpress' );
/** データベースパスワード */
define( 'DB_PASSWORD', 'wordpress@123' );
/** データベースホスト */
define( 'DB_HOST', 'localhost' );
/** テーブル作成時に使用するデータベース文字セット。 */
define( 'DB_CHARSET', 'utf8mb4' );
/** データベースの照合順序タイプ。不明な場合は変更しないでください。 */
define( 'DB_COLLATE', '' );
/**#@+
* 認証ユニークキーとソルト。
*
* これらを任意のユニークな文字列に変更してください!使用することができます
* {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org キーサービス}
* これらを生成します。
*
* これらの内容をいつでも変更してすべての既存のクッキーを無効にできます。
* これにより、すべてのユーザーが再ログインする必要があります。
*
* @since 2.6.0
*/
define( 'AUTH_KEY', 'T]opAWiO&i]=T0%gG|Cr8ZiHC4(AjG3#,Oa%Z,Xus}tB:CMH*m?TAJ!g8rCgn9G{' );
define( 'SECURE_AUTH_KEY', 'u]bD9(4N<|LD=!XlaLf8mI5vQM!!Wy,`=9[2g1g86Cp~EZnUe$q{P3W.[aH$n,bV' );
define( 'LOGGED_IN_KEY', '-}sR0i@QOgDAbYWs:blZjDaJF-NdN|l5Vtiw2kVy(TUd0]:7~_)Lsg(t5kP>FVs~' );
define( 'NONCE_KEY', ':*qn^%vaF;vWh$f/rR*SI8]Er=jpW{bKRWt4/F25b:ULoJGi&:*B{SP9D$Dx]t1=' );
define( 'AUTH_SALT', ':1NyIcq-rH.2Qe@cH{xbKICQ`>!bmz_cKl@SQcLYM]||y9}dII:4j<d~sG~[mGR/' );
define( 'SECURE_AUTH_SALT', 'IRC$m2W;1CZ`PaR315_evXujKAgHr?x1.fLws,8tJ_$g+0EJkY?Y$LF*QXi*7h=l' );
define( 'LOGGED_IN_SALT', 'Zcg^hRDB5DXV<v?NxVNBMoT=s#mFvCw$A%!8{uBdl6EeZ`IhB.~8FNPprKgB>sKZ' );
define( 'NONCE_SALT', 'T#D,{:EEHw`~F~B2%R/TP*Kt-,/-| /](V-MJz7Nr?)XBr~rnEY*Hfs1rwUUMYi-' );
/**#@-*/
/**
* WordPress データベーステーブルのプレフィックス。
*
* 各インストールにユニークなプレフィックスを割り当てることで、
* 1つのデータベースに複数のインストールを持つことができます。
* 数字、文字、アンダースコアのみを使用してください!
*/
$table_prefix = 'wp_';
/**
* 開発者専用:WordPress デバッグモード。
*
* この値をtrueに変更すると、開発中の通知が表示されます。
* プラグインやテーマの開発者は、開発環境でWP_DEBUGを使用することを強く推奨します。
*
* デバッグに使用できる他の定数については、ドキュメントを参照してください。
*
* @link https://wordpress.org/documentation/article/debugging-in-wordpress/
*/
define( 'WP_DEBUG', false );
/**
* 簡体字中国語専用:ICP登録番号の表示
*
* 設定 → 一般でICP登録番号を設定します。
* ショートコード [cn_icp] または関数 cn_icp() を呼び出して表示できます。
*
* @since 6.5.0
* @link https://cn.wordpress.org/support/i10n-features/
*/
define( 'CN_ICP', true );
/**
* 簡体字中国語専用:公安登録番号の表示
*
* 設定 → 一般で公安登録番号を設定します。
* ショートコード [cn_ga] または関数 cn_ga() を呼び出して表示できます。
*
* @since 6.5.0
* @link https://cn.wordpress.org/support/i10n-features/
*/
define( 'CN_GA', true );
/* この行と「編集を停止」行の間にカスタム値を追加します。 */
/* これで、編集を停止!楽しい使用をお祈りします。 */
/** WordPress ディレクトリの絶対パス。 */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
/** WordPress 変数と含まれるファイルを設定します。 */
require_once ABSPATH . 'wp-settings.php';
**************************wp-config.php**************************
ブラウザにhttp://ローカルIP/wordpress
を入力して初期設定を行います。設定が完了し、WordPress にログインした後、LAMP 検証テストが成功しました。