Βήμα 1: Προσθήκη χρήστη Sudo
Βήμα 2: Ενημερώστε το σύστημα Fedora 26
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Βήμα 4: Ανοίξτε τις θύρες τείχους προστασίας Ιστού
Βήμα 5: Απενεργοποιήστε το SELinux
Βήμα 6: Εγκαταστήστε την PHP 7.1
Βήμα 7: Εγκαταστήστε τον διακομιστή MariaDB (MySQL).
Βήμα 8: Δημιουργία βάσης δεδομένων για CMS του καναπέ
Βήμα 9: Εγκαταστήστε τα αρχεία CMS του καναπέ
Βήμα 10: Ολοκληρώστε την εγκατάσταση CMS σε καναπέ
Το Couch CMS είναι ένα απλό και ευέλικτο, δωρεάν και ανοιχτού κώδικα Σύστημα Διαχείρισης Περιεχομένου (CMS) που επιτρέπει στους σχεδιαστές ιστοσελίδων να σχεδιάζουν όμορφους ιστότοπους χωρίς καμία γνώση της PHP. Με το Couch CMS, οι προγραμματιστές ιστού μπορούν να πάρουν οποιοδήποτε από τα στατικά σχέδια HTML και CSS μόνο και να τα μετατρέψουν σε έναν πλήρως διαχειριζόμενο ιστότοπο CMS με πολύ λίγη προσπάθεια.
Σε αυτό το σεμινάριο πρόκειται να εγκαταστήσουμε το Couch CMS 2.0 σε ένα Fedora 26 LAMP VPS χρησιμοποιώντας διακομιστή ιστού Apache, PHP 7.1 και μια βάση δεδομένων MariaDB.
Βήμα 1: Προσθήκη χρήστη Sudo
Θα ξεκινήσουμε προσθέτοντας έναν νέο 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.
Θα κάνουμε επανεκκίνηση του 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 δεν αποστέλλονται με εγκατεστημένο ή ενεργοποιημένο από προεπιλογή.
Για να αποφύγουμε προβλήματα άδειας αρχείων με το Couch CMS αργότερα, θα απενεργοποιήσουμε το SELinux, προς το παρόν. Ανοίξτε λοιπόν το αρχείο διαμόρφωσης SELinux με τον αγαπημένο σας επεξεργαστή τερματικού:
sudo vi /etc/selinux/config
Και αλλάξτε SELINUX=enforcingσε SELINUX=disabledκαι μετά αποθηκεύστε το αρχείο.
Για να εφαρμόσετε την αλλαγή διαμόρφωσης, το SELinux απαιτεί επανεκκίνηση διακομιστή, ώστε να μπορείτε είτε να επανεκκινήσετε τον διακομιστή χρησιμοποιώντας τον πίνακα ελέγχου Vultr είτε να χρησιμοποιήσετε απλώς την shutdownεντολή για καθαρό τερματισμό και επανεκκίνηση του διακομιστή:
sudo shutdown -r now
Όταν ο διακομιστής επανεκκινηθεί, η συνεδρία SSH θα αποσυνδεθεί και ενδέχεται να δείτε ένα μήνυμα που σας ενημερώνει για ένα 'broken pipe'ή σας ενημερώνει 'Connection closed by remote host'. Αυτό δεν είναι τίποτα ανησυχητικό, απλά περιμένετε 20 δευτερόλεπτα περίπου και μετά το SSH ξανά (με το δικό σας όνομα χρήστη και τομέα):
ssh user1@YOUR_DOMAIN
Ή (με το δικό σας όνομα χρήστη και διεύθυνση IP):
ssh user1@YOUR_VULTR_IP_ADDRESS
Αφού συνδεθείτε ξανά, θα πρέπει να ελέγξετε την κατάσταση του SELinux με την sestatusεντολή για να βεβαιωθείτε ότι είναι σωστά απενεργοποιημένο:
sudo sestatus
Θα πρέπει να δείτε ένα μήνυμα που λέει SELinux status: disabled. Εάν δείτε ένα μήνυμα που λέει SELinux status: enabled(ή κάτι παρόμοιο), θα χρειαστεί να επαναλάβετε τα παραπάνω βήματα και να βεβαιωθείτε ότι έχετε επανεκκινήσει σωστά τον διακομιστή σας.
Βήμα 6: Εγκαταστήστε την PHP 7.1
Μπορούμε τώρα να εγκαταστήσουμε την PHP 7.1 μαζί με όλες τις απαραίτητες μονάδες PHP που απαιτούνται από το Couch CMS:
sudo dnf -y install php php-mysqlnd php-mbstring php-gd
Βήμα 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: Δημιουργία βάσης δεδομένων για CMS του καναπέ
Συνδεθείτε στο κέλυφος MariaDB ως rootχρήστης MariaDB εκτελώντας την ακόλουθη εντολή:
sudo mysql -u root -p
Για πρόσβαση στη γραμμή εντολών MariaDB, απλώς εισαγάγετε τον rootκωδικό πρόσβασης MariaDB όταν σας ζητηθεί.
Εκτελέστε τα ακόλουθα ερωτήματα για να δημιουργήσετε μια βάση δεδομένων MariaDB και χρήστη βάσης δεδομένων για το Couch CMS:
CREATE DATABASE couch_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'couch_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON couch_db.* TO 'couch_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Μπορείτε να αντικαταστήσετε το όνομα της βάσης δεδομένων couch_dbκαι το όνομα χρήστη couch_userμε κάτι περισσότερο της αρεσκείας σας, αν προτιμάτε. Επίσης, βεβαιωθείτε ότι έχετε αντικαταστήσει το " UltraSecurePassword" με έναν πραγματικά ασφαλή κωδικό πρόσβασης.
Βήμα 9: Εγκαταστήστε τα αρχεία 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για λήψη του αρχείου zip εγκατάστασης Couch CMS:
sudo wget https://www.couchcms.com/kachua/download.php?auth=agJmBvEk%2FIM8aSh4XkqV5fbIxR4ghkd6Gy%2F8eL4nFCUpzoFYvddT%7CbKoInr8INleUFM9lPDT05r0dEfTqzuhb%7C0%7C0%7C0%7C1%7Cbccc27bd8eade8876d3f486bac1f4ca9
Σημείωση: Θα πρέπει οπωσδήποτε να ελέγξετε για την πιο πρόσφατη έκδοση επισκεπτόμενοι τη σελίδα λήψης CMS του καναπέ .
Καταχωρίστε τον τρέχοντα κατάλογο για να ελέγξετε ότι κατεβάσατε με επιτυχία το αρχείο:
ls -la
Ας δώσουμε στο αρχείο zip ένα απλούστερο όνομα:
sudo mv download.php* couchcms.zip
Και τώρα αποσυμπιέστε το αρχείο zip:
sudo unzip couchcms.zip
Τώρα μετακινήστε όλα τα αρχεία εγκατάστασης στον ριζικό κατάλογο ιστού:
sudo mv ./CouchCMS-2.0/* /var/www/html
Και αλλάξτε την ιδιοκτησία των αρχείων Ιστού για να αποφύγετε τυχόν προβλήματα αδειών:
sudo chown -R apache:apache *
Ας επανεκκινήσουμε ξανά τον Apache.
sudo systemctl restart httpd
Τώρα είμαστε έτοιμοι να προχωρήσουμε στο τελευταίο βήμα.
Βήμα 10: Ολοκληρώστε την εγκατάσταση CMS σε καναπέ
Για να ολοκληρώσουμε την εγκατάσταση του Couch CMS, πρέπει να επεξεργαστούμε το αρχείο διαμόρφωσης Couch CMS, επομένως πρώτα βεβαιωθείτε ότι βρίσκεστε στο webroot και, στη συνέχεια, μετονομάστε το αρχείο διαμόρφωσης:
sudo mv ./couch/config.example.php ./couch/config.php
Στη συνέχεια, ανοίξτε το config.phpαρχείο:
sudo vi ./couch/config.php
Και προσθέστε τις ακόλουθες τιμές:
define( 'K_GMT_OFFSET', 0 );
define( 'K_DB_NAME', 'couch_db' );
define( 'K_DB_USER', 'couch_user' );
define( 'K_DB_PASSWORD', 'UltraSecurePassword' );
define( 'K_DB_HOST', 'localhost' );
define( 'K_PRETTY_URLS', 1 );
define( 'K_USE_CACHE', 1 );
define( 'K_EMAIL_TO', '[email protected]' );
define( 'K_EMAIL_FROM', '[email protected]' );
Αφού προσθέσετε τις κατάλληλες τιμές διαμόρφωσης, μπορείτε να αποθηκεύσετε και να βγείτε.
Τα τελευταία βήματα της εγκατάστασης του Couch CMS είναι πραγματικά απλά.
Επισκεφθείτε πρώτα τη σελίδα εγκατάστασης του Couch CMS στο πρόγραμμα περιήγησής σας:
http://YOUR_VULTR_IP_ADDRESS/couch
Ή αν έχετε ήδη διαμορφώσει τις ρυθμίσεις σας Vultr DNS (και του έχετε δώσει αρκετό χρόνο για να διαδοθεί), μπορείτε απλώς να επισκεφτείτε τον τομέα σας:
http://YOUR_DOMAIN/couch
Απλώς εισαγάγετε τις ακόλουθες λεπτομέρειες στη σελίδα εγκατάστασης:
Super-Admin Username: admin (or your preferred username)
Email: <your email address>
Password: <your preferred password>
Και μετά κάντε κλικ στο Installκουμπί.
Εάν η εγκατάσταση ήταν επιτυχής, θα πρέπει να δείτε μια σελίδα επιβεβαίωσης που λέει Log in. Απλώς κάντε κλικ Log inγια να συνεχίσετε.
Τώρα μπορείτε να συνδεθείτε στον πίνακα διαχείρισης του Couch CMS.
Εάν δεν έχετε ήδη ρυθμίσει το Vultr DNS σας, αυτό θα πρέπει να είναι πιθανώς το επόμενο βήμα σας.
Τώρα είστε έτοιμοι να αρχίσετε να προσθέτετε περιεχόμενο και να διαμορφώνετε την εμφάνιση του ιστότοπού σας. Βεβαιωθείτε ότι έχετε ελέγξει την εξαιρετική τεκμηρίωση του Couch CMS για περισσότερες πληροφορίες σχετικά με τον τρόπο διαμόρφωσης του CMS του καναπέ.
Να θυμάστε ότι το Couch CMS σάς επιτρέπει να παίρνετε τους παλιούς σας ιστότοπους HTML και CSS και να τους αλλάζετε εύκολα σε πλήρως διαχειριζόμενους ιστότοπους CMS, τους οποίους ακόμη και μη τεχνικοί χρήστες μπορούν να ενημερώσουν μόνοι τους. Σε αντίθεση με τα περισσότερα άλλα CMS, το Couch CMS σάς επιτρέπει να μετατρέπετε τους ιστότοπούς σας σε HTML χωρίς προγραμματισμό από την πλευρά του διακομιστή.