Εγκατάσταση Lamp stack Σε Ubuntu 16.04 (Apache, PHP, MariaDB)

egkatastasi-lamp-stack

Ο Apache είναι ο πιο διαδεδομένος web server αυτή τη στιγμή και εξυπηρετεί πάνω από το 50% των σελίδων που βρίσκονται online. Πολύ τον θεωρούν μονόδρομο όταν πρόκειται για Open Source λογισμικό και Gnu/Linux Servers , αν και υπάρχει ο επίσης διαδεδομένος nginx που θα δούμε σε επόμενο άρθρο.

Σε αυτό το άρθρο θα δούμε πως μπορούμε να εγκαταστήσουμε το Lamp stack σε ένα καινούργιο VM ή dedicated server που τρέχει Ubuntu 16.04, για τη φιλοξενία σελίδων όπως Joomla! και WordPress.

Για να ολοκληρώσουμε με επιτυχία αυτόν τον οδηγό χρειαζόμαστε ένα λογαριασμό με δικαιώματα χρήσης της εντολής sudo

Βήμα 1, Ενημέρωση αποθετηρίων και λογισμικού.

Πριν ξεκινήσουμε είναι καλό να επιβεβαιώσουμε ότι έχουμε τις τελευταίες εκδόσεις αποθετηρίων και λογισμικού. Άρα πληκτρολογούμε:

sudo apt update
sudo apt upgrade -y

Βήμα 2, Εγκατάσταση Apache:

H Εγκατάσταση του Apache, όπου θα είναι ο Web Server μας, είναι απλή και γρήγορη με τη χρήση της παρακάτω εντολής:

sudo apt install apache2 -y

Εάν έχουμε ενεργοποιημένο το firewall δε ξεχνάμε να ανοίξουμε τις θύρες 80 και 443 στις οποίες θα δουλεύει ο web server:

sudo ufw allow in "Apache Full"

Αν όλα τα παραπάνω βήματα έγιναν με σωστό τρόπο, πληκτρολογώντας την IP του συστήματος μας σε ένα browser θα πρέπει να εμφανιστεί η βασική σελίδα του Apache (παρόμοια με την παρακάτω εικόνα).
default_apache

Βήμα 3, Εγκατάσταση ΜySQL(MariaDB):

Η MariaDB είναι είναι μία παραμετροποιημένη έκδοση της MySQL με πολλές βελτιώσεις και πιο διαδεδομένη στην open source community. H διαδικασία είναι λίγο πιο περίπλοκη από πριν, καθώς θα χρειαστεί πρώτα να περάσουμε το αποθετήριο της MariaDB πληκτρολογώντας την παρακάτω ακολουθία εντολών:

sudo apt install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.cc.uoc.gr/mirrors/mariadb/repo/10.1/ubuntu xenial main'

Πλέον έχουμε περάσει το αποθετήριο και μπορούμε να την εγκαταστήσουμε με τον ίδιο τρόπο που θα κάναμε εγκατάσταση σε ένα οποιοδήποτε άλλο πακέτο:

sudo apt update
sudo apt install mariadb-server -y

Τέλος, τρέχουμε τη παρακάτω εντολή για να αποκτήσουμε μόνιμα δικαιώματα υπερχρήστη. (Διαφορετικά στο επόμενο βήμα θα εμφάνιζε σφάλμα):

sudo su

Αμέσως μετά πρέπει να τρέξουμε τον οδηγό που θα κάνει κάποιες ρυθμίσεις ασφαλείας πάνω στη MariaDB:

mysql_secure_installation

Στην αρχή μας ζητάει τον τρέχων κωδικό του root. Tο αφήνουμε κενό, (εφόσων κενό είναι σαν προεπιλογή μετά την εγκατάσταση) και πατάμε enter. Θα εμφανίσει το παρακάτω κείμενο:

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
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):

Στην επόμενο μήνυμα μας ρωτάει αν θέλουμε να βάλουμε κωδικό υπερχρήστη για τη MySQL. Επιλέγουμε Y και πληκτρολογούμε τον κωδικό που επιθυμούμε.

