Προαπαιτούμενα
Βήμα 1: Προσθήκη χρήστη Sudo
Βήμα 2: Ενημερώστε το σύστημα Debian 9
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Βήμα 4: Εγκαταστήστε την PHP 7.0
Βήμα 5: Εγκαταστήστε το διακομιστή MariaDB (MySQL).
Βήμα 6: Δημιουργία βάσης δεδομένων για Selfoss RSS Reader
Βήμα 7: Εγκαταστήστε τα αρχεία Selfoss RSS Reader
Βήμα 8: Εγκαταστήστε και εκτελέστε το Composer
Βήμα 9: Ολοκληρώστε την εγκατάσταση του Selfoss RSS Reader
Το Selfoss RSS Reader είναι ένας δωρεάν και ανοιχτός κώδικας που φιλοξενείται μόνος του στο διαδίκτυο πολλαπλών χρήσεων, ζωντανής ροής, mashup, τροφοδοσίας ειδήσεων (RSS/Atom) και καθολικός αθροιστής. Το Selfoss RSS Reader διαθέτει εισαγωγή OPML, ένα ξεκούραστο JSON API και το ανοιχτό σύστημα προσθήκης του σάς επιτρέπει να επεκτείνετε εύκολα την προεπιλεγμένη λειτουργία γράφοντας τις δικές σας προσαρμοσμένες συνδέσεις δεδομένων. Μπορείτε να χρησιμοποιήσετε το Selfoss για ζωντανή ροή και να συλλέξετε όλες τις αναρτήσεις, τα tweet, τα podcast και τις ροές δεδομένων σας σε ένα κεντρικό σημείο στο οποίο μπορείτε εύκολα να έχετε πρόσβαση από οποιαδήποτε επιτραπέζια ή φορητή συσκευή.
Σε αυτό το σεμινάριο, πρόκειται να εγκαταστήσουμε το Selfoss RSS Reader 2.17 σε ένα Debian 9 LAMP VPS χρησιμοποιώντας διακομιστή ιστού Apache, PHP 7.1 και μια βάση δεδομένων MariaDB.
Προαπαιτούμενα
- Μια καθαρή παρουσία διακομιστή Vultr Debian 9 με πρόσβαση SSH
Βήμα 1: Προσθήκη χρήστη Sudo
Θα ξεκινήσουμε προσθέτοντας έναν νέο sudo
χρήστη.
Πρώτα, συνδεθείτε στον διακομιστή σας ως root
:
ssh root@YOUR_VULTR_IP_ADDRESS
Η sudo
εντολή δεν είναι εγκατεστημένη από προεπιλογή στην παρουσία διακομιστή Vultr Debain 9, επομένως θα εγκαταστήσουμε πρώτα sudo
:
apt-get -y install sudo
Τώρα προσθέστε έναν νέο χρήστη που ονομάζεται user1
(ή το όνομα χρήστη που προτιμάτε):
adduser user1
Όταν σας ζητηθεί, εισαγάγετε έναν ασφαλή και αξέχαστο κωδικό πρόσβασης. Θα σας ζητηθεί επίσης το "Ονοματεπώνυμό σας" και κάποιες άλλες λεπτομέρειες, αλλά μπορείτε απλά να τις αφήσετε κενές πατώντας Enter
.
Τώρα ελέγξτε το /etc/sudoers
αρχείο για να βεβαιωθείτε ότι η sudoers
ομάδα είναι ενεργοποιημένη:
visudo
Αναζητήστε μια ενότητα όπως αυτή:
%sudo ALL=(ALL:ALL) ALL
Αυτή η γραμμή μας λέει ότι οι χρήστες που είναι μέλη της sudo
ομάδας μπορούν να χρησιμοποιήσουν την sudo
εντολή για να αποκτήσουν root
προνόμια. Δεν θα σχολιαστεί από προεπιλογή, ώστε να μπορείτε απλά να βγείτε από το αρχείο.
Στη συνέχεια πρέπει να προσθέσουμε user1
στην sudo
ομάδα:
usermod -aG sudo 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
Επεξεργαστείτε την ενότητα για την sudo
ομάδα έτσι ώστε να μοιάζει με αυτό:
%sudo ALL=(ALL) NOPASSWD: ALL
Σημείωση: Η απενεργοποίηση της απαίτησης κωδικού πρόσβασης για τον χρήστη sudo δεν είναι μια συνιστώμενη πρακτική, αλλά περιλαμβάνεται εδώ, καθώς μπορεί να κάνει τη διαμόρφωση του διακομιστή πολύ πιο βολική και λιγότερο ενοχλητική, ειδικά κατά τη διάρκεια μεγαλύτερων περιόδων διαχείρισης συστημάτων. Εάν ανησυχείτε για τις επιπτώσεις στην ασφάλεια, μπορείτε πάντα να επαναφέρετε την αλλαγή διαμόρφωσης στην αρχική, αφού ολοκληρώσετε τις εργασίες διαχείρισης.
Κάθε φορά που θέλετε να συνδεθείτε στον root
λογαριασμό χρήστη μέσα από τον sudo
λογαριασμό χρήστη, μπορείτε να χρησιμοποιήσετε μία από τις ακόλουθες εντολές:
sudo -i
sudo su -
Μπορείτε να βγείτε από τον root
λογαριασμό και να επιστρέψετε στον sudo
λογαριασμό χρήστη σας ανά πάσα στιγμή:
exit
Βήμα 2: Ενημερώστε το σύστημα Debian 9
Πριν εγκαταστήσουμε οποιοδήποτε πακέτο στην παρουσία του διακομιστή Debian, θα ενημερώσουμε πρώτα το σύστημα.
Βεβαιωθείτε ότι έχετε συνδεθεί στον διακομιστή χρησιμοποιώντας έναν χρήστη sudo που δεν είναι root και εκτελέστε τις ακόλουθες εντολές:
sudo apt-get update
sudo apt-get -y upgrade
Βήμα 3: Εγκαταστήστε τον διακομιστή Web Apache
Εγκαταστήστε τον διακομιστή ιστού Apache:
sudo apt-get -y install apache2
Στη συνέχεια, χρησιμοποιήστε την systemctl
εντολή για να ξεκινήσετε και να ενεργοποιήσετε τον Apache να εκτελείται αυτόματα κατά την εκκίνηση:
sudo systemctl enable apache2
sudo systemctl start apache2
Ελέγξτε το αρχείο ρύθμισης παραμέτρων του προεπιλεγμένου ιστότοπου Apache για να βεβαιωθείτε ότι η DocumentRoot
οδηγία οδηγεί στον σωστό κατάλογο:
sudo vi /etc/apache2/sites-enabled/000-default.conf
Η DocumentRoot
επιλογή διαμόρφωσης θα μοιάζει με αυτό:
DocumentRoot "/var/www/html"
Τώρα πρέπει να ενεργοποιήσουμε τη mod_rewrite
λειτουργική μονάδα Apache, επομένως βεβαιωθείτε ότι το αρχείο ρύθμισης παραμέτρων του προεπιλεγμένου ιστότοπου Apache είναι ακόμα ανοιχτό και προσθέστε τις ακόλουθες Directory
οδηγίες Apache ακριβώς πριν από την </VirtualHost>
ετικέτα κλεισίματος , έτσι ώστε το τέλος του αρχείου διαμόρφωσής σας να μοιάζει με αυτό:
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Η πιο σημαντική οδηγία που φαίνεται παραπάνω είναι η AllowOverride All
.
Τώρα αποθηκεύστε και βγείτε από το αρχείο και ενεργοποιήστε τις λειτουργικές μονάδες mod_rewrite
, mod_authz_core
και mod_headers
Apache:
sudo a2enmod rewrite authz_core headers
Θα κάνουμε επανεκκίνηση του Apache στο τέλος αυτού του σεμιναρίου, αλλά η τακτική επανεκκίνηση του Apache κατά την εγκατάσταση και τη ρύθμιση παραμέτρων είναι σίγουρα μια καλή συνήθεια, οπότε ας το κάνουμε τώρα:
sudo systemctl restart apache2
Βήμα 4: Εγκαταστήστε την PHP 7.0
Μπορούμε τώρα να εγκαταστήσουμε την PHP 7.0 μαζί με όλες τις απαραίτητες ενότητες PHP που απαιτούνται από το Selfoss RSS Reader:
sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-tidy php-zip
Βήμα 5: Εγκαταστήστε το διακομιστή MariaDB (MySQL).
Το Debian 9 χρησιμοποιεί ως προεπιλογή τον διακομιστή βάσης δεδομένων MariaDB, ο οποίος είναι ένας βελτιωμένος, πλήρως ανοιχτού κώδικα, αναπτυγμένος από την κοινότητα, drop-in αντικατάσταση του διακομιστή MySQL.
Εγκαταστήστε τον διακομιστή βάσης δεδομένων MariaDB:
sudo apt-get -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" σε όλες τις άλλες ερωτήσεις ναι/όχι καθώς οι προεπιλεγμένες προτάσεις είναι οι πιο ασφαλείς επιλογές.
Συνδεθείτε στο κέλυφος MariaDB ως root
χρήστης MariaDB εκτελώντας την ακόλουθη εντολή:
sudo mariadb -u root -p
Για πρόσβαση στη γραμμή εντολών MariaDB, απλώς εισαγάγετε τον root
κωδικό πρόσβασης MariaDB όταν σας ζητηθεί.
Εκτελέστε τα ακόλουθα ερωτήματα για να δημιουργήσετε μια βάση δεδομένων MariaDB και χρήστη βάσης δεδομένων για το Selfoss RSS Reader:
CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Μπορείτε να αντικαταστήσετε το όνομα της βάσης δεδομένων selfoss_db
και το όνομα χρήστη selfoss_user
με κάτι περισσότερο της αρεσκείας σας, αν προτιμάτε. Επίσης, βεβαιωθείτε ότι έχετε αντικαταστήσει τον "UltraSecurePassword" με έναν πραγματικά ασφαλή κωδικό πρόσβασης.
Αλλάξτε τον τρέχοντα κατάλογο εργασίας σας στον προεπιλεγμένο κατάλογο ιστού:
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
για λήψη του πακέτου εγκατάστασης του Selfoss RSS Reader:
sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip
Σημείωση: Πρέπει οπωσδήποτε να ελέγξετε για την πιο πρόσφατη έκδοση μεταβαίνοντας στη σελίδα λήψης του Selfoss RSS Reader .
Καταχωρίστε τον τρέχοντα κατάλογο για να ελέγξετε ότι κατεβάσατε με επιτυχία το αρχείο:
ls -la
Αφαίρεση index.html
:
sudo rm index.html
Ας το εγκαταστήσουμε γρήγορα unzip
για να μπορέσουμε να αποσυμπιέσουμε το αρχείο:
sudo apt-get -y install unzip
Τώρα αποσυμπιέστε το αρχείο zip:
sudo unzip selfoss-2.17.zip
Μετακινήστε όλα τα αρχεία εγκατάστασης στον ριζικό κατάλογο ιστού:
sudo mv -v selfoss-2.17/* selfoss-2.17/.* /var/www/html 2>/dev/null
Αλλάξτε την ιδιοκτησία των αρχείων Ιστού για να αποφύγετε τυχόν προβλήματα αδειών:
sudo chown -R www-data:www-data * ./
Επανεκκινήστε ξανά τον Apache:
sudo systemctl restart apache2
Βήμα 8: Εγκαταστήστε και εκτελέστε το Composer
Το Selfoss RSS Reader απαιτεί να χρησιμοποιούμε composer
για τη λήψη ορισμένων προσθηκών, οπότε ας εγκαταστήσουμε composer
:
sudo apt-get -y install composer
Τώρα βεβαιωθείτε ότι βρίσκεστε στον κατάλογο webroot:
cd /var/www/html
Εκτελέστε το συνθέτη χρησιμοποιώντας τον www-data
χρήστη:
sudo -u www-data composer install
Θα δείτε μερικά προειδοποιητικά μηνύματα από το composer
ότι δεν μπορείτε να γράψετε στην κρυφή μνήμη, αλλά μην ανησυχείτε πολύ για αυτό, καθώς όλα θα εξακολουθήσουν να εγκατασταθούν μια χαρά.
Τώρα είμαστε έτοιμοι να προχωρήσουμε στο τελευταίο βήμα.
Πρώτα πρέπει να ενημερώσουμε το αρχείο διαμόρφωσης του Selfoss RSS Reader config.ini
με τις σωστές ρυθμίσεις βάσης δεδομένων, επομένως βεβαιωθείτε ότι βρίσκεστε ακόμα στον κατάλογο webroot και αντιγράψτε defaults.ini
στο config.ini
:
sudo cp -iv defaults.ini config.ini
Στη συνέχεια, ανοίξτε το config.ini
αρχείο διαμόρφωσης και προσθέστε τις ακόλουθες τιμές βάσης δεδομένων:
[globals]
db_type=mysql
db_host=localhost
db_database=selfoss_db
db_username=selfoss_user
db_password=UltraSecurePassword
db_port=3306
Τώρα πρέπει να προσθέσουμε έναν κατακερματισμό κωδικού πρόσβασης στο config.ini
, αλλά πρώτα πρέπει να τον δημιουργήσουμε, επομένως επισκεφτείτε την ακόλουθη διεύθυνση URL στο πρόγραμμα περιήγησής σας:
http://YOUR_VULTR_IP_ADDRESS/password
Στη συνέχεια, εισάγετε τον κωδικό πρόσβασης που θέλετε στο Password
πεδίο και κάντε κλικ στο Generate
.
Απλώς αντιγράψτε την τιμή κατακερματισμού που προκύπτει στην επιλογή κωδικού πρόσβασης στο config.ini
αρχείο, ώστε η ενότητα κωδικού πρόσβασης να μοιάζει τώρα κάπως έτσι:
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Σημείωση: Ο κατακερματισμός του κωδικού πρόσβασής σας θα είναι προφανώς διαφορετικός από τον κατακερματισμό που εμφανίζεται παραπάνω και είστε ελεύθεροι να επιλέξετε διαφορετικό όνομα χρήστη.
Καταργήστε όλες τις άλλες μη επεξεργασμένες επιλογές από το config.ini
αρχείο, ώστε το πλήρες αρχείο διαμόρφωσης να μοιάζει με αυτό:
[globals]
db_type=mysql
db_host=localhost
db_database=db1
db_username=u1
db_password=usecpass1
db_port=3306
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Σημείωση: Εάν θέλετε να αλλάξετε κάποια από τις defaults.ini
επιλογές, μπορείτε απλώς να τις προσθέσετε στη λίστα των επιλογών παραπάνω.
Όταν ολοκληρώσετε την επεξεργασία του αρχείου διαμόρφωσης, μπορείτε να αποθηκεύσετε και να βγείτε από το αρχείο.
Τώρα μπορείτε να συνδεθείτε στο Selfoss RSS Reader επισκεπτόμενοι την αρχική σελίδα και εισάγοντας το όνομα χρήστη και τον κωδικό πρόσβασής σας:
http://YOUR_VULTR_IP_ADDRESS/
Εάν θέλετε ο αναγνώστης να ενημερώνει αυτόματα τις ροές σας (και σχεδόν σίγουρα το κάνετε), θα χρειαστεί να επεξεργαστείτε την καρτέλα σας:
sudo crontab -e
Προσθέστε την ακόλουθη γραμμή για να ανανεώνετε τις ροές σας ανά ώρα:
0 * * * * www-data cd /var/www/html && php cliupdate.php
Εάν δεν έχετε διαμορφώσει ακόμη τις ρυθμίσεις σας στο Vultr DNS, μπορείτε να το κάνετε χρησιμοποιώντας τον πίνακα ελέγχου του Vultr DNS.
Συνιστάται επίσης να διαμορφώσετε τον ιστότοπό σας ώστε να χρησιμοποιεί SSL, καθώς τα περισσότερα σύγχρονα προγράμματα περιήγησης θα δίνουν προειδοποιήσεις όταν οι ιστότοποι δεν έχουν ενεργοποιημένο το SSL και τα πιστοποιητικά SSL είναι πλέον διαθέσιμα δωρεάν.
Σε κάθε περίπτωση, μπορείτε πλέον να αρχίσετε να προσθέτετε τις ροές σας και να προσαρμόζετε περαιτέρω τον αναγνώστη σας, εάν το επιθυμείτε.