Preduvjeti
Korak 1: Dodajte Sudo korisnika
Korak 2: Ažurirajte CentOS 7 sustav
Korak 3: Instalirajte Apache web poslužitelj
Korak 4: Otvorite portove web vatrozida
Korak 5: Onemogućite SELinux (ako je omogućen)
Korak 6: Instalirajte PHP 7.1
Korak 7: Instalirajte MariaDB (MySQL) poslužitelj
Korak 8: Stvorite bazu podataka za Reader Self
Korak 9: Instalirajte Reader Self Files
Korak 10: dovršite samostalnu instalaciju čitača
Reader Self 3.5 je jednostavan i fleksibilan, besplatan i otvoreni izvor, RSS čitač s vlastitim hostingom i alternativa Google Readeru. Reader Self podržava glavne tipkovničke prečace iz Google Readera, OPML uvoz, ugrađenu autentifikaciju, HTTPS proxy slike (za preuzimanje HTTP slika), sinkronizaciju stavki označenih zvjezdicom s Pinboardom, mogućnost dijeljenja na glavnim društvenim mrežama, integraciju Elastic Search i prekrasan je prilagodljiv na stolnim računalima, tabletima i mobilnim uređajima.
U ovom vodiču ćemo instalirati Reader Self 3.5 na CentOS 7 LAMP VPS koristeći Apache web poslužitelj, PHP 7.1 i MariaDB bazu podataka.
Preduvjeti
- Čista instanca poslužitelja Vultr CentOS 7 sa SSH pristupom
Korak 1: Dodajte Sudo korisnika
Započet ćemo dodavanjem novog sudokorisnika.
Prvo se prijavite na svoj poslužitelj kao root:
ssh root@YOUR_VULTR_IP_ADDRESS
Dodajte novog korisnika pod nazivom user1(ili svoje željeno korisničko ime):
useradd user1
Zatim postavite lozinku za user1korisnika:
passwd user1
Kada se to od vas zatraži, unesite sigurnu i nezaboravnu lozinku.
Sada provjerite /etc/sudoersdatoteku kako biste bili sigurni da je sudoersgrupa omogućena:
visudo
Potražite odjeljak poput ovoga:
%wheel ALL=(ALL) ALL
Ovaj redak nam govori da korisnici koji su članovi wheelgrupe mogu koristiti sudonaredbu za stjecanje rootprivilegija. Prema zadanim postavkama bit će dekomentiran tako da možete jednostavno izaći iz datoteke.
Zatim user1u wheelgrupu trebamo dodati :
usermod -aG wheel user1
Možemo provjeriti user1članstvo u grupi i provjeriti je li usermodnaredba radila s groupsnaredbom:
groups user1
Sada koristite sunaredbu za prebacivanje na novi sudo korisnički user1račun:
su - user1
Naredbeni redak će se ažurirati kako bi naznačio da ste sada prijavljeni na user1račun. To možete provjeriti whoaminaredbom:
whoami
Sada ponovno pokrenite sshduslugu kako biste se mogli prijaviti putem sshnovog sudo korisničkog računa koji ste upravo kreirali:
sudo systemctl restart sshd
Izađite iz user1računa:
exit
Izađite iz rootračuna (što će prekinuti vašu sshsesiju):
exit
Sada možete sshući u instancu poslužitelja sa svog lokalnog hosta koristeći novi nekorijenski sudo korisnički user1račun:
ssh user1@YOUR_VULTR_IP_ADDRESS
Ako želite izvršiti sudo bez potrebe za svakim upisivanjem lozinke, zatim ponovo otvorite /etc/sudoersdatoteku koristeći visudo:
sudo visudo
Uredite odjeljak za wheelgrupu tako da izgleda ovako:
%wheel ALL=(ALL) NOPASSWD: ALL
Napomena: Onemogućavanje zahtjeva za lozinkom za sudo korisnika nije preporučena praksa, ali je ovdje uključena jer može učiniti konfiguraciju poslužitelja mnogo praktičnijom i manje frustrirajućom, osobito tijekom dužih sesija administracije sustava. Ako ste zabrinuti zbog sigurnosnih implikacija, uvijek možete vratiti promjenu konfiguracije na izvornu nakon što završite svoje administrativne zadatke.
Kad god se želite prijaviti na rootkorisnički račun iz sudokorisničkog računa, možete koristiti jednu od sljedećih naredbi:
sudo -i
sudo su -
Možete izaći s rootračuna i vratiti se na svoj sudokorisnički račun u bilo kojem trenutku jednostavnim upisivanjem sljedećeg:
exit
Korak 2: Ažurirajte CentOS 7 sustav
Prije instaliranja bilo kojeg paketa na instancu poslužitelja CentOS, prvo ćemo ažurirati sustav.
Provjerite jeste li prijavljeni na poslužitelj koristeći sudo korisnika koji nije root i pokrenite sljedeću naredbu:
sudo yum -y update
Korak 3: Instalirajte Apache web poslužitelj
Instalirajte Apache web poslužitelj:
sudo yum -y install httpd
Zatim upotrijebite systemctlnaredbu za pokretanje i omogućite automatsko izvršavanje Apachea prilikom pokretanja:
sudo systemctl enable httpd
sudo systemctl start httpd
Provjerite svoju Apache konfiguracijsku datoteku kako biste bili sigurni da DocumentRootdirektiva pokazuje na ispravan direktorij:
sudo vi /etc/httpd/conf/httpd.conf
Opcija DocumentRootkonfiguracije će izgledati ovako:
DocumentRoot "/var/www/html"
Sada, provjerimo je li mod_rewriteApache modul učitan. To možemo učiniti pretraživanjem konfiguracijske datoteke osnovnih modula Apache za pojam " mod_rewrite".
Otvorite datoteku:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Potražite pojam mod_rewrite.
Ako je mod_rewritemodul Apache učitan, pronaći ćete konfiguracijsku liniju koja izgleda ovako:
LoadModule rewrite_module modules/mod_rewrite.so
Ako gornji redak počinje s točkom-zarezom, morat ćete ukloniti točku-zarez kako biste dekomentirali redak i učitali modul. To se, naravno, odnosi i na sve ostale potrebne Apache module.
Sada moramo urediti Apacheovu zadanu konfiguracijsku datoteku tako da mod_rewriteće ispravno raditi s Reader Self-om.
Otvorite datoteku:
sudo vi /etc/httpd/conf/httpd.conf
Zatim pronađite odjeljak koji počinje s <Directory "/var/www/html">i promijenite AllowOverride noneu AllowOverride All. Konačni rezultat (sa uklonjenim svim komentarima) izgledat će otprilike ovako:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Sada spremite i zatvorite Apache konfiguracijsku datoteku.
Ponovo ćemo pokrenuti Apache na kraju ovog vodiča, ali redovito ponovno pokretanje Apachea tijekom instalacije i konfiguracije svakako je dobra navika, pa učinimo to sada:
sudo systemctl restart httpd
Korak 4: Otvorite portove web vatrozida
Sada moramo otvoriti zadane HTTPi HTTPSportove jer će firewalldprema zadanim postavkama biti blokirani .
Otvorite portove vatrozida:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Ponovno učitajte vatrozid da biste primijenili promjene:
sudo firewall-cmd --reload
Vidjet ćete riječ successprikazanu u vašem terminalu nakon svake uspješne naredbe za konfiguraciju vatrozida.
Možemo brzo provjeriti je li Apache HTTPport otvoren posjetom IP adrese ili domene instance poslužitelja u pregledniku:
http://YOUR_VULTR_IP_ADDRESS/
Ako je sve ispravno postavljeno, vidjet ćete zadanu Apache web stranicu u vašem pregledniku.
Korak 5: Onemogućite SELinux (ako je omogućen)
SELinux je skraćenica za "Security Enhanced Linux". To je sigurnosno poboljšanje za Linux koje korisnicima i administratorima omogućuje veću kontrolu nad kontrolom pristupa. Onemogućen je prema zadanim postavkama na instancama Vultr CentOS 7, ali ćemo pokriti korake za njegovo onemogućavanje, samo u slučaju da ne počinjete od čiste instalacije i da je prethodno bila omogućena.
Kako bismo izbjegli probleme s dopuštenjem datoteka s Reader Self-om, moramo osigurati da je SELinux onemogućen.
Prvo, provjerimo je li SELinux omogućen ili onemogućen pomoću sestatusnaredbe:
sudo sestatus
If you see something like: SELinux status: disabled then it is definitely disabled and you can skip straight to Step 6. If you see any other message, then you will need to complete this section.
Open the SELinux configuration file with your favourite terminal editor:
sudo vi /etc/selinux/config
Change SELINUX=enforcing to SELINUX=disabled and then save the file.
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
You should see a message saying SELinux status: disabled. If you see a message saying SELinux status: enabled (or something similar) you will need to repeat the above steps and ensure that you properly restart your server.
Step 6: Install PHP 7.1
CentOS 7 requires us to add an external repo in order to install PHP 7.1, so run the following command:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
We can now install PHP 7.1 along with all of the necessary PHP modules required by Reader Self:
sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo php71w-mysqlnd
Step 7: Install MariaDB (MySQL) Server
CentOS 7 defaults to using MariaDB database server, which is an enhanced, fully open source, community developed, drop-in replacement for MySQL server.
Install MariaDB database server:
sudo yum -y install mariadb-server
Pokrenite i omogućite MariaDB poslužitelj da se automatski izvršava u vrijeme pokretanja:
sudo systemctl enable mariadb
sudo systemctl start mariadb
Osigurajte svoju instalaciju MariaDB poslužitelja:
sudo mysql_secure_installation
rootLozinka će biti prazan, pa jednostavno pritisnite Enter kad dobijete prompt za rootlozinku.
Kada se od vas zatraži da kreirate MariaDB/MySQL rootkorisnika, odaberite "Y" (za da), a zatim unesite sigurnu rootlozinku. Jednostavno odgovorite "Y" na sva ostala da/ne pitanja jer su zadani prijedlozi najsigurnije opcije.
Korak 8: Stvorite bazu podataka za Reader Self
Prijavite se u ljusku MariaDB kao rootkorisnik MariaDB pokretanjem sljedeće naredbe:
sudo mysql -u root -p
Za pristup MariaDB naredbenom retku, jednostavno unesite MariaDB rootlozinku kada se to od vas zatraži.
Pokrenite sljedeće upite za stvaranje MariaDB baze podataka i korisnika baze podataka za 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;
Naziv baze podataka self_dbi korisničko ime možete zamijeniti self_usernečim više po svom ukusu, ako želite. (Imajte na umu da je zadana maksimalna duljina za korisnička imena u MariaDB na CentOS 7 16 znakova). Također, provjerite jeste li zamijenili "UltraSecurePassword" stvarno sigurnom lozinkom.
Korak 9: Instalirajte Reader Self Files
Promijenite svoj trenutni radni direktorij u zadani web direktorij:
cd /var/www/html/
Ako dobijete poruku o pogrešci koja kaže nešto poput, 'No such file or directory'pokušajte sljedeću naredbu:
cd /var/www/ ; sudo mkdir html ; cd html
Vaš trenutni radni imenik sada će biti: /var/www/html/. To možete provjeriti pwdnaredbom (ispis radnog imenika):
pwd
Sada koristite wgetza preuzimanje Reader Self instalacijskog paketa:
sudo wget --content-disposition https://github.com/readerself/readerself/archive/3.5.6.zip
Napomena: svakako biste trebali provjeriti najnoviju verziju tako da posjetite stranicu za samostalno preuzimanje Reader-a .
Navedite trenutni direktorij kako biste provjerili jeste li uspješno preuzeli datoteku:
ls -la
Idemo brzo instalirati unzipkako bismo mogli raspakirati datoteku:
sudo yum -y install unzip
Sada dekomprimirajte zip arhivu:
sudo unzip readerself-3.5.6.zip
Premjestite sve instalacijske datoteke u web korijenski direktorij:
sudo mv -v readerself-3.5.6/* readerself-3.5.6/.* /var/www/html 2>/dev/null
Promijenite vlasništvo nad web datotekama kako biste izbjegli probleme s dopuštenjima:
sudo chown -R apache:apache * ./
Ponovno pokrenite Apache:
sudo systemctl restart httpd
Sada smo spremni prijeći na posljednji korak.
Korak 10: dovršite samostalnu instalaciju čitača
Sada je vrijeme da posjetite IP adresu instance vašeg poslužitelja u vašem pregledniku ili ako ste već konfigurirali svoje Vultr DNS postavke (i dali ste mu dovoljno vremena za širenje), možete jednostavno posjetiti svoju domenu.
Da biste pristupili stranici za samoinstalaciju Reader-a, unesite svoju IP adresu Vultr instance u adresnu traku preglednika, a zatim /setup/:
http://YOUR_VULTR_IP_ADDRESS/setup/
Vidjet ćete Pre-Installation Checkna vrhu stranice pa provjerite izgleda li sve u redu i nastavite na sljedeći korak.
Unesite sljedeće vrijednosti baze podataka u Databaseodjeljak instalacijske stranice:
Database Type: MySQL (improved version)
Hostname: localhost
Username: self_user
Password: UltraSecurePassword
Database Name: self_db
Unesite sljedeće Userpojedinosti:
Email: <your email address>
Password: <a secure password>
Nakon što ste provjerili jesu li svi gore navedeni detalji u redu, jednostavno kliknite na ikonu kvačice u donjem lijevom dijelu stranice kako biste dovršili instalaciju.
Bit ćete preusmjereni na potvrdu koja kaže Installation successful.
Da biste dodatno konfigurirali Reader Self, kliknite na izbornik u gornjem desnom kutu i odaberite settings.
Ako želite da čitatelj automatski ažurira vaše feedove (a vi to gotovo sigurno želite), morat ćete urediti svoj crontab:
sudo crontab -e
Dodajte sljedeći redak za osvježavanje feedova svaki sat:
0 * * * * apache cd /var/www/html && php index.php refresh items
Ako još niste konfigurirali svoje Vultr DNS postavke, to možete učiniti pomoću Vultr DNS upravljačke ploče.
Također je preporučljivo konfigurirati svoju web stranicu za korištenje SSL-a jer će većina modernih preglednika davati upozorenja kada web-mjesta nemaju omogućen SSL, a SSL certifikati su sada dostupni besplatno.
U svakom slučaju, sada ste spremni početi dodavati svoje feedove i dodatno prilagođavati izgled i funkcionalnost vašeg čitača.