OK, successfully used password, moving on…

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorization.

Set root password? [Y/n]

New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!

Η επόμενη ερώτηση αφορά την διαγραφή κάποιον χρηστών που δημιουργήθηκαν αυτόματα κατά την εγκατάσταση Δεν τους χρειαζόμαστε πλέον, άρα επιλέγουμε Υ

Remove anonymous users? [Y/n] 

Στην συνέχεια, αν δεν έχουμε κάποιο συγκεκριμένο λόγο που να θέλουμε ο root να μπορεί να κάνει login από άλλο μηχάνημα, επιλέγουμε Y:

Disallow root login remotely? [Y/n] 

Αμέσως μετά μας ρωτάει αν θέλουμε να αφαιρέσουμε την test database που έχει προ εγκατεστημένη. Επιλέγουμε και εδώ Υ.

Remove test database and access to it? [Y/n]

Και τέλος, μας ρωτάει αν θέλουμε να φορτώσει τα νέα δικαιώματα, όπου και εδώ επιλέγουμε Υ

Reload privilege tables now? [Y/n] Υ

Έχουμε πλέον τελειώσει την εγκατάσταση. Πλέον η MariaDB είναι εγκατεστημένη με επιτυχία και τρέχει στο σύστημα μας.

Βήμα 4, Εγκατάσταση PHP 7.0:

H PHP 7.0 είναι η νεότερη έκδοση της PHP με πολλές βελτιώσεις στο κομμάτι της ταχύτητας. Πέραν από το βασικό πακέτο, θα χρειαστεί να περάσουμε και κάποια extra πρόσθετα της PHP για να τρέχει χωρίς πρόβλημα η σελίδα μας. Όλα αυτά θα γίνουν εύκολα, με την χρήση μίας εντολής.

sudo apt install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0 php7.0 php7.0-intl php7.0-gd php7.0-mcrypt php7.0-xml php7.0-zip php7.0-mbstring php7.0-soap

Κάνουμε επανεκκίνηση τον Apache για να πάρει τις καινούργιες ρυθμίσεις της PHP και να ελέγξουμε ότι λειτουργεί και αυτή χωρίς πρόβλημα.

service apache2 restart

Διαγράφουμε το default αρχείο του Apache που βρίσκετε στο /var/www/html/index.html

rm /var/www/html/index.html

Στην συνέχεια φτιάχνουμε ένα καινούργιο αρχείο PHP με τη συνάρτηση phpinfo() μέσα:

nano /var/www/html/index.php

προσθέτουμε το παρακάτω στο κειμενογράφο:

<?php
phpinfo();

Πατάμε Ctrl+X για έξοδο και Υ για αποθήκευση.
Πλέον κάνοντας refresh στο browser, αντί για τη default σελίδα του Apache θα πρέπει να εμφανίζεται μια αντίστοιχη σελίδα με πληροφορίες για την PHP.

php

Για λόγους ασφαλείας είναι καλό να αφαιρέσουμε την phpinfo() μετά τον έλεγχο μας. Έτσι θα αποφύγουμε να εκθέσουμε σε τρίτους σημαντικές πληροφορίες για το server μας:

rm /var/www/html/index.php

Με αυτόν τον τρόπο πλέον έχουμε έναν πλήρη και λειτουργικό Web Server βασισμένο σε Apache, ικανό να φιλοξενήσει οποιαδήποτε ιστοσελίδα. Ο χρόνος ολοκλήρωσης του παραπάνω οδηγού σε ένα νέο μηχάνημα υπολογίζεται περίπου στα 30 λεπτά.

Μην διστάσετε να αφήσετε σχόλιο για οποιαδήποτε απορία ή παρατήρηση που μπορεί να έχετε.

2 comments: On Εγκατάσταση Lamp stack Σε Ubuntu 16.04 (Apache, PHP, MariaDB)

Site Footer