Contents
1. MariaDB Install
1. 1Install
1 |
# apt -y install mariadb-server |
1.2. MariaDB Server Security Settings
Run the tool mysql_secure_installation to configure security-related settings for the MariaDB server.
Once executed, the tool will start several security settings in the form of questions. First, you will be asked if you want to use a plugin for password validation, as shown below.
Password validation is a plugin that checks the strength of a user's password for MariaDB and restricts it to accepting only passwords that are secure enough. For example, it must be at least as many characters long as the user's password and must contain at least one symbol and one number. You can set this requirement by asking the following question
Type y and press Enter if you like
1 2 |
# systemctl restart mariadb # mysql_secure_installation |
Installation Status
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here. Enter current password for root (enter for none): Enter OK, successfully used password, moving on... Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation. You already have your root account protected, so you can safely answer 'n'. Switch to unix_socket authentication [Y/n] Y Enabled successfully! Reloading privilege tables.. ... Success! You already have your root account protected, so you can safely answer 'n'. Change the root password? [Y/n] Y New password: ←Any password Re-enter new password: ←Password above again Password updated successfully! Reloading privilege tables.. ... Success! 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! 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! 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! 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! |
From now on, when you access MariaDB, you must use the
1 2 |
# mariadb -u root -p Enter password: (Enter the password set above |
2.WordPress Install
2.1 Create database
Create a database for Word Press (for example, in this case, the database name is "wp_db", the user name is "wp_user", and the password is "?Y123456y")
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# mariadb -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 42 Server version: 10.11.2-MariaDB-1 Ubuntu 23.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database wp_db; Query OK, 1 row affected (0.001 sec) MariaDB [(none)]> create user 'wp_user'@'localhost' identified by '?Y123456y'; Query OK, 0 rows affected (0.002 sec) MariaDB [(none)]> grant all on wp_db.* to 'wp_user'@'localhost'; Query OK, 0 rows affected (0.003 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.001 sec) MariaDB [(none)]> exit Bye |
2.2 WordPress Download and Install
①Download and Deployment
1 2 3 |
# cd /var/www/html/<FQDN> # wget http://wordpress.org/latest.tar.gz # tar xvf latest.tar.gz |
②Edit WordPress configuration file
1 2 3 |
# cd wordpress/ # cp wp-config-sample.php wp-config.php # vi wp-config.php |
Edit contents of wp-config.php
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// ** Database settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'wp_db'); ←Database name created in "2.1 Database Creation" /** Database username */ define('DB_USER', 'wp_user'); ←User name created in "2.1 Database Creation" /** Database hostname */ define('DB_PASSWORD', '?Y123456y'); ←Password for the user created in "2.1 Database Creation" Also, add the following to the last line. If you do not do this, you will be asked for what amounts to FTP connection information when you add the plugin. define('FS_METHOD', 'direct'); |
③Moving Files
1 2 |
# cd /var/www/html/<FQDN> # mv wordpress/* . |
After confirming that the files have been moved, delete the wordpress directory and the downloaded latest.tar.gz
1 2 |
# rm -R -f wordpress # rm latest.tar.gz |
④Make apache the owner of the wordpress directory
1 |
# chown -R www-data:www-data /var/www/html/<FQDN> |
⑤Access from a browser
Access http://FQDN/wp-admin.
If successful, the following WordPress installation information input screen will be output.
「Your PHP installation appears to be missing the MySQL extension which is required by WordPress.」When displayed
Install php library-related software if not already installed.
1 |
# apt -y install php8.1-gd php8.1-mbstring |
Install MYSQL Module
WordPress requires PHP's MYSQL module; install PHP's MYSQL module if not already installed。
1 |
# apt -y install php8.1 php8.1-mysql libapache2-mod-php8.1 php8.1-mysql |
Restart Apache after installation is complete.
1 |
# systemctl restart apache2 |
On the following input screen
Site Title Any name
Username Any name
Password Any password
Your Email Administrator's email address
Enter the information and click "Install WordPress". Remember to enter your "username" and "password" as they are required to access the WordPress administration screen.