Σε αυτό το άρθρο, θα σας δώσουμε βήμα προς βήμα οδηγίες για το πώς να διαμορφώσετε το περιβάλλον web σε έναν διακομιστή που εκτελεί Linux. Πρώτα πράγματα πρώτα, πρέπει να καταλάβετε ότι ένας τυπικός διακομιστής ιστού αποτελείται από μερικά αλληλεπιδρώντα στοιχεία:
- Διακομιστής HTTP
- διερμηνέας γλώσσας προγραμματισμού
- σύστημα διαχείρισης βάσεων δεδομένων (DBMS)
Για να διαχειριστείτε τον ιστότοπό σας θα χρειαστεί επίσης να ρυθμίσετε ένα σύστημα διαχείρισης περιεχομένου (CMS), μια διεπαφή ιστού για διαχείριση βάσεων δεδομένων και πρόσβαση FTP.
Ας εξετάσουμε το ενδεχόμενο να ρυθμίσουμε μια πολύ δημοφιλή διαμόρφωση Apache-PHP-MySQL(MariaDB) στο Linux. Θα εγκαταστήσουμε επίσης vsftpd ftp server, phpMyAdmin - μια διεπαφή ιστού για διαχείριση βάσεων δεδομένων και ένα σύστημα διαχείρισης περιεχομένου WordPress.
Για να ξεκινήσετε παρακαλώ παραγγελία διακομιστή VPS or dedicated server. Για παράδειγμα, χρησιμοποιήσαμε έναν εικονικό διακομιστή με στατική διεύθυνση IP που εκτελεί το Ubuntu Server 18.04. Όλες οι εντολές εκτελέστηκαν από τον χρήστη root.
Διαμόρφωση διακομιστή HTTP Apache
1. Εγκατάσταση
apt install apache2
Όταν ολοκληρωθεί η εγκατάσταση, ανοίξτε ένα πρόγραμμα περιήγησης και ελέγξτε "http://[server's_ip_address]"
Αν δείτε μια σελίδα καλωσορίσματος όπως αυτή στο παραπάνω στιγμιότυπο οθόνης, αυτό σημαίνει ότι ο διακομιστής HTTP σας λειτουργεί.
2. Δημιουργήστε μια δοκιμαστική σελίδα
Ο προεπιλεγμένος ριζικός κατάλογος για τον ιστότοπο είναι “/var/www/html”. Εδώ μπορείτε να βρείτε τη σελίδα καλωσορίσματος που μόλις είδατε. Ας δημιουργήσουμε έναν ξεχωριστό κατάλογο “/var/www/sites” για εικονικούς κεντρικούς υπολογιστές και έναν υποφάκελο “/var/www/sites/site1” με τη σελίδα ευρετηρίου του δοκιμαστικού ιστότοπού σας.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Στο αποτέλεσμα το αρχείο "/var/www/sites/site1/index.html" πρέπει να περιέχει μόνο μία γραμμή κώδικα html:
<H1>Welcome</H1>
3. Διαμόρφωση διακομιστή Apache
Τα αρχεία ρυθμίσεων των ιστοσελίδων είναι μέσα “/etc/apache2/sites-available/” κατάλογος. Ας δημιουργήσουμε ένα αρχείο διαμόρφωσης για έναν νέο εικονικό κεντρικό υπολογιστή, λαμβάνοντας την προεπιλεγμένη διαμόρφωση από το αρχείο “000-default.conf” ως βάση.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Ανοίξτε το αρχείο "site1.conf" και να αλλάξετε το "DocumentRoot" ιδιότης. Βάλτε τη διαδρομή του ιστότοπού σας ως αξία, έτσι στην περίπτωσή μας είναι “/var/www/sites/site1”
Σε αυτό το στάδιο δεν χρειάζεται να διαμορφώσουμε την ταυτόχρονη λειτουργία πολλών ιστοσελίδων, ώστε να απενεργοποιήσουμε τον προεπιλεγμένο ιστότοπο και να ενεργοποιήσουμε τον νέο ιστότοπο. Φορτώστε ξανά τη διαμόρφωση του διακομιστή για να εφαρμόσετε τις αλλαγές.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Ανοίξτε το σύνδεσμο "http://[διακομιστής _ip_address]" ξανά και βεβαιωθείτε ότι αντί για την προεπιλεγμένη σελίδα καλωσορίσματος έχουμε τη νέα μας σελίδα.
Ολοκληρώσαμε τη διαμόρφωση του διακομιστή HTTP μας και μπορούμε να προχωρήσουμε στο επόμενο βήμα.
Διαμόρφωση διακομιστή FTP
1. Εγκατάσταση
Ας εγκαταστήσουμε τον διακομιστή μας ftp και ένα επιπλέον πακέτο “db-util”, ότι θα χρειαστεί να διαμορφώσουμε εικονικούς χρήστες
apt install vsftpd db-util
2. Δημιουργήστε τοπικό λογαριασμό
Ο διακομιστής vsftpd μας επιτρέπει να διαμορφώνουμε τα δικαιώματα πρόσβασης με πολύ ευέλικτο τρόπο. Για τις εργασίες μας πρέπει να παρέχουμε στους χρήστες ftp τα εξής:
- πλήρη πρόσβαση στα περιεχόμενα του “/var/www/sites/”;
- απενεργοποιήστε όλα τα παραπάνω “/var/www/”;
- σύνδεση με εικονικό λογαριασμό.
Δημιουργήστε έναν τοπικό λογαριασμό "πραγματικός" χωρίς άδεια σύνδεσης αλλά με πρόσβαση στον αρχικό φάκελο “/var/www/”. Αυτός ο λογαριασμός θα χρησιμοποιηθεί από χρήστες ftp για σύνδεση στον διακομιστή
useradd -d /var/www virtual
"Ρίζα" θα είναι ο ιδιοκτήτης του “/var/www” φάκελο από προεπιλογή. Για να επιτρέψουμε στους χρήστες ftp να τροποποιήσουν τα περιεχόμενα των ιστότοπων, ας αλλάξουμε τον κάτοχο του “/var/www/sites/” συμπεριλαμβανομένων των υποφακέλων του "πραγματικός".
chown -R virtual:root /var/www/sites
Ως αποτέλεσμα, ο χρήστης "πραγματικός" θα μπορεί να δει τα περιεχόμενα του “/var/www/” και γράψτε στο “/var/www/sites/” υποφάκελος.
3. διαμόρφωση
Η κύρια διαμόρφωση βρίσκεται στο αρχείο "/etc/vsftpd.conf", ας το ανοίξουμε και ας το επεξεργαστούμε ως εξής:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Δημιουργήστε τη βάση δεδομένων
Θα χρειαστείτε μια βάση δεδομένων για να αποθηκεύσετε δεδομένα εικονικών λογαριασμών.
Αρχικά, ας δημιουργήσουμε ένα απλό αρχείο κειμένου "users.txt" στον αρχικό φάκελο και αποθηκεύστε τα στοιχεία πρόσβασης (σύνδεση και κωδικό πρόσβασης) εικονικών χρηστών σε κάθε άλλη γραμμή. Για παράδειγμα, θα χρειαστούμε έναν εικονικό χρήστη με τη σύνδεση "ftp" και τον κωδικό πρόσβασης “Qwe123”. Τότε το αρχείο θα μοιάζει με αυτό:
ftp
Qwe123
Ας δημιουργήσουμε τη βάση δεδομένων
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Ας τροποποιήσουμε το προεπιλεγμένο αρχείο PAM "/etc/pam.d/vsftp" ως ακολούθως:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Σημειώστε ότι η διαδρομή του "pam_userdb.so" Η βιβλιοθήκη μπορεί να είναι διαφορετική, αλλά μπορείτε να την αλλάξετε εάν χρειάζεται.
Φορτώστε ξανά τον διακομιστή vsftpd για να εφαρμόσετε αλλαγές.
systemctl restart vsftpd
Ολοκληρώσαμε τη διαμόρφωση του διακομιστή FTP.
Λεπτομέρειες σύνδεσης:
- ftp://[διακομιστής_ip_address]
- είσοδος: ftp
- κωδικός πρόσβασης: Qwe123
Διαμόρφωση διακομιστή PHP
1. Εγκατάσταση PHP
Σήμερα η τελευταία σταθερή έκδοση της PHP είναι η php 7.4.5 η οποία δεν περιλαμβάνεται στα επίσημα αποθετήρια του Ubuntu. Ας συνδέσουμε ένα αποθετήριο τρίτου μέρους και ας εγκαταστήσουμε την πιο πρόσφατη έκδοση της PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Ελεγχος
Για να εκτελεστεί η PHP το αρχείο ιστοσελίδας θα πρέπει να έχει ".php" επέκταση. Ας μετονομάσουμε τη δοκιμαστική μας σελίδα:
cd /var/www/sites/site1/
mv index.html index.php
Προσθέστε την ακόλουθη γραμμή php στο αρχείο “/var/www/sites/site1/index.php”, οπότε το αρχείο θα πρέπει να μοιάζει με αυτό:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Αποθηκεύστε τις αλλαγές και ελέγξτε το αποτέλεσμα στο πρόγραμμα περιήγησης.
Εάν δείτε το αποτέλεσμα της λειτουργίας "phpinfo()", ο διερμηνέας PHP λειτουργεί σωστά. Τώρα ας προχωρήσουμε στο επόμενο βήμα.
Διαμόρφωση MySQL (MariaDB).
1. Εγκατάσταση
Ας εγκαταστήσουμε το MariaDB και μια ενότητα PHP για MySQL και, στη συνέχεια, ας φορτώσουμε ξανά τον Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Ανανεώστε τη δοκιμαστική σελίδα και μεταβείτε στην ενότητα PDO στον πίνακα ρυθμίσεων της PHP. Αν μπορείτε να βρείτε την ενότητα "PDO_mysql", τότε σημαίνει ότι το πρόγραμμα οδήγησης για Mysql έχει εγκατασταθεί σωστά.
Στη συνέχεια θα χρειαστεί να κάνουμε την αρχική διαμόρφωση ασφαλείας του MariaDB και να ορίσουμε τον κωδικό πρόσβασης για το "Ρίζα" χρήστη, απενεργοποιήστε την απομακρυσμένη πρόσβαση και διαγράψτε όλους τους λογαριασμούς επισκεπτών.
mysql_secure_installation
Στο πρώτο βήμα, πρέπει να μπούμε στο "ρίζα" κωδικό πρόσβασης χρήστη για πρόσβαση στο DBMS ή πατήστε Enter εάν δεν υπάρχει κωδικός πρόσβασης. Δεδομένου ότι δεν έχει οριστεί κωδικός πρόσβασης για το "ρίζα" χρήστη μετά την εγκατάσταση, απλώς πατήστε "Εισαγω".
Λάβετε υπόψη ότι στη MariaDB υπάρχουν ήδη δικοί της λογαριασμοί που δεν έχουν καμία σχέση με τους λογαριασμούς OS. Άρα ο μόνος χρήστης που έχουμε να κάνουμε στο MariaDB είναι "ρίζα".
Μετά από αυτό, ο διαμορφωτής θα μας ζητήσει να ορίσουμε τον κωδικό πρόσβασης για τον χρήστη root. Τύπος "Υ" για επιβεβαίωση και εισαγωγή του νέου κωδικού πρόσβασης. Στην περίπτωσή μας, είναι “Qwe123”
απάντηση "Υ" σε όλες τις υπόλοιπες ερωτήσεις μέχρι το τέλος.
Η διαμόρφωση έγινε!
Λεπτομέρειες πρόσβασης MariaDB:
- Είσοδος: root
- Κωδικός πρόσβασης: Qwe123
Ρύθμιση παραμέτρων phpMyAdmin
1. Εγκατάσταση
Ας εγκαταστήσουμε την απαραίτητη επέκταση για PHP - mbstring.
apt install php-mbstring
Στο επίσημο αποθετήριο υπάρχει μόνο μια παλιά έκδοση του phpMyAdmin, οπότε ας εγκαταστήσουμε τη νέα χειροκίνητα.
Ανοίξτε την επίσημη ιστοσελίδα του έργου "https://www.phpmyadmin.net/» και κατεβάστε το πιο πρόσφατο αρχείο.
Αντιγράψτε το αρχείο στον διακομιστή στο “/var/www/sites/” φάκελο χρησιμοποιώντας οποιοδήποτε πρόγραμμα-πελάτη ftp.
Καταργήστε την αρχειοθέτηση του φακέλου και μετονομάστε τον σε "phpMyAdmin". Μην ξεχάσετε να εγκαταστήσετε το "ανοίγω φερμουάρ" χρησιμότητα. Μπορείτε να διαγράψετε το αρχείο αφού καταργήσετε την αρχειοθέτησή του.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Δημιουργήστε τον παρακάτω φάκελο "/var/www/sites/phpMyAdmin/tmp" για προσωρινά αρχεία και ενεργοποιήστε την πρόσβαση για όλους. Εάν δεν το κάνετε αυτό, το phpMyAdmin θα αναφέρει ότι δεν επιτρέπεται η πρόσβαση στον προσωρινό φάκελο.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Δημιουργήστε ένα ψευδώνυμο
Επειδή το phpMyAdmin δεν είναι ξεχωριστός εικονικός κεντρικός υπολογιστής και βρίσκεται εκτός του ριζικού καταλόγου, ας διαμορφώσουμε το ψευδώνυμο.
Ανοίξτε το αρχείο "/etc/apache2/mods-available/alias.conf" και προσθέστε αυτή τη γραμμή:
Alias /pma “/var/www/sites/phpMyAdmin"
μέσα σε αυτήν την ενότητα:
<IfModule alias_module>
</IfModule>
Επαναλάβετε τη φόρτωση του Apache για να εφαρμόσετε τις αλλαγές.
systemctl reload apache2
Το ψευδώνυμο έχει οριστεί, οπότε μπορούμε να έχουμε πρόσβαση στο phpMyAdmin εδώ "http://[server's_ip_address]/pma".
3. Προετοιμάστε τη βάση δεδομένων
Εφόσον περιορίσαμε τη χρήση χρήστη root κατά την αρχική διαμόρφωση του MariaDB, θα πρέπει να δημιουργήσουμε έναν νέο λογαριασμό με όλα τα δικαιώματα που θα χρησιμοποιηθούν για την πρόσβαση στο phpMyAdmin.
Επιπλέον, για να ενεργοποιήσουμε πρόσθετες δυνατότητες του phpMyAdmin, θα χρειαστούμε μια βάση δεδομένων υπηρεσιών και έναν λογαριασμό για πρόσβαση σε αυτήν.
Ας δημιουργήσουμε τους λογαριασμούς
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
Λάβετε υπόψη σας ότι το όνομα της βάσης δεδομένων στο δεύτερο αίτημα είναι πίσω από σπινθήρες «… ON `phpmyadmin`.* ΠΡΟΣ 'pma'@'localhost' ΠΟΥ ΑΝΑΓΝΩΡΙΖΕΤΑΙ ΑΠΟ …”,
Ως αποτέλεσμα, θα δημιουργηθούν δύο λογαριασμοί στο MariaDB:
- Είσοδος: pma, Κωδικός πρόσβασης: Qwe123Πλήρης πρόσβαση, θα χρησιμοποιηθεί για τη σύνδεση στο phpMyAdmin
- Είσοδος: pmaservice, Κωδικός πρόσβασης: Qwe123Ο λογαριασμός υπηρεσίας απαιτείται για να λειτουργήσουν πρόσθετες λειτουργίες
Στο επόμενο βήμα, θα ορίσουμε αυτές τις λεπτομέρειες στο αρχείο διαμόρφωσης "config.inc.php".
Στη συνέχεια, θα χρειαστεί να εισαγάγουμε τη βάση δεδομένων από το αρχείο "phpMyAdmin/sql/create_tables.sql".
Ας το εισαγάγουμε με τη βοήθεια του phpMyAdmin.
Ανοίξτε το σύνδεσμο "http://[server's_ip_address]/pma"
Εισαγάγετε τη σύνδεση "pma" και τον κωδικό πρόσβασης “Qwe123”
Πηγαίνετε στο "Εισαγωγή", Κλίκ "Επιλογή αρχείου" και επιλέξτε το αρχείο "sql/create_tables.sql" στον ριζικό κατάλογο του phpMyAdmin. Υποτίθεται ότι υπάρχει ο φάκελος στον υπολογιστή σας "phpMyAdmin" με αρχεία. Καταργήστε την αρχειοθέτησή του εάν είναι απαραίτητο.
Πατήστε "Επόμενος" για να ξεκινήσετε την εισαγωγή.
4. διαμόρφωση
Ας αντιγράψουμε το αρχείο διαμόρφωσης από το πρότυπο
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Ας ανοίξουμε το αρχείο ρυθμίσεων "/var/www/sites/phpMyAdmin/config.inc.php" και κάντε τις εξής αλλαγές:
Ορίστε μια τυχαία τιμή 32 χαρακτήρων για το χαρακτηριστικό "$cfg['blowfish_secret']". Χρησιμοποιήστε οποιοδήποτε πρόγραμμα δημιουργίας κωδικών πρόσβασης για αυτό..
Κατάργηση σχολίων από όλες τις γραμμές του "Ρυθμίσεις αποθήκευσης διαμόρφωσης phpMyAdmin" και ορίστε τα στοιχεία σύνδεσης και τον κωδικό πρόσβασης του λογαριασμού υπηρεσίας της MariaDB για το "ελεγκτής" “Controlpass” χαρακτηριστικά ανάλογα. Στην περίπτωσή μας, είναι pmaservice Qwe123.
Αποθηκεύστε τις αλλαγές.
Λεπτομέρειες πρόσβασης για το phpMyadmin:
- http://[server’s_ip_address]/pma/
- Είσοδος: pma
- Κωδικός πρόσβασης: Qwe123
Πώς να εγκαταστήσετε και να ρυθμίσετε το WordPress σε διακομιστή Linux
1. Τοποθέτηση πακέτου και αρχείων WordPress
Μεταβείτε στον επίσημο ιστότοπο του WP "https://ru.wordpress.org/” και κατεβάστε το αρχείο στον τοπικό σας υπολογιστή.
Ανεβάστε το αρχείο στον διακομιστή στο “/var/www/sites/” φάκελο και καταργήστε την αρχειοθέτησή του στο «wordpress" ντοσιέ.
Αντιγράψτε τα περιεχόμενα του “/var/www/sites/wordpress/” ριζικό φάκελο του “/var/www/sites/site1/” ιστοσελίδα.
Εφόσον αντιγράψαμε τα αρχεία μέσω της κονσόλας με δικαιώματα root, ας αλλάξουμε τον κάτοχο του “/var/www/sites/” φάκελο που περιλαμβάνει τα περιεχόμενα του "πραγματικός". Αυτό απαιτείται για να ενεργοποιηθεί η πλήρης πρόσβαση για σύνδεση ftp μέσω του προγράμματος-πελάτη.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. Δημιουργήστε μια βάση δεδομένων για το WordPress
Συνδεθείτε στο phpMyAdmin και κάντε κλικ στο «Δημιουργία βάσης δεδομένων». Καθορίστε ένα αυθαίρετο όνομα βάσης δεδομένων, στην περίπτωσή μας «wordpress_db» και κάντε κλικ στο κουμπί «Δημιουργία».
Επιλέξτε τη νέα βάση δεδομένων στην αριστερή ενότητα και κάντε κλικ “Προνόμια”
Στη συνέχεια κάντε κλικ στο κουμπί "Προσθήκη λογαριασμού χρήστη".
Εισαγάγετε τη σύνδεση και τον κωδικό πρόσβασης (wpservice / Qwe123) στο παράθυρο που ανοίγει, ελέγξτε "Παροχή όλων των προνομίων στο wordpress_db" και κάντε κλικ στο κουμπί "Επόμενος"
Στην επόμενη σελίδα κάντε κλικ "Ακύρωση όλων" για να επαναφέρετε όλα τα δικαιώματα σε επίπεδο βάσης δεδομένων και κάντε κλικ "Επόμενος".
3. Διαμόρφωση WordPress σε διακομιστή Linux
Μεταβείτε στον ριζικό κατάλογο του ιστότοπού σας και αντιγράψτε το αρχείο ρυθμίσεων από το πρότυπο
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Ανοίξτε το "wp-config.php" αρχείο και εισάγετε τις παραμέτρους σύνδεσης βάσης δεδομένων που δημιουργήσαμε στο προηγούμενο βήμα και αποθηκεύστε τις αλλαγές.
4. Εγκαταστήστε το CMS WordPress
Ανοίξτε τον παρακάτω σύνδεσμο στο πρόγραμμα περιήγησης "http://[server's_ip_address]/wp-admin/install.php".
Συμπληρώστε όλα τα πεδία και κάντε κλικ “Εγκατάσταση WordPress”. Ορίστε ένα τυχαίο όνομα χρήστη και κωδικό πρόσβασης. Στην περίπτωσή μας, είναι πέσει μέσα Qwe123 αναλόγως.
Αυτά τα στοιχεία θα χρησιμοποιηθούν για πρόσβαση στο WordPress.
Αφού ολοκληρώσετε την εγκατάσταση, ανοίξτε τον σύνδεσμο "http://[server's_ip_address]/wp-login.php", εισαγάγετε τα στοιχεία πρόσβασης και συνδεθείτε στο WordPress.
Θα πρέπει να δείτε ένα από τα πρότυπα του WordPress στην κύρια σελίδα.
Η διαμόρφωση έχει ολοκληρωθεί.
Λεπτομέρειες πρόσβασης WordPress:
- http://[server’s_ip_address]/wp-login.php
- Είσοδος: wpadmin
- Κωδικός πρόσβασης: Qwe123