diff --git a/SERVER_INSTALL.md b/SERVER_INSTALL.md index 4cd5ca93..6a45c171 100644 --- a/SERVER_INSTALL.md +++ b/SERVER_INSTALL.md @@ -59,3 +59,124 @@ memory_limit = 256M ## Configure database server `sudo mysql_secure_installation` +``` +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): +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] n + ... skipping. + +You already have your root account protected, so you can safely answer 'n'. + +Change the root password? [Y/n] y +New password: +Re-enter new password: +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! +``` +## Create database for xenomporio +`mysql -u root -p` + +``` +Welcome to the MariaDB monitor. Commands end with ; or \g. +Your MariaDB connection id is 41 +Server version: 10.6.7-MariaDB-2ubuntu1 Ubuntu 22.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 xenomporio; +Query OK, 1 row affected (0.001 sec) + +MariaDB [(none)]> CREATE USER 'xenomporio'@'localhost' IDENTIFIED BY 'enteryourpasswordhere'; +Query OK, 0 rows affected (0.015 sec) + +MariaDB [(none)]> GRANT ALL PRIVILEGES ON xenomporio.* TO 'xenomporio'@'localhost' WITH GRANT OPTION; +Query OK, 0 rows affected (0.012 sec) + +MariaDB [(none)]> FLUSH PRIVILEGES; +Query OK, 0 rows affected (0.002 sec) + +MariaDB [(none)]> quit +Bye + +``` + +You can test your database like this: +`mysql -u xenomporio -p` + +``` +Enter password: +Welcome to the MariaDB monitor. Commands end with ; or \g. +Your MariaDB connection id is 44 +Server version: 10.6.7-MariaDB-2ubuntu1 Ubuntu 22.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)]> show databases; ++--------------------+ +| Database | ++--------------------+ +| information_schema | +| xenomporio | ++--------------------+ +2 rows in set (0.001 sec) + +MariaDB [(none)]> quit +Bye +```