Šiame straipsnyje pateiksime nuoseklias instrukcijas, kaip sukonfigūruoti žiniatinklio aplinką serveryje, kuriame veikia Linux. Pirmiausia turite suprasti, kad įprastą žiniatinklio serverį sudaro keli tarpusavyje sąveikaujantys komponentai:
- HTTP serveris
- programavimo kalbos vertėjas
- duomenų bazių valdymo sistema (DBVS)
Norėdami valdyti savo svetainę, taip pat turėsite nustatyti turinio valdymo sistemą (TVS), žiniatinklio sąsają duomenų bazei valdyti ir FTP prieigą.
Apsvarstykite galimybę nustatyti labai populiarią „Apache-PHP-MySQL“ (MariaDB) konfigūraciją „Linux“. Taip pat įdiegsime vsftpd ftp serverį, phpMyAdmin – žiniatinklio sąsają duomenų bazių valdymui bei turinio valdymo sistemą WordPress.
Norėdami pradėti, prašau užsakyti VPS serverį or dedikuotų serverių. Pavyzdžiui, mes naudojome virtualų serverį su statiniu IP adresu, kuriame veikia Ubuntu Server 18.04. Visas komandas paleido root vartotojas.
Apache HTTP serverio konfigūracija
1. montavimas
apt install apache2
Baigę diegti atidarykite naršyklę ir patikrinkite „http://[serverio_ip_adresas]“
Jei aukščiau esančioje ekrano kopijoje matote tokį pasveikinimo puslapį, tai reiškia, kad jūsų HTTP serveris veikia.
2. Sukurkite bandomąjį puslapį
Numatytasis svetainės šakninis katalogas yra „/var/www/html“. Čia galite rasti pasveikinimo puslapį, kurį ką tik pamatėte. Sukurkime atskirą katalogą „/var/www/sites“ virtualiems pagrindiniams kompiuteriams ir poaplankiui „/var/www/sites/site1“ su bandomosios svetainės rodyklės puslapiu.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Rezultate failas „/var/www/sites/site1/index.html“ turi būti tik viena html kodo eilutė:
<H1>Welcome</H1>
3. Apache serverio konfigūracija
Yra svetainių konfigūracijos failai „/etc/apache2/sites-available/“ katalogą. Sukurkime naujo virtualaus pagrindinio kompiuterio konfigūracijos failą, paimdami numatytąją konfigūraciją iš failo „000-default.conf“ kaip pagrindas.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Atidarykite failą „site1.conf“ ir pakeiskite „DocumentRoot“ atributas. Nurodykite savo svetainės kelią kaip vertę, taigi mūsų atveju tai yra „/var/www/sites/site1“
Šiame etape mums nereikia konfigūruoti kelių svetainių veikimo vienu metu, todėl galime išjungti numatytąją svetainę ir įjungti naują svetainę. Iš naujo įkelkite serverio konfigūraciją, kad pritaikytumėte pakeitimus.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Atidarykite nuorodą „http://[serverio _ip_adresas]“ dar kartą ir įsitikinkite, kad vietoj numatytojo pasveikinimo puslapio turime naują puslapį.
Baigėme HTTP serverio konfigūraciją ir galime pereiti prie kito žingsnio.
FTP serverio konfigūracija
1. montavimas
Įdiegkime savo ftp serverį ir papildomą paketą „db-util“, kad turėsime sukonfigūruoti virtualius vartotojus
apt install vsftpd db-util
2. Sukurkite vietinę paskyrą
Vsftpd serveris leidžia mums labai lanksčiai konfigūruoti prieigos teises. Norėdami atlikti savo užduotis, ftp vartotojams turime suteikti:
- visišką prieigą prie turinio „/var/www/sites/“;
- išjungti viską, kas nurodyta aukščiau „/var/www/“;
- prisijungimas prie virtualios paskyros;
Sukurkite vietinę paskyrą "virtualus" be prisijungimo leidimo, bet su prieiga prie namų aplanko „/var/www/“. Šią paskyrą ftp vartotojai naudos prisijungdami prie serverio
useradd -d /var/www virtual
"Šaknis" bus savininkas „/var/www“ aplankas pagal numatytuosius nustatymus. Kad ftp vartotojai galėtų keisti svetainių turinį, pakeiskime savininką „/var/www/sites/“ įskaitant poaplankius "virtualus".
chown -R virtual:root /var/www/sites
Dėl to vartotojas "virtualus" galės pamatyti turinį „/var/www/“ ir įrašyti į „/var/www/sites/“ pakatalogis.
3. konfigūracija
Pagrindinė konfigūracija yra faile „/etc/vsftpd.conf“, taigi atidarykime jį ir redaguosime taip:
#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. Sukurkite duomenų bazę
Norint saugoti virtualių paskyrų duomenis, jums reikės duomenų bazės.
Pirmiausia sukurkime paprastą tekstinį failą „naudotojai.txt“ namų aplanke ir kiekvienoje kitoje eilutėje išsaugokite virtualių vartotojų prieigos duomenis (prisijungimo vardą ir slaptažodį). Pavyzdžiui, mums reikės virtualaus vartotojo su prisijungimo vardu "ftp" ir slaptažodį „Qwe123“. Tada failas atrodys taip:
ftp
Qwe123
Sukurkime duomenų bazę
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Pakeiskime numatytąjį PAM failą „/etc/pam.d/vsftp“ keičiamas taip:
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
Atkreipkite dėmesį, kad kelias į „pam_userdb.so“ biblioteka gali skirtis, bet prireikus galite ją pakeisti.
Iš naujo įkelkite vsftpd serverį, kad pritaikytumėte pakeitimus.
systemctl restart vsftpd
Baigėme konfigūruoti FTP serverį.
Išsami ryšio informacija:
- ftp://[serverio_ip_adresas]
- prisijungimas: ftp
- slaptažodis: Qwe123
PHP serverio konfigūracija
1. PHP diegimas
Šiandien naujausia stabili PHP versija yra php 7.4.5, kuri nėra įtraukta į oficialias Ubuntu saugyklas. Prijunkite trečiosios šalies saugyklą ir įdiekite naujausią PHP versiją.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Patikrinkite
Kad PHP būtų vykdomas, tinklalapio failas turi turėti ".php" pratęsimas. Pervadinkime bandomąjį puslapį:
cd /var/www/sites/site1/
mv index.html index.php
Pridėkite šią php eilutę prie failo „/var/www/sites/site1/index.php“, todėl failas turėtų atrodyti taip:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Išsaugokite pakeitimus ir patikrinkite rezultatą naršyklėje.
Jei matote funkcijos rezultatą „phpinfo()“, PHP vertėjas veikia tinkamai. Dabar pereikime prie kito žingsnio.
MySQL (MariaDB) konfigūracija
1. montavimas
Įdiegkime MariaDB ir PHP modulį, skirtą MySQL, tada iš naujo įkelkime „Apache“.
apt install mariadb-server php-mysql
systemctl restart apache2
Atnaujinkite bandomąjį puslapį ir eikite į skiltį SKVN PHP konfigūracijos lentelėje. Jei galite rasti skyrių „PDO_mysql“, vadinasi, Mysql tvarkyklė įdiegta teisingai.
Tada turėsime atlikti pradinę MariaDB saugos konfigūraciją ir nustatyti slaptažodį „Šaknis“ vartotoją, išjunkite nuotolinę prieigą ir ištrinkite visas svečių paskyras.
mysql_secure_installation
Pirmajame žingsnyje turime įvesti "šaknis" vartotojo slaptažodį, kad galėtumėte pasiekti DBVS, arba paspauskite Enter, jei slaptažodžio nėra. Kadangi slaptažodis nenustatytas "šaknis" vartotojas po įdiegimo, tiesiog paspauskite „Enter“.
Atkreipkite dėmesį, kad MariaDB jau yra savo paskyrų, kurios neturi nieko bendra su OS paskyromis. Taigi vienintelis vartotojas, su kuriuo dirbame MariaDB, yra "šaknis".
Po to konfigūratorius paprašys mūsų nustatyti root vartotojo slaptažodį. Tipas „Y“ patvirtinti ir įvesti naują slaptažodį. Mūsų atveju tai „Qwe123“
atsakymas „Y“ į visus likusius klausimus iki pat pabaigos.
Konfigūracija atlikta!
MariaDB prieigos informacija:
- Prisijungimas: root
- Slaptažodis: Qwe123
phpMyAdmin konfigūracija
1. montavimas
Įdiegkime reikiamą PHP plėtinį - mbstring.
apt install php-mbstring
Oficialioje saugykloje yra tik pasenusi phpMyAdmin versija, todėl naująją įdiegkime rankiniu būdu.
Atidarykite oficialią projekto svetainę “https://www.phpmyadmin.net/“ ir atsisiųskite naujausią archyvą.
Nukopijuokite archyvą į serverį „/var/www/sites/“ aplanką naudodami bet kurį ftp klientą.
Išarchyvuokite aplanką ir pervardykite jį į „phpMyAdmin“. Nepamirškite įdiegti "išpakuokite" naudingumas. Galite ištrinti archyvą, kai jį išarchyvuojate.
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
Sukurkite šį aplanką „/var/www/sites/phpMyAdmin/tmp“ laikiniesiems failams ir įgalinkite prieigą visiems. Jei to nepadarysite, phpMyAdmin praneš, kad prieiga prie laikinojo aplanko uždrausta.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Sukurkite slapyvardį
Kadangi phpMyAdmin nėra atskiras virtualus pagrindinis kompiuteris ir yra už šakninio katalogo ribų, sukonfigūruokime slapyvardį.
Atidarykite failą „/etc/apache2/mods-available/alias.conf“ ir pridėkite šią eilutę:
Alias /pma “/var/www/sites/phpMyAdmin"
šiame skyriuje:
<IfModule alias_module>
</IfModule>
Iš naujo įkelkite „Apache“, kad pritaikytumėte pakeitimus.
systemctl reload apache2
Pseudonimas nustatytas, todėl čia galime pasiekti phpMyAdmin „http://[serverio_ip_adresas]/pma“.
3. Paruoškite duomenų bazę
Kadangi pradinės MariaDB konfigūracijos metu apribojome root vartotojo naudojimą, turėsime sukurti naują paskyrą su visais leidimais, kurie bus naudojami norint pasiekti phpMyAdmin.
Be to, norėdami įjungti papildomas phpMyAdmin funkcijas, mums reikės paslaugų duomenų bazės ir paskyros, kad galėtume ją pasiekti.
Sukurkime paskyras
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
Atkreipkite dėmesį, kad antroje užklausoje esantis duomenų bazės pavadinimas yra „... ON `phpmyadmin'.* Į 'pma'@'localhost' ATPAŽINO…“,
Dėl to MariaDB bus sukurtos dvi paskyros:
- Prisijungimas: pma, Slaptažodis: Qwe123Visa prieiga, bus naudojama prisijungiant prie phpMyAdmin
- Prisijungimas: pmaservice, Slaptažodis: Qwe123Paslaugos paskyra reikalinga, kad veiktų papildomos funkcijos
Kitame žingsnyje šią informaciją nustatysime konfigūracijos faile „config.inc.php“.
Tada turėsime importuoti duomenų bazę iš failo „phpMyAdmin/sql/create_tables.sql“.
Importuosime jį su phpMyAdmin pagalba.
Atidarykite nuorodą „http://[serverio_ip_adresas]/pma“
Įveskite prisijungimo vardą "pma" ir slaptažodį „Qwe123“
Eiti į „Importuoti“, Spustelėkite „Pasirinkti failą“ ir pasirinkite failą "sql/create_tables.sql" phpMyAdmin šakniniame kataloge. Manoma, kad jūsų kompiuteryje yra aplankas „phpMyAdmin“ su failais. Jei reikia, išarchyvuokite.
Spauskite "Kitas" pradėti importuoti.
4. konfigūracija
Nukopijuokime konfigūracijos failą iš šablono
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Atidarykime konfigūracijos failą „/var/www/sites/phpMyAdmin/config.inc.php“ ir atlikite šiuos pakeitimus:
Nustatykite atsitiktinę 32 simbolių atributo reikšmę „$cfg['blowfish_secret']“. Tam naudokite bet kurį slaptažodžių generatorių.
Pašalinti komentarus iš visų eilučių „phpMyAdmin konfigūracijos saugojimo nustatymai“ skyrių ir nustatykite MariaDB paslaugos paskyros prisijungimo vardą ir slaptažodį "valdytojas" bei "kontrolinis leidimas" atitinkamai atributus. Mūsų atveju tai pmaservice bei Qwe123.
Išsaugokite pakeitimus.
Išsami phpMyadmin prieigos informacija:
- http://[server’s_ip_address]/pma/
- Prisijungimas: pma
- Slaptažodis: Qwe123
Kaip įdiegti ir konfigūruoti „WordPress“ „Linux“ serveryje
1. WordPress paketas ir failų talpinimas
Eikite į oficialią WP svetainę “https://ru.wordpress.org/“ ir atsisiųskite archyvą į savo vietinį kompiuterį.
Įkelkite archyvą į serverį į „/var/www/sites/“ aplanką ir išarchyvuokite jį į “ WordPress“Aplanką.
Nukopijuokite turinį „/var/www/sites/wordpress/“ šakninis aplankas „/var/www/sites/site1/“ Interneto svetainė.
Kadangi failus nukopijavome per konsolę su root teisėmis, pakeiskime savininką „/var/www/sites/“ aplanką, įskaitant turinį "virtualus". Tai reikalinga norint įgalinti visą prieigą prie ftp ryšio per klientą.
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. Sukurkite „WordPress“ duomenų bazę
Prisijunkite prie „phpMyAdmin“ ir spustelėkite „Sukurti duomenų bazę“. Nurodykite savavališką duomenų bazės pavadinimą, mūsų atveju „wordpress_db“ ir spustelėkite mygtuką „Sukurti“.
Kairėje skiltyje pasirinkite naują duomenų bazę ir spustelėkite „Privilegijos“
Tada spustelėkite „Pridėti vartotojo abonementą“.
Įveskite prisijungimo vardą ir slaptažodį (wpservice / Qwe123) atsidariusiame lange pažymėkite „Suteikti visas privilegijas WordPress_db“ ir spauskite "Kitas"
Kitame puslapyje spustelėkite „Atšaukti viską“ norėdami iš naujo nustatyti visas teises duomenų bazės lygiu ir spustelėkite "Kitas".
3. WordPress konfigūracija Linux serveryje
Eikite į savo svetainės šakninį katalogą ir nukopijuokite konfigūracijos failą iš šablono
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Atidarykite „wp-config.php“ failą ir įveskite duomenų bazės ryšio parametrus, kuriuos sukūrėme atlikdami ankstesnį veiksmą, ir išsaugokite pakeitimus.
4. Įdiekite TVS WordPress
Naršyklėje atidarykite šią nuorodą „http://[serverio_ip_adresas]/wp-admin/install.php“.
Užpildykite visus laukus ir spustelėkite „Įdiegti WordPress“. Nustatykite atsitiktinį vartotojo vardą ir slaptažodį. Mūsų atveju tai užsukti bei Qwe123 atitinkamai.
Ši informacija bus naudojama norint pasiekti „WordPress“.
Baigę diegti atidarykite nuorodą „http://[serverio_ip_adresas]/wp-login.php“, įveskite prieigos duomenis ir prisijunkite prie „WordPress“.
Pagrindiniame puslapyje turėtumėte pamatyti vieną iš „WordPress“ šablonų.
Konfigūracija baigta.
Išsami „WordPress“ prieigos informacija:
- http://[server’s_ip_address]/wp-login.php
- Prisijungimas: wpadmin
- Slaptažodis: Qwe123