V tomto článku vám poskytneme podrobné pokyny, ako nakonfigurovať webové prostredie na serveri so systémom Linux. Najprv musíte pochopiť, že typický webový server pozostáva z niekoľkých vzájomne sa ovplyvňujúcich komponentov:
- HTTP server
- tlmočník programovacieho jazyka
- systém správy databáz (DBMS)
Pre správu vašej webovej stránky budete potrebovať aj nastavenie redakčného systému (CMS), webové rozhranie pre správu databáz a FTP prístup.
Pozrime sa na nastavenie veľmi populárnej konfigurácie Apache-PHP-MySQL (MariaDB) v systéme Linux. Ďalej nainštalujeme ftp server vsftpd, phpMyAdmin - webové rozhranie pre správu databáz a redakčný systém WordPress.
Na začiatok prosím objednať VPS server or Dedikovaný server. Napríklad sme použili virtuálny server so statickou IP adresou so systémom Ubuntu Server 18.04. Všetky príkazy spúšťal užívateľ root.
Konfigurácia HTTP servera Apache
1. inštalácia
apt install apache2
Po dokončení inštalácie otvorte prehliadač a skontrolujte “http://[adresa_ip_servera]”
Ak na snímke vyššie vidíte uvítaciu stránku, ako je táto, znamená to, že váš HTTP server funguje.
2. Vytvorte testovaciu stránku
Predvolený koreňový adresár webovej lokality je „/var/www/html“. Tu nájdete uvítaciu stránku, ktorú ste práve videli. Vytvorme samostatný adresár „/var/www/sites“ pre virtuálnych hostiteľov a podpriečinok „/var/www/sites/site1“ s indexovou stránkou vášho testovacieho webu.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Vo výsledku súbor „/var/www/sites/site1/index.html“ by mal obsahovať iba jeden riadok html kódu:
<H1>Welcome</H1>
3. Konfigurácia servera Apache
Konfiguračné súbory webových stránok sú v „/etc/apache2/sites-available/“ katalógu. Vytvorme konfiguračný súbor pre nového virtuálneho hostiteľa, pričom zo súboru vyberieme predvolenú konfiguráciu "000-default.conf" ako základ.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Otvorte súbor "site1.conf" a zmeňte "DocumentRoot" atribút. Ako hodnotu uveďte cestu svojho webu, v našom prípade to tak je „/var/www/sites/site1“
V tejto fáze nepotrebujeme konfigurovať súčasnú prevádzku viacerých webových stránok, takže môžeme deaktivovať predvolenú webovú stránku a povoliť novú stránku. Ak chcete použiť zmeny, znova načítajte konfiguráciu servera.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Otvorte odkaz “http://[adresa_ip_servera]” znova a uistite sa, že namiesto predvolenej uvítacej stránky máme našu novú stránku.
Dokončili sme konfiguráciu nášho HTTP servera a môžeme prejsť na ďalší krok.
Konfigurácia servera FTP
1. inštalácia
Poďme si nainštalovať náš ftp server a ďalší balík "db-util", že budeme musieť nakonfigurovať virtuálnych používateľov
apt install vsftpd db-util
2. Vytvorte si lokálny účet
Server vsftpd nám umožňuje konfigurovať prístupové povolenia veľmi flexibilným spôsobom. Pre naše úlohy musíme používateľom ftp poskytnúť nasledovné:
- úplný prístup k obsahu „/var/www/sites/“;
- vypnúť všetko, čo je uvedené vyššie „/var/www/“;
- spojenie s virtuálnym účtom;
Vytvorte si lokálny účet „Virtuálny“ bez povolenia na prihlásenie, ale s prístupom do domovského priečinka „/var/www/“. Tento účet budú používať používatelia ftp na pripojenie k serveru
useradd -d /var/www virtual
"koreň" bude vlastníkom „/var/www“ priečinok štandardne. Aby používatelia ftp mohli upravovať obsah webových stránok, zmeňme vlastníka „/var/www/sites/“ vrátane podpriečinkov „Virtuálny“.
chown -R virtual:root /var/www/sites
V dôsledku toho používateľ „Virtuálny“ budú môcť vidieť obsah „/var/www/“ a napíšte do „/var/www/sites/“ podzložky.
3. konfigurácia
Hlavná konfigurácia je v súbore „/etc/vsftpd.conf“, takže ho otvoríme a upravíme takto:
#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. Vytvorte databázu
Na ukladanie údajov virtuálnych účtov budete potrebovať databázu.
Najprv si vytvorte jednoduchý textový súbor „users.txt“ v domovskom priečinku a do každého druhého riadku ukladať prístupové údaje (login a heslo) virtuálnych užívateľov. Napríklad budeme potrebovať virtuálneho používateľa s prihlásením "ftp" a heslo "Qwe123". Potom bude súbor vyzerať takto:
ftp
Qwe123
Poďme vytvoriť databázu
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Upravme predvolený súbor PAM „/etc/pam.d/vsftp“ nasledujúcim spôsobom:
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
Upozorňujeme, že cesta "pam_userdb.so" knižnica môže byť iná, ale v prípade potreby ju môžete zmeniť.
Ak chcete použiť zmeny, znova načítajte server vsftpd.
systemctl restart vsftpd
Dokončili sme konfiguráciu FTP servera.
Podrobnosti pripojenia:
- ftp://[adresa_ip_servera]
- prihlásenie: ftp
- heslo: Qwe123
Konfigurácia PHP servera
1. Inštalácia PHP
Najnovšia stabilná verzia PHP je dnes php 7.4.5, ktorá nie je súčasťou oficiálnych repozitárov Ubuntu. Pripojme úložisko tretej strany a nainštalujte najnovšiu verziu PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. check
Aby sa PHP spustilo, mal by mať súbor webovej stránky „.php“ rozšírenie. Premenujme našu testovaciu stránku:
cd /var/www/sites/site1/
mv index.html index.php
Pridajte nasledujúci riadok php do súboru „/var/www/sites/site1/index.php“, takže súbor by mal vyzerať takto:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Uložte zmeny a skontrolujte výsledok v prehliadači.
Ak vidíte výsledok funkcie "phpinfo()", PHP interpret funguje správne. Teraz poďme k ďalšiemu kroku.
Konfigurácia MySQL (MariaDB).
1. inštalácia
Nainštalujte MariaDB a modul PHP pre MySQL a potom znova načítajte Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Obnovte testovaciu stránku a prejdite do sekcie PDO v konfiguračnej tabuľke PHP. Ak nájdete sekciu "PDO_mysql", znamená to, že ovládač pre Mysql je nainštalovaný správne.
Potom budeme musieť vykonať počiatočnú konfiguráciu zabezpečenia MariaDB a nastaviť heslo pre „Root“ používateľa, zakážte vzdialený prístup a odstráňte všetky účty hostí.
mysql_secure_installation
V prvom kroku musíme zadať „koreň“ heslo používateľa pre prístup k DBMS alebo stlačte Enter, ak heslo neexistuje. Pretože nie je nastavené žiadne heslo pre „koreň“ užívateľ po inštalácii, stačí stlačiť „Enter“.
Upozorňujeme, že v MariaDB už existujú vlastné účty, ktoré nemajú nič spoločné s účtami OS. Takže jediný používateľ, s ktorým sa v MariaDB zaoberáme, je „koreň“.
Potom nás konfigurátor požiada o nastavenie hesla pre užívateľa root. Typ "Y" potvrďte a zadajte nové heslo. V našom prípade je "Qwe123"
odpoveď "Y" na všetky ostatné otázky až do úplného konca.
Konfigurácia je hotová!
Podrobnosti o prístupe do MariaDB:
- Prihlásenie: root
- Heslo: Qwe123
konfigurácia phpMyAdmin
1. inštalácia
Nainštalujeme potrebné rozšírenie pre PHP - mbstring.
apt install php-mbstring
V oficiálnom úložisku je len zastaraná verzia phpMyAdmin, tak si novú nainštalujte manuálne.
Otvorte oficiálnu webovú stránku projektu “https://www.phpmyadmin.net/“ a stiahnite si najnovší archív.
Skopírujte archív na server v „/var/www/sites/“ priečinok pomocou ľubovoľného ftp klienta.
Zrušte archív a premenujte ho na "phpMyAdmin". Nezabudnite nainštalovať "rozbaliť" užitočnosť. Po zrušení archívu môžete archív odstrániť.
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
Vytvorte nasledujúci priečinok „/var/www/sites/phpMyAdmin/tmp“ pre dočasné súbory a povoliť prístup pre všetkých. Ak tak neurobíte, phpMyAdmin oznámi odmietnutie prístupu do dočasného priečinka.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Vytvorte alias
Keďže phpMyAdmin nie je samostatný virtuálny hostiteľ a nachádza sa mimo koreňového adresára, nakonfigurujme alias.
Otvorte súbor “/etc/apache2/mods-available/alias.conf” a pridajte tento riadok:
Alias /pma “/var/www/sites/phpMyAdmin"
v tejto sekcii:
<IfModule alias_module>
</IfModule>
Ak chcete použiť zmeny, znova načítajte Apache.
systemctl reload apache2
Alias je nastavený, takže tu máme prístup k phpMyAdmin “http://[adresa_ip_servera]/pma”.
3. Pripravte databázu
Keďže sme počas počiatočnej konfigurácie MariaDB obmedzili používanie používateľa root, budeme musieť vytvoriť nový účet so všetkými povoleniami, ktoré budú použité na prístup k phpMyAdmin.
Okrem toho, aby sme povolili ďalšie funkcie phpMyAdmin, budeme potrebovať servisnú databázu a účet na prístup k nej.
Poďme vytvoriť účty
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
Všimnite si prosím, že názov databázy v druhej požiadavke je v back iskrach „... ON `phpmyadmin`.* NA 'pma'@'localhost' IDENTIFIKOVATEĽ …”,
Výsledkom budú dva účty vytvorené v MariaDB:
- Prihlasovacie meno: pma, Heslo: Qwe123Plný prístup, použije sa na prihlásenie do phpMyAdmin
- Prihlasovacie meno: pmaservice, Heslo: Qwe123Na fungovanie ďalších funkcií je potrebný servisný účet
V ďalšom kroku nastavíme tieto detaily v konfiguračnom súbore "config.inc.php".
Potom budeme musieť importovať databázu zo súboru “phpMyAdmin/sql/create_tables.sql”.
Naimportujeme ho pomocou phpMyAdmin.
Otvorte odkaz “http://[adresa_ip_servera]/pma”
Zadajte prihlasovacie meno "pma" a heslo "Qwe123"
Prejsť "Importovať", Kliknite na tlačidlo "Vybrať súbor" a vyberte súbor ”sql/create_tables.sql” v koreňovom adresári phpMyAdmin. V počítači by mal byť priečinok "phpMyAdmin" so súbormi. V prípade potreby ho zrušte z archívu.
kliknite "Ďalšie" začať importovať.
4. konfigurácia
Skopírujeme konfiguračný súbor zo šablóny
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Otvorme konfiguračný súbor „/var/www/sites/phpMyAdmin/config.inc.php“ a vykonajte nasledujúce zmeny:
Pre atribút nastavte náhodnú 32-znakovú hodnotu “$cfg['blowfish_secret']”. Použite na to akýkoľvek generátor hesiel..
Odstráňte komentáre zo všetkých riadkov "Nastavenia ukladacieho priestoru konfigurácie phpMyAdmin" a nastavte prihlasovacie meno a heslo servisného účtu MariaDB pre „ovládací používateľ“ a "kontrolný priechod" podľa toho. V našom prípade je pmaservis a Qwe123.
Uložte zmeny.
Prístupové údaje pre phpMyAdmin:
- http://[server’s_ip_address]/pma/
- Prihlásenie: pma
- Heslo: Qwe123
Ako nainštalovať a nakonfigurovať WordPress na serveri Linux
1. Umiestnenie balíka WordPress a súborov
Prejdite na oficiálnu webovú stránku WP “https://ru.wordpress.org/“ a stiahnite si archív do lokálneho počítača.
Nahrajte archív na server do „/var/www/sites/“ priečinok a zrušte jeho archiváciu do „wordpress”.
Skopírujte obsah súboru „/var/www/sites/wordpress/“ koreňový priečinok „/var/www/sites/site1/“ Webové stránky.
Keďže sme skopírovali súbory cez konzolu s oprávneniami root, zmeňme vlastníka súboru „/var/www/sites/“ priečinok vrátane obsahu „Virtuálny“. Toto je potrebné na umožnenie úplného prístupu pre ftp pripojenie cez klienta.
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. Vytvorte databázu pre WordPress
Prihláste sa do phpMyAdmin a kliknite na „Vytvoriť databázu“. Zadajte ľubovoľný názov databázy, v našom prípade „wordpress_db“ a kliknite na tlačidlo „Vytvoriť“.
V ľavej časti vyberte novú databázu a kliknite "Privilégiá"
Potom kliknite na tlačidlo "Pridať používateľský účet".
Zadajte prihlasovacie meno a heslo (wpservice / Qwe123) v otvorenom okne skontrolujte "Udeľte všetky privilégiá vo wordpress_db" a kliknite na tlačidlo "Ďalšie"
Na ďalšej stránke kliknite “Zrušiť všetko” resetujte všetky privilégiá na úrovni databázy a kliknite "Ďalšie".
3. Konfigurácia WordPress na serveri Linux
Prejdite do koreňového adresára svojej webovej lokality a skopírujte konfiguračný súbor zo šablóny
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Otvorte "wp-config.php" súbor a zadajte parametre pripojenia k databáze, ktoré sme vytvorili v predchádzajúcom kroku a uložte zmeny.
4. Nainštalujte CMS WordPress
Otvorte nasledujúci odkaz v prehliadači “http://[adresa_ip_servera]/wp-admin/install.php”.
Vyplňte všetky polia a kliknite "Nainštalovať WordPress". Nastavte náhodné používateľské meno a heslo. V našom prípade je wpadmin a Qwe123 zodpovedajúcim spôsobom.
Tieto podrobnosti sa použijú na prístup k WordPress.
Po dokončení inštalácie otvorte odkaz “http://[adresa_ip_servera]/wp-login.php”, zadajte prístupové údaje a prihláste sa do WordPress.
Na hlavnej stránke by ste mali vidieť jednu z WordPress šablón.
Konfigurácia je dokončená.
Podrobnosti o prístupe k WordPress:
- http://[server’s_ip_address]/wp-login.php
- Prihlásenie: wpadmin
- Heslo: Qwe123