This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
lemp-install [2020/10/22 10:54] – gwsadmin | lemp-install [2023/05/17 22:52] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 15: | Line 15: | ||
sudo ufw allow http https | sudo ufw allow http https | ||
+ | |||
</ | </ | ||
+ | |||
* Create a directory for your webserver files etc - but change this to your own preferences | * Create a directory for your webserver files etc - but change this to your own preferences | ||
<code bash> | <code bash> | ||
sudo mkdir / | sudo mkdir / | ||
+ | |||
</ | </ | ||
+ | |||
* Change the permission so Nginx can use this folder: | * Change the permission so Nginx can use this folder: | ||
<code bash> | <code bash> | ||
sudo chown www-data: | sudo chown www-data: | ||
+ | |||
</ | </ | ||
Line 35: | Line 40: | ||
<code bash> | <code bash> | ||
- | sudo apt install | + | sudo apt install |
- | sudo systemctl start MariaDB | + | sudo systemctl start mariadb |
- | sudo systemctl enable | + | sudo systemctl enable |
</ | </ | ||
+ | |||
* Now secure MariaDB by typing this: | * Now secure MariaDB by typing this: | ||
<code bash> | <code bash> | ||
sudo mysql_secure_installation | sudo mysql_secure_installation | ||
+ | |||
</ | </ | ||
Line 65: | Line 73: | ||
sudo systemctl enable php7.4-fpm | sudo systemctl enable php7.4-fpm | ||
+ | |||
</ | </ | ||
+ | |||
==== Create your default server block ==== | ==== Create your default server block ==== | ||
Line 73: | Line 83: | ||
<code bash> | <code bash> | ||
sudo rm / | sudo rm / | ||
+ | |||
</ | </ | ||
+ | |||
* Now create the server block, | * Now create the server block, | ||
<code bash> | <code bash> | ||
sudo nano / | sudo nano / | ||
+ | |||
</ | </ | ||
+ | |||
* Copy/Paste all this into the new config file | * Copy/Paste all this into the new config file | ||
Line 116: | Line 130: | ||
} | } | ||
} | } | ||
+ | |||
</ | </ | ||
+ | |||
* Reload Nginx | * Reload Nginx | ||
Line 124: | Line 140: | ||
sudo systemctl reload nginx | sudo systemctl reload nginx | ||
+ | |||
</ | </ | ||
+ | |||
* Test Nginx and PHP are working by creeating an info.php in the webroot directory | * Test Nginx and PHP are working by creeating an info.php in the webroot directory | ||
<code bash> | <code bash> | ||
sudo nano / | sudo nano / | ||
+ | |||
</ | </ | ||
+ | |||
* Paste the following into the file | * Paste the following into the file | ||
<code php> | <code php> | ||
<?php phpinfo(); ?> | <?php phpinfo(); ?> | ||
+ | |||
</ | </ | ||
- | | + | |
+ | | ||
<code bash> | <code bash> | ||
sudo rm / | sudo rm / | ||
+ | |||
</ | </ | ||
Line 147: | Line 170: | ||
**Congratulations! You now have a working Web Server!** | **Congratulations! You now have a working Web Server!** | ||
- | ==== | + | ==== Install PHPmyadmin ==== |
* Open terminal and run these: | * Open terminal and run these: | ||
Line 155: | Line 178: | ||
sudo apt install phpmyadmin | sudo apt install phpmyadmin | ||
+ | |||
</ | </ | ||
+ | |||
* Create a new server block, for best results, have PHPmyadmin run in a subdomain. | * Create a new server block, for best results, have PHPmyadmin run in a subdomain. | ||
<code bash> | <code bash> | ||
sudo nano / | sudo nano / | ||
+ | |||
</ | </ | ||
+ | |||
* Copy/Paste all this into the new config file. | * Copy/Paste all this into the new config file. | ||
Line 195: | Line 222: | ||
} | } | ||
} | } | ||
+ | |||
</ | </ | ||
+ | |||
* Reload Nginx | * Reload Nginx | ||
Line 203: | Line 232: | ||
sudo systemctl reload nginx | sudo systemctl reload nginx | ||
+ | |||
</ | </ | ||
+ | |||
==== Install Certbot ==== | ==== Install Certbot ==== | ||
Line 211: | Line 242: | ||
<code bash> | <code bash> | ||
sudo apt install certbot python3-certbot-nginx | sudo apt install certbot python3-certbot-nginx | ||
+ | |||
</ | </ | ||
+ | |||
* Run certbot | * Run certbot | ||
<code bash> | <code bash> | ||
sudo certbot --nginx | sudo certbot --nginx | ||
+ | |||
</ | </ | ||
+ | |||
+ | * Respond to prompts from '' | ||
+ | |||
+ | ==== Add new SQL user ==== | ||
+ | |||
+ | As we have secured MariaDB we need to add a user for PHPmyadmin for you to log in. | ||
+ | |||
+ | * Run these commands: | ||
+ | |||
+ | <code mysql> | ||
+ | sudo mariadb -u root | ||
+ | |||
+ | create user ' | ||
+ | |||
+ | grant all privileges on *.* to ' | ||
+ | |||
+ | flush privileges; | ||
+ | |||
+ | exit; | ||
+ | |||
+ | |||
+ | </ | ||
+ | |||
+ | **Login to PHPmyadmin via your domain name, and now you have a secure web server with a secure database server!** | ||