Ebben a cikkben lépésről lépésre útmutatást adunk a webes környezet konfigurálásához Linuxot futtató kiszolgálón. Először is meg kell értenie, hogy egy tipikus webszerver néhány kölcsönhatásban lévő összetevőből áll:
- HTTP szerver
- programozási nyelv tolmács
- adatbázis-kezelő rendszer (DBMS)
Webhelye kezeléséhez be kell állítania egy tartalomkezelő rendszert (CMS), egy webes felületet az adatbázis-kezeléshez és az FTP-hozzáférést.
Vegyük fontolóra egy nagyon népszerű Apache-PHP-MySQL(MariaDB) konfiguráció beállítását Linuxon. Telepítjük továbbá a vsftpd ftp szervert, a phpMyAdmin - egy webes felületet az adatbázis-kezeléshez, valamint a WordPress tartalomkezelő rendszert.
Kezdésként kérjük, rendeljen VPS szervert vagy dedikált szervert . Például mi egy statikus IP-címmel rendelkező virtuális szervert használtunk, amelyen Ubuntu Server 18.04 fut. Minden parancsot a root felhasználó futtatott.
Apache HTTP szerver konfigurációja
1. Telepítés
apt install apache2
A telepítés befejezése után nyisson meg egy böngészőt, és ellenőrizze a „http://[szerver_ip_címe]” részt.
Ha a fenti képernyőképen ehhez hasonló üdvözlőoldalt lát, az azt jelenti, hogy a HTTP-szerver működik.
2. Hozzon létre egy tesztoldalt
A weboldal alapértelmezett gyökérkönyvtára a „/var/www/html” . Itt találod az imént látott üdvözlő oldalt. Hozzunk létre egy külön könyvtárat a „/var/www/sites” néven a virtuális hosztoknak, és egy almappát a „/var/www/sites/site1” néven a teszt weboldalad indexoldalával.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Az eredményül kapott „/var/www/sites/site1/index.html” fájlnak csak egy sornyi HTML kódot kell tartalmaznia:
<H1>Welcome</H1>
3. Apache szerver konfigurációja
A weboldalak konfigurációs fájljai az „/etc/apache2/sites-available/” katalógusban találhatók. Hozzunk létre egy konfigurációs fájlt egy új virtuális hosthoz, a „000-default.conf” fájl alapértelmezett konfigurációját alapul véve.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Nyisd meg a „site1.conf” fájlt , és módosítsd a „DocumentRoot” attribútumot. Írd be a webhelyed elérési útját értékként, tehát esetünkben ez „/var/www/sites/site1” legyen.
Ebben a szakaszban nem kell konfigurálnunk több webhely egyidejű működését, így letilthatjuk az alapértelmezett webhelyet, és engedélyezhetjük az új webhelyet. A változtatások alkalmazásához töltse be újra a kiszolgáló konfigurációját.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Nyisd meg újra a „http://[szerver _ip_címe]” linket , és győződj meg róla, hogy az alapértelmezett üdvözlő oldal helyett az új oldalunk van.
Befejeztük HTTP szerverünk konfigurálását, és folytathatjuk a következő lépést.
FTP szerver konfiguráció
1. Telepítés
Telepítsük az ftp szerverünket és egy további „db-util” csomagot , amelyre szükségünk lesz a virtuális felhasználók konfigurálásához.
apt install vsftpd db-util
2. Hozzon létre helyi fiókot
A vsftpd szerver lehetővé teszi a hozzáférési engedélyek nagyon rugalmas konfigurálását. Feladatainkhoz a következőket kell biztosítanunk az ftp felhasználók számára:
- teljes hozzáférést biztosít a tartalmához „/var/www/sites/”;
- tiltsa le mindazt, ami fent van „/var/www/”;
- kapcsolat egy virtuális fiókkal;
Hozz létre egy helyi fiókot, a „virtuálist” bejelentkezési jogosultság nélkül, de hozzáféréssel a „/var/www/” saját mappához . Ezt a fiókot fogják használni az FTP-felhasználók a szerverhez való csatlakozáshoz.
useradd -d /var/www virtual
Alapértelmezés szerint a „Root” lesz a „/var/www” mappa tulajdonosa . Ahhoz, hogy az FTP-felhasználók módosíthassák a weboldalak tartalmát, módosítsuk a „/var/www/sites/” mappa tulajdonosát, beleértve a „virtual” almappáit is.
chown -R virtual:root /var/www/sites
Ennek eredményeként a „virtual” felhasználó láthatja a „/var/www/” tartalmát , és írhat a „/var/www/sites/” almappába.
3. konfiguráció
A fő konfiguráció az „/etc/vsftpd.conf” fájlban található , ezért nyissuk meg és szerkesszük az alábbiak szerint:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Hozza létre az adatbázist
A virtuális fiókok adatainak tárolásához adatbázisra lesz szüksége.
Először hozzunk létre egy egyszerű szövegfájlt, a „users.txt”-t a saját mappánkban, és mentsük el a virtuális felhasználók hozzáférési adatait (bejelentkezési név és jelszó) minden második sorba. Például szükségünk lesz egy virtuális felhasználóra „ftp” bejelentkezéssel és „Qwe123” jelszóval . Ekkor a fájl így fog kinézni:
ftp
Qwe123
Hozzuk létre az adatbázist
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Módosítsuk az alapértelmezett „/etc/pam.d/vsftp” PAM fájlt a következőképpen:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Kérjük, vegye figyelembe, hogy a „pam_userdb.so” könyvtár elérési útja eltérő lehet, de szükség esetén módosíthatja.
A változtatások alkalmazásához töltse be újra a vsftpd szervert.
systemctl restart vsftpd
Befejeztük az FTP szerver konfigurálását.
Csatlakozás részletei:
- ftp://[szerver_ip_címe]
- bejelentkezés: ftp
- jelszó: Qwe123
PHP szerver konfiguráció
1. PHP telepítése
Ma a PHP legújabb stabil verziója a php 7.4.5, amely nem szerepel a hivatalos Ubuntu tárolókban. Csatlakoztassunk egy harmadik féltől származó tárolót, és telepítsük a PHP legújabb verzióját.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Jelölje be
Ahhoz, hogy a PHP futni tudjon, a weboldalfájlnak „.php” kiterjesztésűnek kell lennie. Nevezzük át a tesztoldalunkat:
cd /var/www/sites/site1/
mv index.html index.php
Add hozzá a következő php sort a „/var/www/sites/site1/index.php” fájlhoz , hogy a fájl így nézzen ki:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Mentse el a változtatásokat, és ellenőrizze az eredményt a böngészőben.
Ha a „phpinfo()” függvény eredményét látod , a PHP interpreter megfelelően működik. Most folytassuk a következő lépéssel.
MySQL (MariaDB) konfiguráció
1. Telepítés
Telepítsük a MariaDB-t és egy PHP-modult a MySQL-hez, majd töltsük újra az Apache-t.
apt install mariadb-server php-mysql
systemctl restart apache2
Frissítsd a tesztoldalt, és menj a PHP konfigurációs táblázat PDO szakaszához. Ha megtalálod a „PDO_mysql” szakaszt , az azt jelenti, hogy a Mysql illesztőprogramja megfelelően van telepítve.
Ezután el kell végeznünk a MariaDB kezdeti biztonsági konfigurációját, be kell állítanunk a „root” felhasználó jelszavát, le kell tiltanunk a távoli hozzáférést, és törölnünk kell az összes vendégfiókot.
mysql_secure_installation
Az első lépésben meg kell adnunk a „root” felhasználó jelszavát a DBMS eléréséhez, vagy nyomjuk meg az Enter billentyűt, ha nincs jelszó. Mivel a telepítés után nincs beállítva jelszó a „root” felhasználó számára, egyszerűen nyomjuk meg az „Enter” billentyűt.
Kérjük, vegye figyelembe, hogy a MariaDB-ben már vannak saját fiókok, amelyeknek semmi közük az operációs rendszer fiókjaihoz. Tehát a MariaDB-ben az egyetlen felhasználó, akivel foglalkozunk, a „root”.
Ezután a konfigurátor megkér minket, hogy állítsuk be a root felhasználó jelszavát. Írjuk be az „Y” betűt a megerősítéshez, és adjuk meg az új jelszót. A mi esetünkben ez „Qwe123”.
Válaszolj „Y” -nal az összes többi kérdésre egészen a végéig.
A konfiguráció megtörtént!
MariaDB hozzáférési adatok:
- Bejelentkezés: root
- Jelszó: Qwe123
phpMyAdmin konfiguráció
1. Telepítés
Telepítsük a PHP-hez szükséges bővítményt - az mbstring-et.
apt install php-mbstring
A hivatalos adattárban csak a phpMyAdmin elavult verziója található, ezért telepítsük manuálisan az újat.
Nyissa meg a projekt hivatalos weboldalát: „ https://www.phpmyadmin.net/ ”, és töltse le a legújabb archívumot.
Másold át az archívumot a szerverre a „/var/www/sites/” mappába bármilyen ftp kliens segítségével.
Töröld ki a mappát az archiválásból, és nevezd át „phpMyAdmin” -re . Ne felejtsd el telepíteni az „unzip” segédprogramot. A kicsomagolás után törölheted az archívumot.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Hozd létre a következő mappát: „/var/www/sites/phpMyAdmin/tmp” az ideiglenes fájlok számára, és engedélyezd a hozzáférést mindenkinek. Ha ezt nem teszed meg, a phpMyAdmin a hozzáférés megtagadását fogja jelenteni az ideiglenes mappához.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Hozzon létre egy aliast
Mivel a phpMyAdmin nem egy különálló virtuális gazdagép, és a gyökérkönyvtáron kívül található, konfiguráljuk az álnevet.
Nyisd meg az „/etc/apache2/mods-available/alias.conf” fájlt , és add hozzá ezt a sort:
Alias /pma “/var/www/sites/phpMyAdmin"
ezen a szakaszon belül:
<IfModule alias_module>
</IfModule>
A módosítások alkalmazásához töltse be újra az Apache-t.
systemctl reload apache2
Az alias be van állítva, így a phpMyAdmin-t itt érhetjük el : „http://[szerver_ip_címe]/pma”.
3. Készítse elő az adatbázist
Mivel a MariaDB kezdeti konfigurációja során korlátoztuk a root felhasználó használatát, létre kell hoznunk egy új fiókot minden engedéllyel, amelyet a phpMyAdmin eléréséhez használunk majd.
Ezenkívül a phpMyAdmin további funkcióinak engedélyezéséhez szükségünk lesz egy szolgáltatási adatbázisra és egy fiókra az eléréshez.
Hozzuk létre a fiókokat
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
Kérjük, vegye figyelembe, hogy a második kérésben szereplő adatbázisnév a „… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY …” karakterláncban található .
Ennek eredményeként két fiók jön létre a MariaDB-ben:
- Bejelentkezés: pma, Jelszó: Qwe123Teljes hozzáférés, a phpMyAdminba való bejelentkezéshez lesz használva
- Bejelentkezés: pmaservice, Jelszó: Qwe123A szolgáltatásfiók szükséges a további szolgáltatások működéséhez
A következő lépésben ezeket az adatokat a „config.inc.php” konfigurációs fájlban fogjuk beállítani.
Ezután importálnunk kell az adatbázist a „phpMyAdmin/sql/create_tables.sql” fájlból.
Importáljuk a phpMyAdmin segítségével.
Nyissa meg a „http://[szerver_ip_címe]/pma” linket
Írja be a „pma” bejelentkezési nevet és a „Qwe123” jelszót.
Lépjen az „Importálás” menüpontra , kattintson a „Fájl kiválasztása” gombra, és válassza ki az „sql/create_tables.sql” fájlt a phpMyAdmin gyökérkönyvtárában. A számítógépén található a „phpMyAdmin” mappa a fájlokat tartalmazza. Szükség esetén vonja ki az archiválást.
Az importálás megkezdéséhez kattintson a „Tovább” gombra.
4. konfiguráció
Másoljuk ki a konfigurációs fájlt a sablonból
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Nyissuk meg a „/var/www/sites/phpMyAdmin/config.inc.php” konfigurációs fájlt , és végezzük el a következő módosításokat:
Állíts be egy véletlenszerű, 32 karakteres értéket a „$cfg['blowfish_secret']” attribútumhoz . Használj hozzá bármilyen jelszógenerátort.
Távolítsd el a megjegyzéseket a „phpMyAdmin konfigurációs tárolási beállítások” szakasz összes sorából , és ennek megfelelően állítsd be a MariaDB szolgáltatásfiókjának bejelentkezési nevét és jelszavát a „controluser” és a „controlpass” attribútumokhoz. Esetünkben ez a pmaservice és a Qwe123.
Mentse a módosításokat.
A phpMyadmin elérési adatai:
- http://[server’s_ip_address]/pma/
- Bejelentkezés: pma
- Jelszó: Qwe123
A WordPress telepítése és konfigurálása Linux szerveren
1. WordPress csomag és fájlok elhelyezése
Látogass el a hivatalos WP weboldalra: „ https://ru.wordpress.org/ ”, és töltsd le az archívumot a helyi számítógépedre.
Töltsd fel az archívumot a szerverre a „/var/www/sites/” mappába, majd csomagold ki az archiválást a „wordpress ” mappába.
Másolja át a „/var/www/sites/ site1/” webhely „/var/www/sites/ wordpress/” gyökérmappájának tartalmát.
Mivel a fájlokat root jogosultságokkal másoltuk a konzolon keresztül, változtassuk meg a „/var/www/sites/” mappa tulajdonosát, beleértve a „virtual” tartalmát is . Erre azért van szükség, hogy a kliensen keresztül teljes hozzáférést biztosítsunk az FTP-kapcsolathoz.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. Hozzon létre egy adatbázist a WordPress számára
Jelentkezzen be a phpMyAdminba, és kattintson az „Adatbázis létrehozása” gombra. Adjon meg egy tetszőleges adatbázisnevet, esetünkben „wordpress_db”, majd kattintson a „Létrehozás” gombra.
Válassza ki az új adatbázist a bal oldali részben, majd kattintson a „Jogosultságok” gombra.
Ezután kattintson a „Felhasználói fiók hozzáadása” gombra.
A megnyíló ablakban írd be a felhasználónevedet és jelszavadat ( wpservice / Qwe123 ), pipáld ki a „Minden jogosultság megadása a wordpress_db-ben” négyzetet , majd kattints a „Tovább” gombra.
A következő oldalon kattintson az „Összes visszavonása” gombra az adatbázis szintű összes jogosultság visszaállításához, majd kattintson a „Tovább” gombra.
3. WordPress konfiguráció Linux szerveren
Nyissa meg webhelye gyökérkönyvtárát, és másolja ki a konfigurációs fájlt a sablonból
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Nyisd meg a „wp-config.php” fájlt, és add meg az előző lépésben létrehozott adatbázis-kapcsolati paramétereket, majd mentsd el a módosításokat.
4. Telepítse a CMS WordPress-t
Nyisd meg a böngészőben a következő linket : „http://[szerver_ip_címe]/wp-admin/install.php”.
Töltsd ki az összes mezőt, majd kattints a „WordPress telepítése” gombra . Állíts be egy véletlenszerű felhasználónevet és jelszót. Esetünkben ez a wpadmin és a Qwe123.
Ezeket az adatokat a WordPress eléréséhez használjuk fel.
A telepítés befejezése után nyissa meg a „http://[szerver_ip_címe]/wp-login.php” linket , adja meg a hozzáférési adatokat, és jelentkezzen be a WordPressbe.
A főoldalon látnia kell az egyik WordPress-sablont.
A konfiguráció befejeződött.
WordPress hozzáférési adatok:
- http://[server’s_ip_address]/wp-login.php
- Bejelentkezés: wpadmin
- Jelszó: Qwe123