Kako instalirati LEMP poslužitelj na CentOS 8


LEMP je softverski skup koji se sastoji od skupa besplatnih alata otvorenog koda koji se koriste za pokretanje dinamičkih web stranica s velikim prometom. LEMP je akronim za Linux, Nginx (izgovara se kao Engine X), MariaDB/MySQL< i PHP.

Nginx je open-source, robustan web poslužitelj visokih performansi koji također može poslužiti i kao obrnuti proxy. MariaDB je sustav baze podataka koji se koristi za pohranu korisničkih podataka, a PHP je skriptni jezik na strani poslužitelja koji se koristi za razvoj i podršku dinamičkih web stranica.

Povezani članak: Kako instalirati LAMP poslužitelj na CentOS 8

U ovom ćete članku naučiti kako instalirati LEMP poslužitelj na CentOS 8 Linux distribuciju.

Korak 1: Ažurirajte softverske pakete na CentOS 8

Za početak, ažurirajte i repozitorij i softverske pakete na CentOS 8 Linuxu pokretanjem sljedeće naredbe dnf.

sudo dnf update

Korak 2: Instalirajte Nginx web poslužitelj na CentOS 8

Po završetku ažuriranja paketa, instalirajte Nginx pomoću jednostavne naredbe.

sudo dnf install nginx

Isječak pokazuje da je instalacija Nginxa prošla dobro bez ikakvih zastoja.

Kada instalacija završi, konfigurirajte Nginx da se pokrene pri dizanju i potvrdite da Nginx radi izvršavanjem naredbi.

sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx

Za provjeru instalirane verzije Nginxa pokrenite naredbu.

nginx -v

Ako vas znatiželja nadvlada i želite iskopati više informacija o Nginxu, izvršite sljedeću naredbu rpm.

rpm -qi nginx 

Kako biste potvrdili da vaš Nginx poslužitelj radi pomoću preglednika, jednostavno upišite IP adresu vašeg sustava u URL traku i pritisnite ENTER.

http://server-IP

Trebali biste moći vidjeti web stranicu “Dobrodošli u Nginx” kao pokazatelj da je vaš Nginx web poslužitelj pokrenut i radi.

Korak 3: Instalirajte MariaDB na CentOS 8

MariaDB je besplatni fork MySQL otvorenog koda i isporučuje najnovije značajke koje ga čine boljom zamjenom za MySQL. Da biste instalirali MariaDB, pokrenite naredbu.

sudo dnf install mariadb-server mariadb

Da biste omogućili MariaDB da se automatski pokrene tijekom pokretanja, pokrenite.

sudo systemctl enable mariadb

Za pokretanje poslužitelja MariaDB pokrenite naredbu.

sudo systemctl start mariadb

Nakon što ga instalirate, upotrijebite donju naredbu da provjerite njegov status.

sudo systemctl status mariadb

Mašina baze podataka MariaDB nije sigurna i svatko se može prijaviti bez vjerodajnica. Da biste ojačali MariaDB i osigurali ga kako biste smanjili šanse neovlaštenog pristupa, pokrenite naredbu.

sudo mysql_secure_installation

Ono što slijedi je niz upita. Prvi zahtijeva da postavite root lozinku. Pritisnite ENTER i upišite Y za Yes da navedete root lozinku.

Nakon postavljanja lozinke, odgovorite na preostala pitanja kako biste uklonili anonimnog korisnika, uklonili testnu bazu podataka i onemogućili udaljenu root prijavu.

Nakon što dovršite sve korake, možete se prijaviti na poslužitelj MariaDB i provjeriti informacije o verziji poslužitelja MariaDB (navedite lozinku koju ste naveli prilikom osiguravanja poslužitelja).

mysql -u root -p

Korak 4: Instalirajte PHP 7 na CentOS 8

Konačno, instalirat ćemo posljednju komponentu LEMP stog koji je PHP, skriptni web programski jezik koji se obično koristi za razvoj dinamičkih web stranica.

U vrijeme pisanja ovog vodiča, najnovija verzija jePHP 7.4. Ovo ćemo instalirati pomoću Remi repozitorija. Remi repozitorij je besplatan repozitorij koji se isporučuje s najnovijim najnovijim verzijama softvera koje nisu dostupne prema zadanim postavkama na CentOS-u.

Pokrenite naredbu u nastavku da biste instalirali EPEL repozitorij.

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Nakon toga nastavite i instalirajte yum-utils i omogućite remi-repozitorij pomoću donje naredbe.

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Zatim potražite dostupne PHP module koji su dostupni za instalaciju.

sudo dnf module list php

Kao što je prikazano, izlaz će prikazati dostupne PHP module, tok i profile instalacije. Iz izlaza u nastavku možemo vidjeti da je trenutno instalirana verzija PHP 7.2 označena slovom d u uglatim zagradama.

Iz rezultata također možemo vidjeti da je najnoviji PHP modul PHP 7.4 koji ćemo instalirati. Ali prvo moramo resetirati PHP module. Pa pokrenite naredbu.

sudo dnf module reset php

Zatim omogućite PHP 7.4 modul pokretanjem.

sudo dnf module enable php:remi-7.4

S omogućenim PHP 7.4 modulom, konačno instalirajte PHP, PHP-FPM (FastCGI Process Manager) i pridružene PHP module pomoću naredbe.

sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

Sada provjerite instaliranu verziju.

php -v 

Zatim omogućite i pokrenite php-fpm.

sudo systemctl enable php-fpm
sudo systemctl start php-fpm

Za provjeru statusa izvršite naredbu.

sudo systemctl status php-fpm

Druga stvar je da je prema zadanim postavkama PHP-FPM konfiguriran da radi kao Apache korisnik. Ali budući da koristimo Nginx web poslužitelj, moramo ovo promijeniti u Nginx korisnik.

Dakle, otvorite datoteku /etc/php-fpm.d/www.conf.

vi /etc/php-fpm.d/www.conf

locirajte ove dvije linije.

user = apache
group = apache

Sada promijenite obje vrijednosti u Nginx.

user = nginx
group = nginx

Spremite i izađite iz konfiguracijske datoteke.

Zatim ponovno pokrenite Nginx i PHP-FPM kako bi promjene stupile na snagu.

sudo systemctl restart nginx
sudo systemctl restart php-fpm

Korak 5: Testiranje PHP informacija

Prema zadanim postavkama, mapa web direktorija za Nginx nalazi se na putu /usr/share/nginx/html/. Kako bismo testirali PHP-FPM, napravit ćemo PHP datoteku info.php i zalijepiti donje retke.

<?php
 phpinfo();
?>

Spremite i izađite iz datoteke.

Pokrenite preglednik i u URL traku upišite IP adresu web poslužitelja kao što je prikazano.

http://server-ip-address/info.php

Ako je sve prošlo dobro, vidjet ćete informacije o verziji PHP-a koju koristite i bit će prikazani drugi podaci.

I to je to, ljudi! Uspješno ste instalirali hrpu poslužitelja LEMP na CentOS 8. Kao sigurnosnu mjeru, možda biste trebali ukloniti datoteku info.php kako biste spriječili hakere da dođu do informacija s vašeg Nginx poslužitelja.