Reader Self 3.5 este o alternativă simplă și flexibilă, liberă și deschisă, cititor RSS self-gazduit și alternativă Google Reader. Reader Self acceptă scurtăturile principale de la tastatură de la Google Reader, import OPML, autentificare încorporată, proxy de imagini HTTPS (pentru a descărca imagini HTTP), sincronizarea articolelor stelate cu Pinboard, capacitatea de a partaja în rețelele sociale majore, integrarea Elastic Search și este frumos. receptiv pe desktop, tabletă și mobil.
În acest tutorial, vom instala Reader Self 3.5 pe un VPS CentOS 7 LAMP folosind serverul web Apache, PHP 7.1 și o bază de date MariaDB.
Cerințe preliminare
- O instanță curată a serverului Vultr CentOS 7 cu acces SSH
Pasul 1: Adăugați un utilizator Sudo
Vom începe adăugând un sudoutilizator nou .
În primul rând, conectați-vă la serverul dvs. ca root:
ssh root@YOUR_VULTR_IP_ADDRESS
Adăugați un utilizator nou numit user1(sau numele de utilizator preferat):
useradd user1
Apoi, setați parola pentru user1utilizator:
passwd user1
Când vi se solicită, introduceți o parolă sigură și memorabilă.
Acum verificați /etc/sudoersfișierul pentru a vă asigura că sudoersgrupul este activat:
visudo
Caută o secțiune ca aceasta:
%wheel ALL=(ALL) ALL
Această linie ne spune că utilizatorii care sunt membri ai wheelgrupului pot utiliza sudocomanda pentru a obține rootprivilegii. Acesta va fi necomandat implicit, astfel încât să puteți ieși pur și simplu din fișier.
În continuare, trebuie să adăugăm user1la wheelgrup:
usermod -aG wheel user1
Putem verifica user1apartenența la grup și să verificăm dacă usermodcomanda a funcționat cu groupscomanda:
groups user1
Acum folosiți sucomanda pentru a comuta la noul user1cont de utilizator sudo :
su - user1
Indicatorul de comandă se va actualiza pentru a indica faptul că sunteți acum conectat la user1cont. Puteți verifica acest lucru cu whoamicomanda:
whoami
Acum reporniți sshdserviciul astfel încât să vă puteți autentifica prin sshnoul cont de utilizator sudo non-root pe care tocmai l-ați creat:
sudo systemctl restart sshd
Ieșiți din user1cont:
exit
Ieșiți din rootcont (care vă va deconecta sshsesiunea):
exit
Acum puteți sshintra în instanța serverului de la gazda locală folosind noul user1cont de utilizator sudo non-root :
ssh user1@YOUR_VULTR_IP_ADDRESS
Dacă doriți să executați sudo fără a fi necesar să introduceți o parolă de fiecare dată, atunci deschideți din /etc/sudoersnou fișierul, folosind visudo:
sudo visudo
Editați secțiunea pentru wheelgrup astfel încât să arate astfel:
%wheel ALL=(ALL) NOPASSWD: ALL
Vă rugăm să rețineți: Dezactivarea cerinței de parolă pentru utilizatorul sudo nu este o practică recomandată, dar este inclusă aici, deoarece poate face configurația serverului mult mai convenabilă și mai puțin frustrantă, mai ales în timpul sesiunilor de administrare a sistemelor mai lungi. Dacă sunteți îngrijorat de implicațiile de securitate, puteți întoarce întotdeauna modificarea de configurare la original după ce terminați sarcinile de administrare.
Ori de câte ori doriți să vă conectați la rootcontul de utilizator din contul de sudoutilizator, puteți utiliza una dintre următoarele comenzi:
sudo -i
sudo su -
Puteți ieși din rootcont și întoarce-vă înapoi la contul de sudoutilizator, pur și simplu tastând următoarele:
exit
Pasul 2: Actualizați sistemul CentOS 7
Înainte de a instala pachetele pe instanța serverului CentOS, vom actualiza mai întâi sistemul.
Asigurați-vă că sunteți conectat la server folosind un utilizator sudo non-root și executați următoarea comandă:
sudo yum -y update
Pasul 3: Instalați serverul web Apache
Instalați serverul web Apache:
sudo yum -y install httpd
Apoi folosiți systemctlcomanda pentru a porni și a permite executarea automată a lui Apache la momentul de pornire:
sudo systemctl enable httpd
sudo systemctl start httpd
Verificați fișierul dvs. de configurare Apache pentru a vă asigura că DocumentRootdirectiva indică directorul corect:
sudo vi /etc/httpd/conf/httpd.conf
Opțiunea de DocumentRootconfigurare va arăta astfel:
DocumentRoot "/var/www/html"
Acum, să ne asigurăm că mod_rewritemodulul Apache este încărcat. Putem face acest lucru căutând fișierul de configurare al modulelor de bază Apache pentru termenul " mod_rewrite".
Deschideți fișierul:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Căutați termenul mod_rewrite.
Dacă mod_rewritemodulul Apache este încărcat, veți găsi o linie de configurare care arată astfel:
LoadModule rewrite_module modules/mod_rewrite.so
Dacă linia de mai sus începe cu un semicolon, va trebui să eliminați semicolonul pentru a dezlipi linia și a încărca modulul. Acest lucru se aplică desigur și pentru orice alte module Apache necesare.
Acum trebuie să edităm fișierul de configurare implicit al lui Apache, astfel încât mod_rewritesă funcționeze corect cu Reader Self.
Deschideți fișierul:
sudo vi /etc/httpd/conf/httpd.conf
Apoi găsiți secțiunea cu care începeți <Directory "/var/www/html">și treceți AllowOverride nonela AllowOverride All. Rezultatul final (cu toate comentariile eliminate) va arăta astfel:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Acum salvați și închideți fișierul de configurare Apache.
Vom reporni Apache la sfârșitul acestui tutorial, însă repornirea regulată a lui Apache în timpul instalării și configurației este cu siguranță un obicei bun, așa că haideți să o facem acum:
sudo systemctl restart httpd
Pasul 4: Deschideți porturile firewallului web
Acum trebuie să deschidem implicit HTTPși HTTPSporturile, deoarece acestea vor fi blocate firewalldimplicit.
Deschide porturile firewall-ului:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Reîncărcați firewallul pentru a aplica modificările:
sudo firewall-cmd --reload
Veți vedea cuvântul successafișat în terminalul dvs. după fiecare comandă de configurare a firewallului de succes.
Putem verifica rapid dacă HTTPportul Apache este deschis vizitând adresa IP sau domeniul instanței instanței într-un browser:
http://YOUR_VULTR_IP_ADDRESS/
Dacă totul este configurat corect, veți vedea pagina web Apache implicită în browserul dvs.
Pasul 5: Dezactivați SELinux (dacă este activat)
SELinux reprezintă „Linux Enhanced Linux”. Este o îmbunătățire a securității pentru Linux, care permite utilizatorilor și administratorilor un control mai mare asupra controlului accesului. Acesta este dezactivat în mod implicit în instanțele Vultr CentOS 7, dar vom acoperi pașii pentru a-l dezactiva, doar în cazul în care nu porniți de la o instalare curată și a fost anterior activată.
Pentru a evita problemele cu permisiunea fișierului cu Reader Self, trebuie să ne asigurăm că SELinux este dezactivat.
În primul rând, să verificăm dacă SELinux este activat sau dezactivat cu sestatuscomanda:
sudo sestatus
Dacă vedeți ceva de genul: SELinux status: disabledatunci este cu siguranță dezactivat și puteți sări direct la pasul 6. Dacă vedeți orice alt mesaj, va trebui să completați această secțiune.
Deschideți fișierul de configurare SELinux cu editorul de terminal preferat:
sudo vi /etc/selinux/config
Schimbarea SELINUX=enforcingla SELINUX=disabledși apoi salvați fișierul.
Pentru a aplica modificarea de configurare, SELinux necesită o repornire a serverului, astfel încât puteți reporni serverul folosind panoul de control Vultr sau puteți utiliza pur și simplu shutdowncomanda:
sudo shutdown -r now
Când serverul repornește, sesiunea SSH va fi deconectată și este posibil să vedeți un mesaj care vă informează despre un 'broken pipe'sau 'Connection closed by remote host'. Nu este de ce să vă faceți griji, pur și simplu așteptați 20 de secunde și apoi SSH din nou înapoi (cu propriul nume de utilizator și domeniu):
ssh user1@YOUR_DOMAIN
Sau (cu propriul nume de utilizator și adresa IP):
ssh user1@YOUR_VULTR_IP_ADDRESS
După ce v-ați autentificat, ar trebui să verificați din nou starea SELinux cu sestatuscomanda pentru a vă asigura că este dezactivat corespunzător:
sudo sestatus
Ar trebui să vezi un mesaj care spune SELinux status: disabled. Dacă vedeți un mesaj care spune SELinux status: enabled(sau ceva similar) va trebui să repetați pașii de mai sus și să vă asigurați că reporniți corect serverul.
Pasul 6: Instalează PHP 7.1
CentOS 7 necesită să adăugăm un repo extern pentru a instala PHP 7.1, deci executați următoarea comandă:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Acum putem instala PHP 7.1 împreună cu toate modulele PHP necesare cerute de Reader Self:
sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd
Pasul 7: Instalează serverul MariaDB (MySQL)
CentOS 7 implicit utilizează serverul de baze de date MariaDB, care este o sursă îmbunătățită, complet deschisă, dezvoltată de comunitate, înlocuire drop-in pentru serverul MySQL.
Instalați serverul de baze de date MariaDB:
sudo yum -y install mariadb-server
Porniți și permiteți executarea automată a serverului MariaDB la momentul de pornire:
sudo systemctl enable mariadb
sudo systemctl start mariadb
Asigurați-vă instalarea serverului MariaDB:
sudo mysql_secure_installation
rootParola va fi gol, astfel încât pur și simplu să apăsați enter când vi se cere rootparola.
Când vi se solicită să creați un utilizator MariaDB / MySQL root, selectați „Y” (pentru da) și apoi introduceți o rootparolă sigură . Pur și simplu răspundeți „Y” la toate celelalte întrebări da / nu, deoarece sugestiile implicite sunt cele mai sigure opțiuni.
Pasul 8: Creare bază de date pentru Reader Self
Conectați-vă la shell-ul MariaDB ca rootutilizator MariaDB rulând următoarea comandă:
sudo mysql -u root -p
Pentru a accesa promptul de comandă MariaDB, introduceți rootparola MariaDB atunci când vi se solicită.
Executați următoarele întrebări pentru a crea o bază de date MariaDB și un utilizator de bază de date pentru Reader Self:
CREATE DATABASE self_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'self_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON self_db.* TO 'self_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Puteți înlocui numele bazei de date self_dbși numele de utilizator self_usercu ceva mai mult pe gustul dvs., dacă doriți. (Rețineți că lungimea maximă implicită pentru numele de utilizator în MariaDB pe CentOS 7 este de 16 caractere). De asemenea, asigurați-vă că înlocuiți „UltraSecurePassword” cu o parolă de siguranță.
Pasul 9: Instalați fișierele Auto Reader
Modificați directorul de lucru curent în directorul web implicit:
cd /var/www/html/
Dacă primiți un mesaj de eroare spunând ceva de genul 'No such file or directory'acesta, încercați următoarea comandă:
cd /var/www/ ; sudo mkdir html ; cd html
Directorul curent va fi acum: /var/www/html/. Puteți verifica acest lucru cu comanda pwd(imprimare director de lucru):
pwd
Acum folosiți wgetpentru a descărca pachetul de instalare Reader Self:
sudo wget --content-disposition https://github.com/readerself/readerself/archive/3.5.6.zip
Vă rugăm să rețineți: cu siguranță, ar trebui să verificați cea mai recentă versiune, accesând pagina de descărcare Reader Self .
Enumerați directorul curent pentru a verifica dacă ați descărcat cu succes fișierul:
ls -la
Să instalăm rapid, unzipastfel încât să putem dezarhiva fișierul:
sudo yum -y install unzip
Acum decomprimează arhiva zip:
sudo unzip readerself-3.5.6.zip
Mutați toate fișierele de instalare în directorul rădăcină web:
sudo mv -v readerself-3.5.6/* readerself-3.5.6/.* /var/www/html 2>/dev/null
Modificați proprietatea asupra fișierelor web pentru a evita orice probleme de permisiune:
sudo chown -R apache:apache * ./
Reporniți Apache din nou:
sudo systemctl restart httpd
Acum suntem gata să trecem la ultimul pas.
Pasul 10: Instalare automată a cititorului complet
Acum este timpul să vizitați adresa IP a instanței serverului dvs. în browserul dvs., sau dacă ați configurat deja setările DNS Vultr (și i-a dat suficient timp pentru a se propaga), puteți pur și simplu să vă vizitați domeniul.
Pentru a accesa pagina de instalare Reader Self, introduceți adresa IP a instanței Vultr în bara de adrese a browserului, urmată de /setup/:
http://YOUR_VULTR_IP_ADDRESS/setup/
-
Veți vedea o parte Pre-Installation Checkdin partea de sus a paginii, așa că asigurați-vă că totul pare în regulă și continuați la pasul următor.
-
Introduceți următoarele valori ale bazei de date în Databasesecțiunea din pagina de instalare:
Database Type: MySQL (improved version)
Hostname: localhost
Username: self_user
Password: UltraSecurePassword
Database Name: self_db
-
Introduceți următoarele Userdetalii:
Email: <your email address>
Password: <a secure password>
-
După ce ați verificat că toate detaliile de mai sus sunt în regulă, pur și simplu faceți clic pe pictograma de bifare din partea stângă jos a paginii pentru a finaliza instalarea.
Vei fi redirecționat către o confirmare care spune Installation successful.
Pentru a configura în continuare Reader Self, faceți clic pe meniul din colțul din dreapta sus și selectați settings.
Dacă doriți ca cititorul să-și actualizeze automat fluxurile (și aproape sigur că o faceți), va trebui să vă editați crontab:
sudo crontab -e
Adăugați următoarea linie pentru a reîmprospăta fluxurile pe oră:
0 * * * * apache cd /var/www/html && php index.php refresh items
Dacă nu ați configurat încă setările Vultr DNS, puteți face acest lucru folosind panoul de control Vultr DNS.
De asemenea, este recomandabil să configurați site-ul dvs. pentru a utiliza SSL, deoarece majoritatea browserelor moderne vor avertiza atunci când site-urile nu au SSL activat și certificatele SSL sunt acum disponibile gratuit.
În orice caz, sunteți gata să începeți să adăugați fluxuri și să personalizați în continuare aspectul și funcționalitatea cititorului.