Forutsetninger
Trinn 1: Legg til en Sudo-bruker
Trinn 2: Oppdater CentOS 7 System
Trinn 3: Installer Apache Web Server
Trinn 4: Åpne nettbrannmurporter
Trinn 5: Deaktiver SELinux (hvis aktivert)
Trinn 6: Installer PHP 7.1
Trinn 7: Installer MariaDB (MySQL) Server
Trinn 8: Opprett database for Reader Self
Trinn 9: Installer Reader Self Files
Trinn 10: Fullfør selvinstallasjonen av leseren
Reader Self 3.5 er en enkel og fleksibel, gratis og åpen kildekode, selvhostet RSS-leser og Google Reader-alternativ. Reader Self støtter hovedtastatursnarveiene fra Google Reader, OPML-import, innebygd autentisering, HTTPS-bildeproxy (for å laste ned HTTP-bilder), synkronisering av stjernemerkede elementer med Pinboard, muligheten til å dele på tvers av store sosiale nettverk, Elastic Search-integrasjon, og er vakkert responsiv på tvers av skrivebord, nettbrett og mobil.
I denne opplæringen skal vi installere Reader Self 3.5 på en CentOS 7 LAMP VPS ved å bruke Apache-webserver, PHP 7.1 og en MariaDB-database.
Forutsetninger
- En ren Vultr CentOS 7-serverforekomst med SSH-tilgang
Trinn 1: Legg til en Sudo-bruker
Vi starter med å legge til en ny sudobruker.
Først logger du på serveren din som root:
ssh root@YOUR_VULTR_IP_ADDRESS
Legg til en ny bruker kalt user1(eller ditt foretrukne brukernavn):
useradd user1
Deretter setter du passordet for user1brukeren:
passwd user1
Når du blir bedt om det, skriv inn et sikkert og minneverdig passord.
Sjekk nå /etc/sudoersfilen for å forsikre deg om at sudoersgruppen er aktivert:
visudo
Se etter en del som dette:
%wheel ALL=(ALL) ALL
Denne linjen forteller oss at brukere som er medlemmer av wheelgruppen kan bruke sudokommandoen for å få rootprivilegier. Den vil være ukommentert som standard, slik at du ganske enkelt kan avslutte filen.
Deretter må vi legge user1til i wheelgruppen:
usermod -aG wheel user1
Vi kan bekrefte user1gruppemedlemskapet og kontrollere at usermodkommandoen fungerte med groupskommandoen:
groups user1
Bruk nå sukommandoen for å bytte til den nye sudo- user1brukerkontoen:
su - user1
Ledeteksten vil oppdateres for å indikere at du nå er logget på user1kontoen. Du kan bekrefte dette med whoamikommandoen:
whoami
Start nå sshdtjenesten på nytt slik at du kan logge på sshmed den nye ikke-root sudo-brukerkontoen du nettopp har opprettet:
sudo systemctl restart sshd
Avslutt user1kontoen:
exit
Avslutt rootkontoen (som vil koble fra sshøkten):
exit
Du kan nå gå sshinn i serverforekomsten fra din lokale vert ved å bruke den nye ikke-root sudo- user1brukerkontoen:
ssh user1@YOUR_VULTR_IP_ADDRESS
Hvis du vil kjøre sudo uten å måtte skrive inn et passord hver gang, åpner du /etc/sudoersfilen igjen ved å bruke visudo:
sudo visudo
Rediger seksjonen for wheelgruppen slik at den ser slik ut:
%wheel ALL=(ALL) NOPASSWD: ALL
Vennligst merk: Deaktivering av passordkravet for sudo-brukeren er ikke en anbefalt praksis, men det er inkludert her da det kan gjøre serverkonfigurasjonen mye mer praktisk og mindre frustrerende, spesielt under lengre systemadministrasjonsøkter. Hvis du er bekymret for sikkerhetsimplikasjonene, kan du alltid tilbakestille konfigurasjonsendringen til den opprinnelige etter at du er ferdig med administrasjonsoppgavene.
Når du vil logge på rootbrukerkontoen fra sudobrukerkontoen, kan du bruke en av følgende kommandoer:
sudo -i
sudo su -
Du kan avslutte rootkontoen og gå tilbake til sudobrukerkontoen din når som helst ved å skrive inn følgende:
exit
Trinn 2: Oppdater CentOS 7 System
Før vi installerer noen pakker på CentOS-serverforekomsten, vil vi først oppdatere systemet.
Pass på at du er logget på serveren med en ikke-root sudo-bruker og kjør følgende kommando:
sudo yum -y update
Trinn 3: Installer Apache Web Server
Installer Apache-nettserveren:
sudo yum -y install httpd
Bruk deretter systemctlkommandoen for å starte og aktivere Apache til å kjøre automatisk ved oppstart:
sudo systemctl enable httpd
sudo systemctl start httpd
Sjekk Apache-konfigurasjonsfilen din for å sikre at DocumentRootdirektivet peker til riktig katalog:
sudo vi /etc/httpd/conf/httpd.conf
Den DocumentRootkonfigurasjon alternativet vil se slik ut:
DocumentRoot "/var/www/html"
La oss nå sørge for at mod_rewriteApache-modulen er lastet. Vi kan gjøre dette ved å søke i konfigurasjonsfilen for Apache-basemodulene etter begrepet " mod_rewrite".
Åpne filen:
sudo vi /etc/httpd/conf.modules.d/00-base.conf
Søk etter begrepet mod_rewrite.
Hvis mod_rewriteApache-modulen er lastet inn, vil du finne en konfigurasjonslinje som ser slik ut:
LoadModule rewrite_module modules/mod_rewrite.so
Hvis linjen ovenfor starter med et semikolon, må du fjerne semikolonet for å fjerne kommentaren til linjen og laste inn modulen. Dette gjelder selvfølgelig også for alle andre nødvendige Apache-moduler.
Vi må nå redigere Apaches standard konfigurasjonsfil slik at den mod_rewritefungerer riktig med Reader Self.
Åpne filen:
sudo vi /etc/httpd/conf/httpd.conf
Finn deretter delen som begynner med <Directory "/var/www/html">og endre AllowOverride nonetil AllowOverride All. Sluttresultatet (med alle kommentarer fjernet) vil se omtrent slik ut:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Lagre og lukk nå Apache-konfigurasjonsfilen.
Vi vil starte Apache på nytt på slutten av denne opplæringen, men å starte Apache på nytt regelmessig under installasjon og konfigurasjon er absolutt en god vane, så la oss gjøre det nå:
sudo systemctl restart httpd
Trinn 4: Åpne nettbrannmurporter
Vi må nå åpne standard HTTPog HTTPSporter, da de vil bli blokkert som firewalldstandard.
Åpne brannmurportene:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Last inn brannmuren på nytt for å bruke endringene:
sudo firewall-cmd --reload
Du vil se ordet successvises i terminalen din etter hver vellykket brannmurkonfigurasjonskommando.
We can quickly verify that the Apache HTTP port is open by visiting the IP address or domain of the server instance in a browser:
http://YOUR_VULTR_IP_ADDRESS/
If everything is set up correctly, you will see the default Apache web page in your browser.
Step 5: Disable SELinux (if enabled)
SELinux stands for "Security Enhanced Linux". It is a security enhancement to Linux which allows users and administrators more control over access control. It is disabled by default on Vultr CentOS 7 instances, but we will cover the steps to disable it, just in case you are not starting from a clean install and it was previously enabled.
To avoid file permission problems with Reader Self we need to ensure that SELinux is disabled.
First, let's check whether SELinux is enabled or disabled with the sestatus command:
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
Start og aktiver MariaDB-serveren til å kjøre automatisk ved oppstart:
sudo systemctl enable mariadb
sudo systemctl start mariadb
Sikre din MariaDB-serverinstallasjon:
sudo mysql_secure_installation
Den rootpassord vil bli tomt, så bare trykk enter når du blir bedt om rootpassord.
Når du blir bedt om å opprette en MariaDB/MySQL- rootbruker, velg "Y" (for ja) og skriv deretter inn et sikkert rootpassord. Svar ganske enkelt "Y" på alle de andre ja/nei-spørsmålene, da standardforslagene er de sikreste alternativene.
Trinn 8: Opprett database for Reader Self
Logg inn på MariaDB-skallet som MariaDB- rootbrukeren ved å kjøre følgende kommando:
sudo mysql -u root -p
For å få tilgang til MariaDB-ledeteksten, skriv ganske enkelt inn MariaDB- rootpassordet når du blir bedt om det.
Kjør følgende spørringer for å opprette en MariaDB-database og databasebruker for 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;
Du kan erstatte databasenavnet self_dbog brukernavnet self_usermed noe mer du liker, hvis du foretrekker det. (Vær oppmerksom på at standard maksimal lengde for brukernavn i MariaDB på CentOS 7 er 16 tegn). Pass også på at du erstatter "UltraSecurePassword" med et faktisk sikkert passord.
Trinn 9: Installer Reader Self Files
Endre din nåværende arbeidskatalog til standard nettkatalog:
cd /var/www/html/
Hvis du får en feilmelding som sier noe sånt som 'No such file or directory', prøv følgende kommando:
cd /var/www/ ; sudo mkdir html ; cd html
Din nåværende arbeidskatalog vil nå være: /var/www/html/. Du kan sjekke dette med pwdkommandoen (skriv ut arbeidskatalog):
pwd
Bruk nå for wgetå laste ned Reader Self-installasjonspakken:
sudo wget --content-disposition https://github.com/readerself/readerself/archive/3.5.6.zip
Merk: Du bør definitivt se etter den nyeste versjonen ved å gå til Reader Self-nedlastingssiden .
List gjeldende katalog for å kontrollere at du har lastet ned filen:
ls -la
La oss raskt installere unzipslik at vi kan pakke ut filen:
sudo yum -y install unzip
Dekomprimer nå zip-arkivet:
sudo unzip readerself-3.5.6.zip
Flytt alle installasjonsfilene til webrotkatalogen:
sudo mv -v readerself-3.5.6/* readerself-3.5.6/.* /var/www/html 2>/dev/null
Endre eierskap til nettfilene for å unngå problemer med tillatelser:
sudo chown -R apache:apache * ./
Start Apache på nytt:
sudo systemctl restart httpd
Nå er vi klare til å gå videre til det siste trinnet.
Trinn 10: Fullfør selvinstallasjonen av leseren
Det er nå på tide å besøke IP-adressen til serverforekomsten din i nettleseren din, eller hvis du allerede har konfigurert Vultr DNS-innstillingene (og gitt den nok tid til å spre seg), kan du ganske enkelt besøke domenet ditt i stedet.
For å få tilgang til Reader Self-installasjonssiden, skriv inn Vultr-forekomstens IP-adresse i nettleserens adresselinje, etterfulgt av /setup/:
http://YOUR_VULTR_IP_ADDRESS/setup/
Du vil se en Pre-Installation Checkøverst på siden, så sørg for at alt ser bra ut og fortsett til neste trinn.
Skriv inn følgende databaseverdier i Databasedelen av installasjonssiden:
Database Type: MySQL (improved version)
Hostname: localhost
Username: self_user
Password: UltraSecurePassword
Database Name: self_db
Skriv inn følgende Userdetaljer:
Email: <your email address>
Password: <a secure password>
Når du har sjekket at alle detaljene ovenfor er i orden, klikker du bare på hakeikonet nederst til venstre på siden for å fullføre installasjonen.
Du vil bli omdirigert til en bekreftelse som sier Installation successful.
For å konfigurere Reader Self ytterligere, klikk på menyen øverst til høyre og velg settings.
Hvis du vil at leseren skal automatisk oppdatere feedene dine (og det gjør du nesten helt sikkert), må du redigere crontab:
sudo crontab -e
Legg til følgende linje for å oppdatere feedene dine hver time:
0 * * * * apache cd /var/www/html && php index.php refresh items
Hvis du ennå ikke har konfigurert Vultr DNS-innstillingene, kan du gjøre det ved å bruke Vultr DNS-kontrollpanelet.
Det er også tilrådelig å konfigurere nettstedet ditt til å bruke SSL, da de fleste moderne nettlesere vil advare når nettsteder ikke har SSL aktivert, og SSL-sertifikater er nå tilgjengelig gratis.
Uansett er du nå klar til å begynne å legge til feedene dine og ytterligere tilpasse utseendet og funksjonaliteten til leseren din.