Kuinka asentaa LEMP-palvelin CentOS 8:aan


LEMP on ohjelmistopino, joka sisältää joukon ilmaisia ja avoimen lähdekoodin työkaluja, joita käytetään suuren liikenteen ja dynaamisten verkkosivustojen tehostamiseen. LEMP on lyhenne sanoista Linux, Nginx (äännetään nimellä Engine X), MariaDB/MySQL< ja PHP.

Nginx on avoimen lähdekoodin, kestävä ja tehokas verkkopalvelin, joka voi toimia myös käänteisenä välityspalvelimena. MariaDB on tietokantajärjestelmä, jota käytetään käyttäjätietojen tallentamiseen, ja PHP on palvelinpuolen komentosarjakieli, jota käytetään dynaamisten verkkosivujen kehittämiseen ja tukemiseen.

Aiheeseen liittyvä artikkeli: LAMP-palvelimen asentaminen CentOS 8:aan

Tässä artikkelissa opit asentamaan LEMP-palvelimen CentOS 8 Linux-jakeluun.

Vaihe 1: Päivitä ohjelmistopaketit CentOS 8:ssa

Aloita päivittämällä sekä arkisto että ohjelmistopaketit CentOS 8 Linuxissa suorittamalla seuraava dnf-komento.

sudo dnf update

Vaihe 2: Asenna Nginx Web Server CentOS 8:aan

Kun pakettien päivitys on valmis, asenna Nginx yksinkertaisella komennolla.

sudo dnf install nginx

Katkelma osoittaa, että Nginx-asennus sujui hyvin ilman ongelmia.

Kun asennus on valmis, määritä Nginx käynnistymään käynnistyksen yhteydessä ja varmista, että Nginx on käynnissä suorittamalla komennot.

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

Tarkista asennettu Nginx-versio suorittamalla komento.

nginx -v

Jos uteliaisuus voittaa ja haluat kaivaa lisää tietoa Nginxistä, suorita seuraava rpm-komento.

rpm -qi nginx 

Vahvista, että Nginx-palvelimesi toimii selaimella, kirjoittamalla järjestelmäsi IP-osoite URL-palkkiin ja painamalla ENTER.

http://server-IP

Sinun pitäisi nähdä Tervetuloa Nginxiin -verkkosivu, joka osoittaa, että Nginx-verkkopalvelimesi on toiminnassa.

Vaihe 3: Asenna MariaDB CentOS 8:aan

MariaDB on ilmainen ja avoimen lähdekoodin MySQL-haarukka, joka sisältää uusimmat ominaisuudet, jotka tekevät siitä paremman korvaajan MySQL:lle. Asenna MariaDB suorittamalla komento.

sudo dnf install mariadb-server mariadb

Suorita, jotta MariaDB käynnistyy automaattisesti käynnistyksen yhteydessä.

sudo systemctl enable mariadb

Käynnistä MariaDB-palvelin suorittamalla komento.

sudo systemctl start mariadb

Kun olet asentanut sen, tarkista sen tila alla olevalla komennolla.

sudo systemctl status mariadb

MariaDB-tietokantamoottori on epävarma ja kuka tahansa voi kirjautua sisään ilman tunnistetietoja. Koventaa MariaDB ja suojata se luvattoman käytön mahdollisuuksien minimoimiseksi suorittamalla komento.

sudo mysql_secure_installation

Seuraava on sarja kehotteita. Ensimmäinen edellyttää, että asetat pääkäyttäjän salasanan. Paina ENTER ja kirjoita Y kohtaan Yes määrittääksesi pääkäyttäjän salasanan.

Kun olet asettanut salasanan, vastaa jäljellä oleviin kysymyksiin poistaaksesi anonyymin käyttäjä, poista testitietokanta ja poista etäpääkirjautuminen käytöstä.

