Во оваа статија, ќе ви дадеме чекор-по-чекор инструкции за тоа како да конфигурирате веб-околина на сервер со Linux. Прво, прво треба да разберете дека типичен веб-сервер се состои од неколку компоненти кои комуницираат:
- HTTP сервер
- преведувач на програмски јазик
- систем за управување со бази на податоци (DBMS)
За да управувате со вашата веб-страница, ќе треба да поставите и систем за управување со содржина (CMS), веб-интерфејс за управување со базата на податоци и пристап до FTP.
Ајде да размислиме за поставување на многу популарна конфигурација Apache-PHP-MySQL (MariaDB) на Linux. Ќе инсталираме и vsftpd ftp сервер, phpMyAdmin - веб-интерфејс за управување со бази на податоци и систем за управување со содржина WordPress.
За почеток ве молам нарачајте VPS сервер or посветен сервер. На пример, користевме виртуелен сервер со статична IP адреса со Ubuntu Server 18.04. Сите команди беа извршени од root корисникот.
Конфигурација на Apache HTTP сервер
1. инсталација
apt install apache2
Кога ќе заврши инсталацијата, отворете прелистувач и проверете „http://[server's_ip_address]“
Ако видите страница за добредојде како оваа на сликата од екранот погоре, тоа значи дека вашиот HTTP сервер работи.
2. Направете тест страница
Стандардниот root директориум за веб-локацијата е „/var/www/html“. Ова е местото каде што можете да ја најдете страницата за добредојде што штотуку ја видовте. Ајде да создадеме посебен директориум „/var/www/sites“ за виртуелни хостови и подпапка „/var/www/sites/site1“ со страницата со индекс на вашата веб-страница за тестирање.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Како резултат на датотеката „/var/www/sites/site1/index.html“ треба да содржи само една линија HTML код:
<H1>Welcome</H1>
3. Конфигурација на серверот на Apache
Конфигурациските датотеки на веб-локациите се во „/etc/apache2/sites-available/“ каталог. Ајде да создадеме конфигурациска датотека за нов виртуелен домаќин земајќи ја стандардната конфигурација од датотеката „000-default.conf“ како основа.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Отворете ја датотеката „site1.conf“ и промена на „DocumentRoot“ атрибут. Ставете ја патеката на вашата веб-страница како вредност, така што во нашиот случај е така „/var/www/sites/site1“
Во оваа фаза не треба да ја конфигурираме истовременото работење на повеќе веб-локации, за да можеме да ја оневозможиме стандардната веб-локација и да ја овозможиме новата страница. Повторно вчитајте ја конфигурацијата на серверот за да ги примените промените.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Отворете ја врската „http://[серверот _ip_address]“ повторно и погрижете се наместо стандардната страница за добредојде да ја имаме нашата нова страница.
Ја завршивме конфигурацијата на нашиот HTTP сервер и можеме да продолжиме на следниот чекор.
Конфигурација на FTP сервер
1. инсталација
Ајде да го инсталираме нашиот ftp сервер и дополнителен пакет „db-util“, дека ќе треба да ги конфигурираме виртуелните корисници
apt install vsftpd db-util
2. Креирајте локална сметка
Серверот vsftpd ни овозможува да ги конфигурираме дозволите за пристап на многу флексибилен начин. За нашите задачи треба да им обезбедиме на корисниците на ftp следново:
- целосен пристап до содржината на „/var/www/sites/“;
- оневозможи се што е погоре „/var/www/“;
- поврзување со виртуелна сметка;
Направете локална сметка „виртуелно“ без дозвола за најава, но со пристап до домашната папка „/var/www/“. Оваа сметка ќе ја користат корисниците на ftp за да се поврзат со серверот
useradd -d /var/www virtual
„Корен“ ќе биде сопственик на „/var/www“ стандардно папка. За да им овозможиме на корисниците на ftp да ја менуваат содржината на веб-локациите, ајде да го смениме сопственикот на „/var/www/sites/“ вклучувајќи ги и подпапките на „виртуелно“.
chown -R virtual:root /var/www/sites
Како резултат на тоа, корисникот „виртуелно“ ќе може да ја види содржината на „/var/www/“ и запишете во „/var/www/sites/“ подпапка.
3. конфигурација
Главната конфигурација е во датотеката „/etc/vsftpd.conf“, па ајде да го отвориме и да го уредиме на следниов начин:
#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. Направете база на податоци
Ќе ви треба база на податоци за да ги зачувате податоците од виртуелните сметки.
Прво, ајде да создадеме едноставна текстуална датотека „users.txt“ во домашната папка и зачувајте ги деталите за пристап (најава и лозинка) на виртуелните корисници во секоја друга линија. На пример, ќе ни треба виртуелен корисник со најавување „ftp“ и лозинка „Qwe123“. Тогаш датотеката ќе изгледа вака:
ftp
Qwe123
Ајде да ја создадеме базата на податоци
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Ајде да ја измениме стандардната PAM-датотека „/etc/pam.d/vsftp“ како што следува:
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
Ве молиме имајте предвид дека патот на „pam_userdb.so“ библиотеката може да биде различна, но можете да ја промените доколку е потребно.
Вчитајте го повторно серверот vsftpd за да ги примените промените.
systemctl restart vsftpd
Завршивме со конфигурирање на FTP серверот.
Детали за поврзување:
- ftp://[server's_ip_address]
- најава: ftp
- лозинка: Qwe123
PHP сервер конфигурација
1. Инсталација на PHP
Денес најновата стабилна верзија на PHP е php 7.4.5 која не е вклучена во официјалните складишта на Ubuntu. Ајде да поврземе складиште од трета страна и да ја инсталираме најновата верзија на PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Провери
За да може PHP да се изврши, датотеката на веб-страницата треба да има „.php“ продолжување. Ајде да ја преименуваме нашата тест страница:
cd /var/www/sites/site1/
mv index.html index.php
Додадете ја следната php линија во датотеката „/var/www/sites/site1/index.php“, па датотеката треба да изгледа вака:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Зачувајте ги промените и проверете го резултатот во прелистувачот.
Ако го видите резултатот од функцијата „phpinfo()“, PHP преведувачот работи правилно. Сега да продолжиме на следниот чекор.
Конфигурација на MySQL (MariaDB).
1. инсталација
Ајде да инсталираме MariaDB и PHP модул за MySQL и потоа повторно да го вчитаме Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Освежете ја тест страницата и одете во делот PDO во табелата за конфигурација на PHP. Ако можете да го најдете делот „PDO_mysql“, тогаш тоа значи дека двигателот за Mysql е правилно инсталиран.
Потоа ќе треба да ја направиме почетната безбедносна конфигурација на MariaDB и да ја поставиме лозинката за "Корен" корисник, оневозможете далечински пристап и избришете ги сите сметки за гости.
mysql_secure_installation
На првиот чекор, треба да влеземе во "корен" лозинка на корисникот за пристап до DBMS или притиснете Enter ако нема лозинка. Бидејќи нема поставено лозинка за "корен" корисник по инсталацијата, само притиснете „Внесете“.
Ве молиме имајте предвид дека во MariaDB веќе има свои сметки кои немаат никаква врска со сметките на ОС. Значи единствениот корисник со кој се занимаваме во MariaDB е "корен".
После тоа, конфигураторот ќе побара од нас да ја поставиме лозинката за root корисникот. Тип „Y“ за да ја потврдите и внесете новата лозинка. Во нашиот случај, тоа е „Qwe123“
Одговори „Y“ на сите останати прашања до самиот крај.
Конфигурацијата е завршена!
Детали за пристап до MariaDB:
- Најава: корен
- Лозинка: Qwe123
phpMyAdmin конфигурација
1. инсталација
Ајде да ја инсталираме потребната екстензија за PHP - mbstring.
apt install php-mbstring
Во официјалното складиште има само застарена верзија на phpMyAdmin, па ајде да ја инсталираме новата рачно.
Отворете ја официјалната веб-страница на проектот “https://www.phpmyadmin.net/” и преземете ја најновата архива.
Копирајте ја архивата на серверот во „/var/www/sites/“ папка користејќи кој било ftp клиент.
Отстранете ја архивата на папката и преименувајте ја во „phpMyAdmin“. Не заборавајте да го инсталирате „отпакувајте“ корисност. Може да ја избришете архивата откако ќе ја отстраните од архивата.
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
Направете ја следнава папка „/var/www/sites/phpMyAdmin/tmp“ за привремени датотеки и овозможете пристап за сите. Ако не го направите ова, phpMyAdmin ќе пријави одбиен пристап до привремената папка.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Направете алијас
Бидејќи phpMyAdmin не е посебен виртуелен домаќин и се наоѓа надвор од root директориумот, ајде да го конфигурираме алијасот.
Отворете ја датотеката „/etc/apache2/mods-available/alias.conf“ и додадете ја оваа линија:
Alias /pma “/var/www/sites/phpMyAdmin"
внатре во овој дел:
<IfModule alias_module>
</IfModule>
Повторно вчитајте го Apache за да ги примените промените.
systemctl reload apache2
Алијас е поставен, така што можеме да пристапиме до phpMyAdmin овде „http://[server's_ip_address]/pma“.
3. Подготви база на податоци
Бидејќи го ограничивме користењето root корисник за време на првичната конфигурација на MariaDB, ќе мора да создадеме нова сметка со сите дозволи што ќе се користат за пристап до phpMyAdmin.
Освен тоа, за да овозможиме дополнителни функции на phpMyAdmin, ќе ни треба база на податоци за услуги и сметка за пристап до неа.
Ајде да ги создадеме сметките
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
Ве молиме имајте предвид дека името на базата на податоци во второто барање е во задните искри „… ON `phpmyadmin`.* ДО 'pma'@'localhost' ИДЕНТИФИКУВАН ОД…“,
Како резултат, ќе има две сметки креирани во MariaDB:
- Најава: pma, Лозинка: Qwe123Full пристап, ќе се користи за најавување на phpMyAdmin
- Најава: pmaservice, Лозинка: Qwe123 Сметката на услугата е потребна за да функционираат дополнителни функции
На следниот чекор, ќе ги поставиме овие детали во конфигурациската датотека „config.inc.php“.
Потоа ќе треба да ја увеземе базата на податоци од датотеката „phpMyAdmin/sql/create_tables.sql“.
Ајде да го увеземе со помош на phpMyAdmin.
Отворете ја врската „http://[server's_ip_address]/pma“
Внесете најава „ПМА“ и лозинка „Qwe123“
Оди до „Увоз“, Кликнете „Изберете датотека“ и изберете ја датотеката „sql/create_tables.sql“ во root директориумот на phpMyAdmin. Треба да ја има папката на вашиот компјутер „phpMyAdmin“ со датотеки. Деархивирај го ако е потребно.
Кликнете "Следно" за да започнете со увоз.
4. конфигурација
Ајде да ја копираме конфигурациската датотека од шаблонот
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Ајде да ја отвориме конфигурациската датотека „/var/www/sites/phpMyAdmin/config.inc.php“ и направете ги следните промени:
Поставете случајна вредност од 32 знаци за атрибутот „$cfg['blowfish_secret']“. Користете кој било генератор на лозинка за тоа..
Отстранете ги коментарите од сите редови на „Поставки за складирање на конфигурацијата на phpMyAdmin“ дел и поставете ги најавувањето и лозинката на услугата сметка на MariaDB за „контролор“ „Контролен премин“ атрибути соодветно. Во нашиот случај, тоа е pmaservice Qwe123.
Зачувајте ги промените.
Пристап до детали за phpMyadmin:
- http://[server’s_ip_address]/pma/
- Најава: pma
- Лозинка: Qwe123
Како да инсталирате и конфигурирате WordPress на сервер Линукс
1. WordPress пакет и поставување датотеки
Одете на официјалната веб-страница на WP“https://ru.wordpress.org/” и преземете ја архивата на вашиот локален компјутер.
Поставете ја архивата на серверот во „/var/www/sites/“ папката и деархивирај ја во „вордпрес”Папка.
Копирајте ја содржината на „/var/www/sites/wordpress/“ коренската папка на „/var/www/sites/site1/“ веб-страница.
Бидејќи ги копиравме датотеките преку конзолата со root дозволи, ајде да го смениме сопственикот на „/var/www/sites/“ папка вклучувајќи ја содржината на „виртуелно“. Ова е потребно за да се овозможи целосен пристап за ftp конекција преку клиентот.
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. Направете база на податоци за WordPress
Најавете се на phpMyAdmin и кликнете „Креирај база на податоци“. Наведете произволно име на базата на податоци, во нашиот случај „wordpress_db“ и кликнете на копчето „Креирај“.
Изберете ја новата база на податоци во левиот дел и кликнете „Привилегии“
Потоа кликнете „Додај корисничка сметка“.
Внесете го најавувањето и лозинката (wpservice / Qwe123) во отворениот прозорец проверете „Дајте ги сите привилегии во wordpress_db“ и кликнете на "Следно"
На следната страница кликнете „Откажи ги сите“ да ги ресетирате сите привилегии на ниво на база на податоци и кликнете "Следно".
3. Конфигурација на WordPress на сервер на Линукс
Одете во root директориумот на вашата веб-страница и копирајте ја конфигурациската датотека од шаблонот
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Отворете го „wp-config.php“ датотека и внесете ги параметрите за поврзување со базата на податоци што ги создадовме на претходниот чекор и зачувајте ги промените.
4. Инсталирајте CMS WordPress
Отворете ја следната врска во прелистувачот „http://[server's_ip_address]/wp-admin/install.php“.
Пополнете ги сите полиња и кликнете „Инсталирај WordPress“. Поставете случајно корисничко име и лозинка. Во нашиот случај, тоа е wpadmin Qwe123 соодветно.
Овие детали ќе се користат за пристап до WordPress.
Откако ќе завршите со инсталацијата, отворете ја врската „http://[server's_ip_address]/wp-login.php“, внесете ги деталите за пристап и најавете се на WordPress.
Треба да видите еден од шаблоните на WordPress на главната страница.
Конфигурацијата е завршена.
Детали за пристап до WordPress:
- http://[server’s_ip_address]/wp-login.php
- Најава: wpadmin
- Лозинка: Qwe123