Προαπαιτούμενα
Βήμα 1: Προσθήκη χρήστη Sudo
Βήμα 2: Ενημερώστε το σύστημα Fedora 26
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Βήμα 4: Ανοίξτε τις θύρες τείχους προστασίας Ιστού
Βήμα 5: Απενεργοποιήστε το SELinux
Βήμα 6: Εγκαταστήστε την PHP 7.1
Βήμα 7: Εγκαταστήστε τον διακομιστή MariaDB (MySQL).
Βήμα 8: Δημιουργία βάσης δεδομένων για Redaxscript CMS
Βήμα 9: Εγκαταστήστε τα αρχεία Redaxscript CMS
Βήμα 10: Ολοκληρώστε την εγκατάσταση του Redaxscript CMS
Το Redaxscript 3.2 CMS είναι ένα σύγχρονο και εξαιρετικά ελαφρύ, δωρεάν και ανοιχτού κώδικα Σύστημα Διαχείρισης Περιεχομένου (CMS) με γρήγορη απόδοση. Ο σχεσιακός χάρτης αντικειμένων Redaxscript 3.2 CMS και το fluent query builder παρέχουν ένα προκαθορισμένο και τυποποιημένο επίπεδο αφαίρεσης για βάσεις δεδομένων SQLite, MSSQL, MySQL και PostgreSQL. Οι προγραμματιστές μπορούν να εκτελέσουν μια χρήσιμη συλλογή ισχυρών εντολών από το τερματικό ή το πρόγραμμα περιήγησης, επιτρέποντας αυτοματοποίηση εγκαταστάσεων, δημιουργίας αντιγράφων ασφαλείας, εισαγωγών και πολλών άλλων χρήσιμων εργασιών, με αποτέλεσμα μια ευέλικτη, αποτελεσματική και επεκτάσιμη αρχιτεκτονική συστήματος που βοηθά τους προγραμματιστές να επιτύχουν μέγιστη παραγωγικότητα και απόδοση εφαρμογής.
Σε αυτό το σεμινάριο πρόκειται να εγκαταστήσουμε το Redaxscript 3.2 CMS σε ένα Fedora 26 LAMP VPS χρησιμοποιώντας διακομιστή ιστού Apache, PHP 7.1 και μια βάση δεδομένων MariaDB.
Προαπαιτούμενα
- Μια καθαρή παρουσία διακομιστή Vultr Fedora 26 με πρόσβαση SSH
Βήμα 1: Προσθήκη χρήστη Sudo
Πρώτα, συνδεθείτε στον διακομιστή σας ως root
:
ssh root@YOUR_VULTR_IP_ADDRESS
Προσθέστε έναν νέο χρήστη που ονομάζεται user1
(ή το όνομα χρήστη που προτιμάτε):
useradd user1
Στη συνέχεια, ορίστε τον κωδικό πρόσβασης για τον user1
χρήστη:
passwd user1
Όταν σας ζητηθεί, εισαγάγετε έναν ασφαλή και αξέχαστο κωδικό πρόσβασης.
Τώρα ελέγξτε το /etc/sudoers
αρχείο για να βεβαιωθείτε ότι η sudoers
ομάδα είναι ενεργοποιημένη:
visudo
Αναζητήστε μια ενότητα όπως αυτή:
%wheel ALL=(ALL) ALL
Βεβαιωθείτε ότι δεν έχει σχολιαστεί. Αυτή η γραμμή μας λέει ότι οι χρήστες που είναι μέλη της wheel
ομάδας μπορούν να χρησιμοποιήσουν την sudo
εντολή για να αποκτήσουν root
προνόμια.
Αφού επεξεργαστείτε το αρχείο, μπορείτε να αποθηκεύσετε και να βγείτε πατώντας Esc
και μετά πληκτρολογώντας :wq
για να "εγγράψετε" και να "κλείσετε" το αρχείο.
Στη συνέχεια πρέπει να προσθέσουμε user1
στην wheel
ομάδα:
usermod -aG wheel user1
Μπορούμε να επαληθεύσουμε τη user1
συμμετοχή στην ομάδα και να ελέγξουμε ότι η usermod
εντολή λειτουργούσε με την groups
εντολή:
groups user1
Τώρα χρησιμοποιήστε την su
εντολή για να μεταβείτε στον νέο user1
λογαριασμό χρήστη sudo :
su - user1
Η γραμμή εντολών θα ενημερωθεί για να υποδείξει ότι είστε πλέον συνδεδεμένοι στο user1
λογαριασμό. Μπορείτε να το επαληθεύσετε με την whoami
εντολή:
whoami
Τώρα επανεκκινήστε την sshd
υπηρεσία, ώστε να μπορείτε να συνδεθείτε μέσω ssh
του νέου λογαριασμού χρήστη sudo που δεν είναι root που μόλις δημιουργήσατε:
sudo systemctl restart sshd
Έξοδος από τον user1
λογαριασμό:
exit
Έξοδος από τον root
λογαριασμό (που θα αποσυνδέσει τη ssh
συνεδρία σας ):
exit
Μπορείτε τώρα να εισέλθετε ssh
στην παρουσία διακομιστή από τον τοπικό σας κεντρικό υπολογιστή χρησιμοποιώντας τον νέο user1
λογαριασμό χρήστη sudo που δεν είναι root :
ssh user1@YOUR_VULTR_IP_ADDRESS
Εάν θέλετε να εκτελέσετε sudo χωρίς να χρειάζεται να πληκτρολογείτε κωδικό πρόσβασης κάθε φορά, ανοίξτε /etc/sudoers
ξανά το αρχείο χρησιμοποιώντας visudo
:
sudo visudo
Επεξεργαστείτε την ενότητα για την wheel
ομάδα έτσι ώστε να μοιάζει με αυτό:
%wheel ALL=(ALL) NOPASSWD: ALL
Σημείωση: Η απενεργοποίηση της απαίτησης κωδικού πρόσβασης για τον χρήστη sudo δεν είναι μια συνιστώμενη πρακτική, αλλά περιλαμβάνεται εδώ, καθώς μπορεί να κάνει τη διαμόρφωση του διακομιστή πολύ πιο βολική και λιγότερο ενοχλητική, ειδικά κατά τη διάρκεια μεγαλύτερων περιόδων διαχείρισης συστημάτων. Εάν ανησυχείτε για τις επιπτώσεις στην ασφάλεια, μπορείτε πάντα να επαναφέρετε την αλλαγή διαμόρφωσης στην αρχική, αφού ολοκληρώσετε τις εργασίες διαχείρισης.
Κάθε φορά που θέλετε να συνδεθείτε στον root
λογαριασμό χρήστη μέσα από τον sudo
λογαριασμό χρήστη, μπορείτε να χρησιμοποιήσετε μία από τις ακόλουθες εντολές:
sudo -i
sudo su -
Μπορείτε να βγείτε από τον root
λογαριασμό και να επιστρέψετε στον sudo
λογαριασμό χρήστη σας ανά πάσα στιγμή πληκτρολογώντας απλώς τα εξής:
exit
Βήμα 2: Ενημερώστε το σύστημα Fedora 26
Πριν εγκαταστήσουμε οποιοδήποτε πακέτο στην παρουσία του διακομιστή Fedora, θα ενημερώσουμε πρώτα το σύστημα.
Βεβαιωθείτε ότι έχετε συνδεθεί στον διακομιστή χρησιμοποιώντας έναν χρήστη sudo που δεν είναι root και εκτελέστε την ακόλουθη εντολή:
sudo dnf -y update
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Εγκαταστήστε τον διακομιστή ιστού Apache:
sudo dnf -y install httpd
Στη συνέχεια, χρησιμοποιήστε την systemctl
εντολή για να ξεκινήσετε και να ενεργοποιήσετε τον Apache να εκτελείται αυτόματα κατά την εκκίνηση:
sudo systemctl enable httpd
sudo systemctl start httpd
Ελέγξτε το αρχείο διαμόρφωσης του Apache για να βεβαιωθείτε ότι η DocumentRoot
οδηγία οδηγεί στον σωστό κατάλογο:
sudo vi /etc/httpd/conf/httpd.conf
Η DocumentRoot
επιλογή διαμόρφωσης θα μοιάζει με αυτό:
DocumentRoot "/var/www/html"
Τώρα, ας βεβαιωθούμε ότι η mod_rewrite
μονάδα Apache είναι φορτωμένη. Μπορούμε να το κάνουμε αυτό αναζητώντας τον όρο " mod_rewrite
" στο αρχείο διαμόρφωσης των βασικών μονάδων του Apache .
Ανοίξτε το αρχείο:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Αναζητήστε τον όρο mod_rewrite
.
Εάν mod_rewrite
έχει φορτωθεί η λειτουργική μονάδα Apache, θα βρείτε μια γραμμή διαμόρφωσης που μοιάζει με αυτή:
LoadModule rewrite_module modules/mod_rewrite.so
Εάν η παραπάνω γραμμή ξεκινά με άνω και κάτω τελεία, θα χρειαστεί να αφαιρέσετε το ερωτηματικό για να καταργήσετε το σχόλιο της γραμμής και να φορτώσετε τη μονάδα. Αυτό, φυσικά, ισχύει και για οποιεσδήποτε άλλες απαιτούμενες μονάδες Apache.
Τώρα πρέπει να επεξεργαστούμε το προεπιλεγμένο αρχείο ρυθμίσεων του Apache, ώστε mod_rewrite
να λειτουργεί σωστά με το Redaxscript CMS.
Ανοίξτε το αρχείο:
sudo vi /etc/httpd/conf/httpd.conf
Στη συνέχεια, βρείτε την ενότητα που ξεκινά με <Directory "/var/www/html">
και αλλάξτε AllowOverride none
σε AllowOverride All
. Το τελικό αποτέλεσμα (με όλα τα σχόλια αφαιρεμένα) θα μοιάζει κάπως έτσι:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Τώρα αποθηκεύστε και κλείστε το αρχείο διαμόρφωσης του Apache.
Θα κάνουμε επανεκκίνηση του Apache στο τέλος αυτού του σεμιναρίου, αλλά η τακτική επανεκκίνηση του Apache κατά την εγκατάσταση και τη ρύθμιση παραμέτρων είναι σίγουρα μια καλή συνήθεια, οπότε ας το κάνουμε τώρα:
sudo systemctl restart httpd
Βήμα 4: Ανοίξτε τις θύρες τείχους προστασίας Ιστού
Τώρα πρέπει να ανοίξουμε τις προεπιλογές HTTP
και τις HTTPS
θύρες καθώς θα είναι αποκλεισμένες firewalld
από προεπιλογή.
Ανοίξτε τις θύρες του τείχους προστασίας:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Φορτώστε ξανά το τείχος προστασίας για να εφαρμόσετε τις αλλαγές:
sudo firewall-cmd --reload
Θα δείτε τη λέξη να success
εμφανίζεται στο τερματικό σας μετά από κάθε επιτυχημένη εντολή διαμόρφωσης τείχους προστασίας.
Μπορούμε γρήγορα να επαληθεύσουμε ότι η HTTP
θύρα Apache είναι ανοιχτή μεταβαίνοντας στη διεύθυνση IP ή τον τομέα του στιγμιότυπου διακομιστή σε ένα πρόγραμμα περιήγησης:
http://YOUR_VULTR_IP_ADDRESS/
Θα δείτε την προεπιλεγμένη ιστοσελίδα του Apache στο πρόγραμμα περιήγησής σας.
Βήμα 5: Απενεργοποιήστε το SELinux
Το SELinux σημαίνει "Security Enhanced Linux". Είναι μια βελτίωση ασφαλείας στο Linux που επιτρέπει στους χρήστες και τους διαχειριστές περισσότερο έλεγχο στον έλεγχο πρόσβασης. Είναι ενεργοποιημένο από προεπιλογή στο Fedora 26, αλλά σίγουρα δεν είναι απαραίτητο για την ασφάλεια του διακομιστή, καθώς πολλές διανομές διακομιστή Linux δεν αποστέλλονται με εγκατεστημένο ή ενεργοποιημένο από προεπιλογή.
Για να αποφύγουμε προβλήματα άδειας αρχείων με το Redaxscript CMS αργότερα, θα απενεργοποιήσουμε το SELinux, προς το παρόν. Ανοίξτε το αρχείο διαμόρφωσης SELinux με τον αγαπημένο σας επεξεργαστή τερματικού:
sudo vi /etc/selinux/config
Αλλαγή SELINUX=enforcing
σε SELINUX=disabled
και στη συνέχεια να αποθηκεύσετε το αρχείο.
To apply the configuration change, SELinux requires a server reboot, so you can either restart the server using the Vultr control panel or you can simply use the shutdown
command:
sudo shutdown -r now
When the server reboots, your SSH session will get disconnected and you may see a message informing you about a 'broken pipe'
or 'Connection closed by remote host'
. This is nothing to worry about, simply wait for 20 seconds or so and then SSH back in again (with your own username and domain):
ssh user1@YOUR_DOMAIN
Or (with your own username and IP address):
ssh user1@YOUR_VULTR_IP_ADDRESS
Once you have logged back in, you should check the status of SELinux again with the sestatus
command to make sure it is properly disabled:
sudo sestatus
Θα πρέπει να δείτε ένα μήνυμα που λέει SELinux status: disabled
. Εάν δείτε ένα μήνυμα που λέει SELinux status: enabled
(ή κάτι παρόμοιο), θα χρειαστεί να επαναλάβετε τα παραπάνω βήματα και να βεβαιωθείτε ότι έχετε επανεκκινήσει σωστά τον διακομιστή σας.
Βήμα 6: Εγκαταστήστε την PHP 7.1
Μπορούμε τώρα να εγκαταστήσουμε την PHP 7.1 μαζί με όλες τις απαραίτητες ενότητες PHP που απαιτούνται από το Redaxscript CMS:
sudo dnf -y install php php-mysqlnd php-mbstring php-gd php-common php-pdo php-pecl-imagick php-xml php-zip
Βήμα 7: Εγκαταστήστε τον διακομιστή MariaDB (MySQL).
Το Fedora 26 χρησιμοποιεί ως προεπιλογή τον διακομιστή βάσης δεδομένων MariaDB, ο οποίος είναι ένας βελτιωμένος, πλήρως ανοιχτού κώδικα, αναπτυγμένος από την κοινότητα, drop-in αντικατάσταση του διακομιστή MySQL.
Εγκαταστήστε τον διακομιστή βάσης δεδομένων MariaDB:
sudo dnf -y install mariadb-server
Ξεκινήστε και ενεργοποιήστε τον διακομιστή MariaDB να εκτελείται αυτόματα κατά την εκκίνηση:
sudo systemctl enable mariadb
sudo systemctl start mariadb
Ασφαλίστε την εγκατάσταση του διακομιστή MariaDB:
sudo mysql_secure_installation
Ο root
κωδικός πρόσβασης θα είναι κενός, επομένως απλώς πατήστε enter όταν σας ζητηθεί ο root
κωδικός πρόσβασης.
Όταν σας ζητηθεί να δημιουργήσετε έναν root
χρήστη MariaDB/MySQL , επιλέξτε "Y" (για ναι) και, στη συνέχεια, εισαγάγετε έναν ασφαλή root
κωδικό πρόσβασης. Απλώς απαντήστε "Y" σε όλες τις άλλες ερωτήσεις ναι/όχι καθώς οι προεπιλεγμένες προτάσεις είναι οι πιο ασφαλείς επιλογές.
Βήμα 8: Δημιουργία βάσης δεδομένων για Redaxscript CMS
Συνδεθείτε στο κέλυφος MariaDB ως root
χρήστης MariaDB εκτελώντας την ακόλουθη εντολή:
sudo mysql -u root -p
Για πρόσβαση στη γραμμή εντολών MariaDB, απλώς εισαγάγετε τον root
κωδικό πρόσβασης MariaDB όταν σας ζητηθεί.
Εκτελέστε τα ακόλουθα ερωτήματα για να δημιουργήσετε μια βάση δεδομένων MariaDB και χρήστη βάσης δεδομένων για το Redaxscript CMS:
CREATE DATABASE redax_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'redax_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON redax_db.* TO 'redax_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Μπορείτε να αντικαταστήσετε το όνομα της βάσης δεδομένων redax_db
και το όνομα χρήστη redax_user
με κάτι περισσότερο της αρεσκείας σας, αν προτιμάτε. Επίσης, βεβαιωθείτε ότι έχετε αντικαταστήσει τον "UltraSecurePassword" με έναν πραγματικά ασφαλή κωδικό πρόσβασης.
Βήμα 9: Εγκαταστήστε τα αρχεία Redaxscript CMS
Αλλάξτε τον τρέχοντα κατάλογο εργασίας σας στον προεπιλεγμένο κατάλογο ιστού:
cd /var/www/html/
Εάν λάβετε ένα μήνυμα σφάλματος που λέει κάτι σαν 'No such file or directory'
, δοκιμάστε την ακόλουθη εντολή:
cd /var/www/ ; sudo mkdir html ; cd html
Ο τρέχων κατάλογος εργασίας σας θα είναι τώρα: /var/www/html/
. Μπορείτε να το ελέγξετε με την pwd
εντολή (print working directory):
pwd
Τώρα χρησιμοποιήστε το wget
για λήψη του πακέτου εγκατάστασης Redaxscript CMS:
sudo wget https://redaxscript.com/files/releases/redaxscript-3.2.3-production-full.zip
Σημείωση: Θα πρέπει οπωσδήποτε να ελέγξετε για την πιο πρόσφατη έκδοση μεταβαίνοντας στη σελίδα λήψης του Redaxscript CMS .
Καταχωρίστε τον τρέχοντα κατάλογο για να ελέγξετε ότι κατεβάσατε με επιτυχία το αρχείο:
ls -la
Ας το εγκαταστήσουμε γρήγορα unzip
για να μπορέσουμε να αποσυμπιέσουμε το αρχείο:
sudo dnf -y install unzip
Τώρα αποσυμπιέστε το αρχείο zip:
sudo unzip redaxscript-3.2.3-production-full.zip
Αλλάξτε την ιδιοκτησία των αρχείων Ιστού για να αποφύγετε τυχόν προβλήματα αδειών:
sudo chown -R apache:apache * ./
Επανεκκινήστε ξανά τον Apache:
sudo systemctl restart httpd
Τώρα είμαστε έτοιμοι να προχωρήσουμε στο τελευταίο βήμα.
Βήμα 10: Ολοκληρώστε την εγκατάσταση του Redaxscript CMS
Ήρθε η ώρα να επισκεφτείτε τη διεύθυνση IP της παρουσίας του διακομιστή σας στο πρόγραμμα περιήγησής σας ή εάν έχετε ήδη διαμορφώσει τις ρυθμίσεις του Vultr DNS (και του έχετε δώσει αρκετό χρόνο για να διαδοθεί), μπορείτε απλώς να επισκεφτείτε τον τομέα σας.
Για να αποκτήσετε πρόσβαση στη σελίδα εγκατάστασης του Redaxscript CMS, εισαγάγετε τη διεύθυνση IP της παρουσίας Vultr στη γραμμή διευθύνσεων του προγράμματος περιήγησής σας, ακολουθούμενη από /install.php
:
http://YOUR_VULTR_IP_ADDRESS/install.php
Οι περισσότερες από τις επιλογές εγκατάστασης είναι αυτονόητες, αλλά εδώ είναι μερικές υποδείξεις που θα σας βοηθήσουν:
Εισαγάγετε τις ακόλουθες τιμές βάσης δεδομένων στην Setup your database
ενότητα της Installation
σελίδας:
Type: MySQL
Host: localhost
Name: redax_db
User: redax_user
Password: UltraSecurePassword
Table Prefix: rs_
Στη συνέχεια, κάντε κλικ στην Create your account
ενότητα της Installation
σελίδας και εισαγάγετε τα κατάλληλα στοιχεία σύνδεσης διαχειριστή:
Name: <admin name>
User: <admin username>
Password: <admin password>
Email: <admin email>
Όταν ελέγξετε ότι όλες οι λεπτομέρειες εγκατάστασης είναι σωστές, απλώς κάντε κλικ για Install
να ολοκληρώσετε την εγκατάσταση.
Μόλις ολοκληρωθεί το σενάριο εγκατάστασης, θα ανακατευθυνθείτε σε ένα προεπιλεγμένο δείγμα ιστοσελίδας. Για πρόσβαση στην ενότητα διαχειριστή, απλώς μετακινηθείτε προς τα κάτω στο κάτω μέρος του δείγματος ιστοσελίδας και κάντε κλικ στον Login
σύνδεσμο στην κάτω δεξιά γωνία της σελίδας.
Εναλλακτικά, μπορείτε να αποκτήσετε πρόσβαση στη Login
σελίδα πληκτρολογώντας τη διεύθυνση στο πρόγραμμα περιήγησής σας με μη αυτόματο τρόπο:
http://YOUR_VULTR_IP_ADDRESS/login
Για λόγους ασφαλείας, βεβαιωθείτε ότι έχετε διαγράψει αμέσως το install.php
αρχείο και τον templates/install
κατάλογο από τον κατάλογο webroot:
sudo rm -rf ./templates/install ./install.php
Επίσης, βεβαιωθείτε ότι το config.php
αρχείο δεν είναι εγγράψιμο:
sudo chmod 444 ./config.php
Τέλος, επισκεφθείτε console.php
το πρόγραμμα περιήγησής σας:
http://YOUR_VULTR_IP_ADDRESS/console.php
Εισαγάγετε την console lock
εντολή για ανάκληση της δημόσιας πρόσβασης στη console.php
σελίδα:
console lock
Είστε πλέον έτοιμοι να αρχίσετε να προσθέτετε το περιεχόμενό σας και να διαμορφώνετε την εμφάνιση και την αίσθηση του ιστότοπού σας. Βεβαιωθείτε ότι έχετε ελέγξει την εξαιρετική τεκμηρίωση του Redaxscript CMS για περισσότερες πληροφορίες σχετικά με τον τρόπο δημιουργίας και διαμόρφωσης του ιστότοπού σας.