Kun olet suorittanut kaikki vaiheet, voit kirjautua sisään MariaDB-palvelimelle ja tarkistaa MariaDB-palvelimen versiotiedot (anna salasana, jonka määritit palvelimen suojauksen yhteydessä).

mysql -u root -p

Vaihe 4: Asenna PHP 7 CentOS 8:aan

Lopuksi asennamme viimeisen komponentin LEMP-pinon, joka on PHP, komentosarjan web-ohjelmointikieli, jota käytetään yleisesti dynaamisten verkkosivujen kehittämiseen.

Tätä opasta kirjoitettaessa uusin versio on PHP 7.4. Asennamme tämän käyttämällä Remi -tietovarastoa. Remi-arkisto on ilmainen arkisto, joka toimitetaan uusimmilla huippuluokan ohjelmistoversioilla, jotka eivät ole oletuksena saatavilla CentOS:ssä.

Asenna EPEL-arkisto suorittamalla alla oleva komento.

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

Jatka sen jälkeen ja asenna yum-utils ja ota käyttöön remi-arkisto käyttämällä alla olevaa komentoa.

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

Etsi seuraavaksi käytettävissä olevat PHP-moduulit, jotka ovat käytettävissä asennettavaksi.

sudo dnf module list php

Kuten näkyy, tulos näyttää käytettävissä olevat PHP-moduulit, stream- ja asennusprofiilit. Alla olevasta tulosteesta voimme nähdä, että tällä hetkellä asennettu versio on PHP 7.2, joka on merkitty kirjaimella d hakasulkeissa.

Tulosteesta voimme myös nähdä, että uusin PHP-moduuli on PHP 7.4, jonka aiomme asentaa. Mutta ensin meidän on palautettava PHP-moduulit. Joten suorita komento.

sudo dnf module reset php

Ota seuraavaksi PHP 7.4 -moduuli käyttöön suorittamalla.

sudo dnf module enable php:remi-7.4

Kun PHP 7.4 -moduuli on käytössä, asenna lopuksi PHP, PHP-FPM (FastCGI Process Manager) ja niihin liittyvät PHP-moduulit komentoa käyttämällä.

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

Tarkista nyt asennettu versio.

php -v 

Ota seuraavaksi käyttöön ja käynnistä php-fpm.

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

Tarkista sen tila suorittamalla komento.

sudo systemctl status php-fpm

Toinen asia on, että oletuksena PHP-FPM on määritetty toimimaan Apache-käyttäjänä. Mutta koska käytämme Nginx-verkkopalvelinta, meidän on vaihdettava tämä Nginx-käyttäjäksi.

Avaa siis tiedosto /etc/php-fpm.d/www.conf.

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

etsi nämä kaksi riviä.

user = apache
group = apache

Vaihda nyt molemmat arvot Nginxiksi.

user = nginx
group = nginx

Tallenna ja poistu asetustiedostosta.

Käynnistä sitten Nginx ja PHP-FPM uudelleen, jotta muutokset tulevat voimaan.

sudo systemctl restart nginx
sudo systemctl restart php-fpm

Vaihe 5: PHP-tietojen testaus

Oletuksena Nginxin verkkohakemistokansio on polussa /usr/share/nginx/html/. Testaaksemme PHP-FPM:ää luomme PHP-tiedoston info.php ja liitämme alla olevat rivit.

<?php
 phpinfo();
?>

Tallenna ja poistu tiedostosta.

Käynnistä selain ja kirjoita URL-palkkiin verkkopalvelimesi IP-osoite kuvan osoittamalla tavalla.

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

Jos kaikki meni hyvin, näet tietoja käyttämästäsi PHP-versiosta ja muita mittareita näytetään.

Ja siinä se, hyvät ihmiset! Olet onnistuneesti asentanut LEMP-palvelinpinon CentOS 8 -käyttöjärjestelmään. Turvallisuussyistä kannattaa ehkä poistaa info.php-tiedosto estääksesi hakkereita saamasta tietoja Nginx-palvelimeltasi.