Бул макалада биз сизге Linux менен иштеген серверде веб-чөйрөнү кантип конфигурациялоо керектиги боюнча этап-этабы менен көрсөтмөлөрдү беребиз. Биринчиден, сиз типтүү веб-сервер бир нече өз ара аракеттенүүчү компоненттерден тураарын түшүнүшүңүз керек:
- HTTP сервери
- программалоо тилинин котормочусу
- маалыматтар базасын башкаруу системасы (DBMS)
Вебсайтыңызды башкаруу үчүн сиз ошондой эле мазмунду башкаруу тутумун (CMS), маалымат базасын башкаруу үчүн веб-интерфейсти жана FTP мүмкүнчүлүгүн орнотушуңуз керек.
Келгиле, Linux'та абдан популярдуу Apache-PHP-MySQL(MariaDB) конфигурациясын орнотууну карап көрөлү. Биз ошондой эле vsftpd ftp серверин, phpMyAdmin – маалымат базасын башкаруу үчүн веб-интерфейсти жана WordPress контентти башкаруу системасын орнотобуз.
Баштоо үчүн VPS серверин же атайын серверди заказ кылыңыз . Мисалы, биз Ubuntu Server 18.04 иштетип жаткан статикалык IP дареги бар виртуалдык серверди колдондук. Бардык буйруктар root колдонуучусу тарабынан аткарылды.
Apache HTTP серверинин конфигурациясы
1. орнотуу
apt install apache2
Орнотуу аяктагандан кийин, браузерди ачып, “http://[сервердин_ip_адреси]” дарегин текшериңиз.
Эгерде сиз жогорудагы скриншотто ушундай саламдашуу барагын көрсөңүз, бул сиздин HTTP сервериңиз иштеп жатканын билдирет.
2. Сыноо барагын түзүңүз
Вебсайттын демейки түпкү каталогу – “/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_дареги]" шилтемесин кайрадан ачып, демейки саламдашуу барагынын ордуна жаңы барагыбыз бар экенине ынаныңыз.
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
Демейки шартта "Root" " /var/www" папкасынын ээси болот . FTP колдонуучуларына веб-сайттардын мазмунун өзгөртүүгө мүмкүндүк берүү үчүн, "virtual" папкаларынын ички папкаларын кошо алганда, "/var/www/sites/" папкасынын ээсин өзгөртөлү.
chown -R virtual:root /var/www/sites
Натыйжада, "virtual" колдонуучусу "/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://[сервердин_ip_дареги]
- кирүү: 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 жана MySQL үчүн PHP модулун орнотуп, анан Apacheти кайра жүктөйбүз.
apt install mariadb-server php-mysql
systemctl restart apache2
Сыноо барагын жаңыртып, PHP конфигурация таблицасындагы PDO бөлүмүнө өтүңүз. Эгер сиз "PDO_mysql" бөлүмүн тапсаңыз , анда Mysql үчүн драйвер туура орнотулган.
Андан кийин биз MariaDB баштапкы коопсуздук конфигурациясын жасап, "тамыр" колдонуучусу үчүн сырсөздү орнотуп , алыстан кирүүнү өчүрүп, бардык конок каттоо эсептерин жок кылышыбыз керек болот.
mysql_secure_installation
Биринчи кадамда, DBMSке кирүү үчүн "root" колдонуучусунун сырсөзүн киргизишибиз керек же сырсөз жок болсо, Enter баскычын басышыбыз керек. Орнотулгандан кийин "root" колдонуучусу үчүн сырсөз орнотулбагандыктан , жөн гана "Enter" баскычын басыңыз.
Сураныч, MariaDBде ОС аккаунттарына эч кандай тиешеси жок өзүнүн аккаунттары бар экенин эске алыңыз. Ошондуктан, MariaDBде биз менен иштешкен жалгыз колдонуучу - бул "root".
Андан кийин, конфигуратор бизден root колдонуучусу үчүн сырсөздү орнотууну суранат. Ырастоо үчүн "Y" деп терип , жаңы сырсөздү киргизиңиз. Биздин учурда, бул "Qwe123"
Калган суроолорго аягына чейин "Y" деп жооп бериңиз .
Конфигурация бүттү!
MariaDB мүмкүндүк алуу чоо-жайы:
- Кирүү: root
- Сырсөз: Qwe123
phpMyAdmin конфигурациясы
1. орнотуу
PHP үчүн керектүү кеңейтүүнү орнотолу - mbstring.
apt install php-mbstring
Расмий репозиторийде phpMyAdminдин эскирген версиясы гана бар, андыктан жаңысын кол менен орнотуп алалы.
Долбоордун расмий веб-сайтын “ https://www.phpmyadmin.net/ ” ачып, акыркы архивди жүктөп алыңыз.
Архивди каалаган ftp кардарын колдонуп, "/var/www/sites/" папкасындагы серверге көчүрүңүз .
Папканы архивден чыгарып, анын атын “phpMyAdmin” деп өзгөртүңүз. “unzip” утилитасын орнотууну унутпаңыз . Архивди архивден чыгаргандан кийин аны өчүрө аласыз.
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 өзүнчө виртуалдык хост эмес жана түпкү каталогдун сыртында жайгашкандыктан, келгиле, лакап атын конфигурациялайлы.
“/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. Маалымат базасын даярдаңыз
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` .* TO 'pma'@'localhost' IDENTIFIED BY …” дегенди билдирерин эске алыңыз,
Натыйжада, MariaDBде түзүлгөн эки эсеп пайда болот:
- Кирүү: pma, Сырсөз: Qwe123Толук мүмкүнчүлүк, phpMyAdmin кирүү үчүн колдонулат
- Кирүү: pmaservice, Сырсөз: Qwe123Кошумча функциялардын иштеши үчүн кызмат эсеби талап кылынат
Кийинки кадамда, биз бул маалыматтарды “config.inc.php” конфигурация файлына орнотобуз.
Андан кийин биз маалымат базасын “phpMyAdmin/sql/create_tables.sql” файлынан импорттошубуз керек болот.
Аны phpMyAdmin жардамы менен импорттойлу.
“http://[сервердин_ip_адреси]/pma” шилтемесин ачыңыз
"pma" логинин жана "Qwe123" сырсөзүн киргизиңиз
"Импорт" бөлүмүнө өтүп , "Файлды тандоо" баскычын чыкылдатып, phpMyAdminдин түпкү каталогунан "sql/create_tables.sql" файлын тандаңыз . Компьютериңизде файлдар камтылган "phpMyAdmin" папкасы болушу керек . Зарыл болсо, аны архивден чыгарыңыз.
Импорттоону баштоо үчүн "Кийинки" баскычын чыкылдатыңыз .
4. Конфигурация
Калыптан конфигурация файлын көчүрүп алалы
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Келгиле, “/var/www/sites/phpMyAdmin/config.inc.php” конфигурация файлын ачып , төмөнкү өзгөртүүлөрдү жасайлы:
“$cfg['blowfish_secret']” атрибуту үчүн кокустук 32 символдон турган маанини коюңуз . Ал үчүн каалаган сырсөз генераторун колдонуңуз.
"phpMyAdmin конфигурация сактоо жөндөөлөрү" бөлүмүнүн бардык саптарынан комментарийлерди алып салып , MariaDB кызмат аккаунтунун логинин жана сырсөзүн "controluser" жана "controlpass" атрибуттары үчүн тиешелүү түрдө орнотуңуз. Биздин учурда, бул pmaservice жана Qwe123.
Өзгөртүүлөрдү сактаңыз.
phpMyadmin үчүн кирүү чоо-жайы:
- http://[server’s_ip_address]/pma/
- Кирүү: pma
- Сырсөз: Qwe123
Linux серверинде WordPressти кантип орнотуу жана конфигурациялоо керек
1. WordPress пакети жана файлдарды жайгаштыруу
WPтин расмий веб-сайтына “ https://ru.wordpress.org/ ” өтүп, архивди жергиликтүү компьютериңизге жүктөп алыңыз.
Архивди серверге "/var/www/sites/" папкасына жүктөп, аны "wordpress " папкасынан архивден чыгарыңыз.
“/var/www/sites/ site1/” веб-сайтынын “/var/www/sites/ wordpress/” түпкү папкасынын мазмунун көчүрүңүз.
Биз файлдарды консоль аркылуу root уруксаттары менен көчүргөндүктөн, "virtual" файлынын мазмунун кошо алганда, "/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. Linux серверинде WordPress конфигурациясы
Вебсайтыңыздын түпкү каталогуна өтүп, калыптан конфигурация файлын көчүрүңүз
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