Difference between revisions of "WebServer - Basic LAMP Stack Install"

From The TinkerNet Wiki
Jump to navigation Jump to search
Line 5: Line 5:
  
 
===Install the LAMP Stack===
 
===Install the LAMP Stack===
 +
Note:  On Mint 19.3, this installs php 7.2.24. On Mint 20, this installs php 7.4.3.  This MIGHT be an important point to keep in mind for later...
  
 
*<code>sudo apt install apache2 libapache2-mod-php php-xml php-mbstring php-apcu php-intl imagemagick inkscape php-gd php-cli php-cgi php mysql-server mysql-client php-mysql</code>
 
*<code>sudo apt install apache2 libapache2-mod-php php-xml php-mbstring php-apcu php-intl imagemagick inkscape php-gd php-cli php-cgi php mysql-server mysql-client php-mysql</code>
Line 17: Line 18:
 
**<u>Would you like to setup VALIDATE PASSWORD component?</u>
 
**<u>Would you like to setup VALIDATE PASSWORD component?</u>
 
***I select No (because I'd rather manage my own password policies, thanks...)
 
***I select No (because I'd rather manage my own password policies, thanks...)
** '''''root password'''''
+
**'''''root password'''''
 
***<u>Please set the password for root here.</u>
 
***<u>Please set the password for root here.</u>
 
****Pick a good '''root''' password...
 
****Pick a good '''root''' password...

Revision as of 12:10, 26 September 2020

Install the LAMP Stack

Note: On Mint 19.3, this installs php 7.2.24. On Mint 20, this installs php 7.4.3. This MIGHT be an important point to keep in mind for later...

  • sudo apt install apache2 libapache2-mod-php php-xml php-mbstring php-apcu php-intl imagemagick inkscape php-gd php-cli php-cgi php mysql-server mysql-client php-mysql
    • Say Yes to Continue
    • Configuring mysql-community-server (Doesn't happen on Mint)
      • Pick a good root password...
      • I tend to select Use Legacy Authentication Method because Use Strong Password Encryption is annoying as hell. (Your choice here...)

Configure MySQL

  • sudo mysql_secure_installation
    • Would you like to setup VALIDATE PASSWORD component?
      • I select No (because I'd rather manage my own password policies, thanks...)
    • root password
      • Please set the password for root here.
        • Pick a good root password...
    • or... (depends on install...)
      • Using existing password for root.
        • Say No
    • Remove anonymous users?
      • Duh... Yes
    • Disallow root login remotely?
      • Your choice, but I tend to say No.
    • Remove test database and access to it?
      • Duh... Yes again.
    • Reload privilege tables now?
      • Yes
  • (Extra Instructions if you've never configured MySQL before)

& Test it

  • sudo vi /var/www/html/info.php
<?php 
phpinfo();
?>

Browse to http://ServerAddress/ & you should see the default page.

Browse to http://ServerAddress/info.php & you should see a whole bunch of info about your PHP subsystem.

Set up at least one user in mysql

  • sudo mysql -u root -p
CREATE USER 'someone'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;

(Hint: This'd be a good time to create yourself as that user with your non-admin password of choice...)