Katika makala hii, tutakupa maagizo ya hatua kwa hatua juu ya jinsi ya kusanidi mazingira ya wavuti kwenye seva inayoendesha Linux. Mambo ya kwanza kwanza, unahitaji kuelewa kuwa seva ya kawaida ya wavuti ina vifaa vichache vinavyoingiliana:
- Seva ya HTTP
- mkalimani wa lugha ya programu
- mfumo wa usimamizi wa hifadhidata (DBMS)
Ili kudhibiti tovuti yako utahitaji pia kusanidi mfumo wa usimamizi wa maudhui (CMS), kiolesura cha wavuti kwa usimamizi wa hifadhidata, na ufikiaji wa FTP.
Wacha tufikirie kusanidi usanidi maarufu sana Apache-PHP-MySQL(MariaDB) kwenye Linux. Pia tutasakinisha seva ya vsftpd ftp, phpMyAdmin - kiolesura cha wavuti cha usimamizi wa hifadhidata, na mfumo wa usimamizi wa maudhui WordPress.
Ili kuanza tafadhali agiza seva ya VPS or seva ya kujitolea. Kwa mfano tulitumia seva pepe yenye anwani ya IP tuli inayoendesha Ubuntu Server 18.04. Amri zote ziliendeshwa na mtumiaji wa mizizi.
Usanidi wa Seva ya Apache HTTP
1. ufungaji
apt install apache2
Wakati usakinishaji ukamilika, fungua kivinjari na uangalie "http://[server's_ip_address]"
Ukiona ukurasa wa kukaribisha kama huu kwenye picha ya skrini hapo juu, hiyo inamaanisha kuwa seva yako ya HTTP inafanya kazi.
2. Unda ukurasa wa majaribio
Saraka ya msingi ya tovuti ni "/var/www/html". Hapa ndipo unaweza kupata ukurasa wa kukaribisha ambao umeona hivi punde. Wacha tuunde saraka tofauti "/var/www/tovuti" kwa wapangishi pepe na folda ndogo "/var/www/sites/site1" na ukurasa wa faharasa wa tovuti yako ya majaribio.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Katika matokeo faili "/var/www/sites/site1/index.html" inapaswa kuwa na safu moja tu ya nambari ya html:
<H1>Welcome</H1>
3. Usanidi wa seva ya Apache
Faili za usanidi za tovuti ziko ndani "/etc/apache2/tovuti zinazopatikana/" katalogi. Wacha tuunde faili ya usanidi kwa mwenyeji mpya anayechukua usanidi chaguo-msingi kutoka kwa faili "000-default.conf" kama msingi.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Fungua faili "site1.conf" na ubadili "DocumentRoot" sifa. Weka njia ya tovuti yako kama thamani, hivyo kwa upande wetu ni "/var/www/sites/site1"
Katika hatua hii hatuhitaji kusanidi utendakazi kwa wakati mmoja wa tovuti nyingi, ili tuweze kuzima tovuti chaguo-msingi na kuwezesha tovuti mpya. Pakia upya usanidi wa seva ili kutekeleza mabadiliko.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Fungua kiungo "http://[server's _ip_anwani]" tena na uhakikishe kuwa badala ya ukurasa wa kukaribisha chaguo-msingi tuna ukurasa wetu mpya.
Tumemaliza kusanidi seva yetu ya HTTP na tunaweza kuendelea hadi hatua inayofuata.
Usanidi wa seva ya FTP
1. ufungaji
Wacha tusakinishe seva yetu ya ftp na kifurushi cha ziada "db-util", kwamba tutahitaji kusanidi watumiaji pepe
apt install vsftpd db-util
2. Unda akaunti ya ndani
Seva ya vsftpd huturuhusu kusanidi ruhusa za ufikiaji kwa njia rahisi sana. Kwa kazi zetu tunahitaji kuwapa watumiaji wa ftp yafuatayo:
- ufikiaji kamili wa yaliyomo "/var/www/tovuti/";
- zima yote yaliyo hapo juu "/var/www/";
- muunganisho na akaunti ya mtandaoni;
Fungua akaunti ya ndani "virtual" bila ruhusa ya kuingia lakini na ufikiaji wa folda ya nyumbani "/var/www/". Akaunti hii itatumiwa na watumiaji wa ftp kuunganisha kwenye seva
useradd -d /var/www virtual
"Mzizi" atakuwa mmiliki wa "/var/www" folda kwa chaguo-msingi. Ili kuwezesha watumiaji wa ftp kurekebisha yaliyomo kwenye tovuti, hebu tubadilishe mmiliki wa "/var/www/tovuti/" ikijumuisha folda ndogo za "virtual".
chown -R virtual:root /var/www/sites
Kama matokeo, mtumiaji "virtual" wataweza kuona yaliyomo "/var/www/" na kuandika katika "/var/www/tovuti/" folda ndogo.
3. Configuration
Configuration kuu iko kwenye faili "/etc/vsftpd.conf", kwa hivyo wacha tuifungue na tuihariri kama ifuatavyo:
#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. Unda hifadhidata
Utahitaji hifadhidata ili kuhifadhi data ya akaunti pepe.
Kwanza, hebu tuunde faili rahisi ya maandishi "users.txt" kwenye folda ya nyumbani na uhifadhi maelezo ya ufikiaji (kuingia na nenosiri) ya watumiaji wa kawaida kwenye kila mstari mwingine. Kwa mfano, tutahitaji mtumiaji wa kawaida aliye na kuingia "ftp" na nywila "Qwe123". Kisha faili itaonekana kama hii:
ftp
Qwe123
Wacha tuunde hifadhidata
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Wacha turekebishe faili ya PAM chaguo-msingi "/etc/pam.d/vsftp" kama ifuatavyo:
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
Tafadhali kumbuka kuwa njia ya "pam_userdb.so" maktaba inaweza kuwa tofauti lakini unaweza kuibadilisha ikiwa inahitajika.
Pakia upya seva ya vsftpd ili kutekeleza mabadiliko.
systemctl restart vsftpd
Tulimaliza kusanidi seva ya FTP.
Maelezo ya muunganisho:
- ftp://[server's_ip_anwani]
- kuingia: ftp
- nenosiri: Qwe123
Usanidi wa seva ya PHP
1. Ufungaji wa PHP
Leo toleo la hivi punde la PHP ni php 7.4.5 ambalo halijajumuishwa katika hazina rasmi za Ubuntu. Hebu tuunganishe hazina ya wahusika wengine na tusakinishe toleo jipya zaidi la PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Angalia
Ili PHP itekelezwe faili ya ukurasa wa wavuti inapaswa kuwa nayo ".php" ugani. Wacha tubadilishe jina la ukurasa wetu wa jaribio:
cd /var/www/sites/site1/
mv index.html index.php
Ongeza laini ifuatayo ya php kwenye faili "/var/www/sites/site1/index.php", kwa hivyo faili inapaswa kuonekana kama hii:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Hifadhi mabadiliko na uangalie matokeo kwenye kivinjari.
Ukiona matokeo ya kazi "phpinfo()", mkalimani wa PHP anafanya kazi ipasavyo. Sasa hebu tuendelee kwenye hatua inayofuata.
Usanidi wa MySQL (MariaDB).
1. ufungaji
Wacha tusakinishe MariaDB na moduli ya PHP ya MySQL na kisha tupakie tena Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Onyesha upya ukurasa wa majaribio na uende kwenye sehemu ya PDO kwenye jedwali la usanidi wa PHP. Ikiwa unaweza kupata sehemu "PDO_mysql", basi inamaanisha kuwa dereva wa Mysql amewekwa kwa usahihi.
Kisha tutahitaji kufanya usanidi wa awali wa usalama wa MariaDB na kuweka nenosiri kwa "Mzizi" mtumiaji, zima ufikiaji wa mbali, na ufute akaunti zote za wageni.
mysql_secure_installation
Katika hatua ya kwanza, tunapaswa kuingia "mizizi" nenosiri la mtumiaji kufikia DBMS au bonyeza Enter ikiwa hakuna nenosiri. Kwa kuwa hakuna nenosiri lililowekwa kwa faili ya "mizizi" mtumiaji baada ya usakinishaji, bonyeza tu "Ingiza".
Tafadhali kumbuka kuwa katika MariaDB tayari kuna akaunti zake ambazo hazina uhusiano wowote na akaunti za OS. Kwa hivyo mtumiaji pekee tunayeshughulika naye katika MariaDB ni "mizizi".
Baada ya hapo, msanidi atatuuliza tuweke nenosiri kwa mtumiaji wa mizizi. Aina "Y" ili kuthibitisha na kuingiza nenosiri jipya. Kwa upande wetu, ni "Qwe123"
Jibu "Y" kwa maswali mengine yote hadi mwisho.
Usanidi umefanywa!
Maelezo ya ufikiaji wa MariaDB:
- Ingia: mizizi
- Nenosiri: Qwe123
usanidi wa phpMyAdmin
1. ufungaji
Wacha tusakinishe kiendelezi kinachohitajika kwa PHP - mbstring.
apt install php-mbstring
Kwenye hazina rasmi kuna toleo la zamani la phpMyAdmin, kwa hivyo wacha tusakinishe mpya kwa mikono.
Fungua tovuti rasmi ya mradi "https://www.phpmyadmin.net/” na upakue kumbukumbu mpya zaidi.
Nakili kumbukumbu kwa seva katika faili ya "/var/www/tovuti/" folda kwa kutumia mteja wowote wa ftp.
Ondoa folda na uipe jina jipya "phpMyAdmin". Usisahau kusanikisha "fungua zipu" matumizi. Unaweza kufuta kumbukumbu baada ya kuiondoa.
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
Unda folda ifuatayo "/var/www/sites/phpMyAdmin/tmp" kwa faili za muda na uwezeshe ufikiaji kwa kila mtu. Usipofanya hivi, phpMyAdmin itaripoti ufikiaji uliokataliwa kwa folda ya muda.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Unda lakabu
Kwa kuwa phpMyAdmin sio seva pangishi pepe na iko nje ya saraka ya mizizi, wacha tusanidi lakabu.
Fungua faili "/etc/apache2/mods-available/alias.conf" na ongeza mstari huu:
Alias /pma “/var/www/sites/phpMyAdmin"
ndani ya sehemu hii:
<IfModule alias_module>
</IfModule>
Pakia upya Apache ili kutumia mabadiliko.
systemctl reload apache2
Lakabu imewekwa, ili tuweze kufikia phpMyAdmin hapa "http://[server's_ip_address]/pma".
3. Tayari database
Kwa kuwa tulizuia kutumia mzizi wakati wa usanidi wa awali wa MariaDB, tutalazimika kuunda akaunti mpya yenye ruhusa zote ambazo zitatumika kufikia phpMyAdmin.
Kando na hilo, ili kuwezesha vipengele vya ziada vya phpMyAdmin tutahitaji hifadhidata ya huduma na akaunti ili kuipata.
Wacha tuunde akaunti
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
Tafadhali kumbuka kuwa jina la hifadhidata katika ombi la pili liko kwenye cheche za nyuma “… ON `phpmyadmin`.* KWA 'pma'@'localhost' IMETAMBULISHWA NA …”,
Katika matokeo, kutakuwa na akaunti mbili zitaundwa katika MariaDB:
- Ingia: pma, Nenosiri: Qwe123Ufikiaji kamili, utatumika kuingia kwenye phpMyAdmin
- Ingia: pmaservice, Nenosiri: Qwe123Akaunti ya huduma inahitajika kwa vipengele vya ziada kufanya kazi
Katika hatua inayofuata, tutaweka maelezo haya katika faili ya usanidi "config.inc.php".
Kisha tutahitaji kuagiza hifadhidata kutoka kwa faili "phpMyAdmin/sql/create_tables.sql".
Wacha tuiingize kwa usaidizi wa phpMyAdmin.
Fungua kiungo "http://[server's_ip_address]/pmma"
Ingiza kuingia "pm" na nywila "Qwe123"
Kwenda "Ingiza", Bonyeza "Chagua faili" na uchague faili ”sql/create_tables.sql” kwenye saraka ya mizizi ya phpMyAdmin. Inastahili kuwa na folda kwenye PC yako "phpMyAdmin" na faili. Iondoe kwenye kumbukumbu ikiwa ni lazima.
Bonyeza "Ifuatayo" kuanza kuagiza.
4. Configuration
Wacha tunakili faili ya usanidi kutoka kwa kiolezo
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Hebu tufungue faili ya usanidi "/var/www/sites/phpMyAdmin/config.inc.php" na ufanye mabadiliko yafuatayo:
Weka thamani nasibu ya herufi 32 kwa sifa hiyo “$cfg['blowfish_secret']”. Tumia jenereta yoyote ya nenosiri kwa ajili yake..
Ondoa maoni kutoka kwa mistari yote ya "Mipangilio ya uhifadhi wa usanidi wa phpMyAdmin" sehemu na kuweka kuingia na nenosiri la akaunti ya huduma ya MariaDB kwa faili ya "mdhibiti" na "controlpass" sifa ipasavyo. Kwa upande wetu, ni huduma ya usiku na Qwe123.
Hifadhi mabadiliko.
Maelezo ya ufikiaji wa phpMyadmin:
- http://[server’s_ip_address]/pma/
- Ingia: pma
- Nenosiri: Qwe123
Jinsi ya kufunga na kusanidi WordPress kwenye seva ya Linux
1. Kifurushi cha WordPress na uwekaji wa faili
Nenda kwa wavuti rasmi ya WP "https://ru.wordpress.org/” na upakue kumbukumbu kwenye Kompyuta yako ya karibu.
Pakia kumbukumbu kwenye seva kwenye "/var/www/tovuti/" folda na uiondoe kwenye kumbukumbu "wordpress"Folda."
Nakili yaliyomo kwenye "/var/www/sites/wordpress/" folda ya mizizi ya "/var/www/sites/site1/" tovuti.
Kwa kuwa tulinakili faili kupitia koni na ruhusa za mizizi, wacha tubadilishe mmiliki wa "/var/www/tovuti/" folda ikiwa ni pamoja na yaliyomo "virtual". Hii inahitajika ili kuwezesha ufikiaji kamili wa muunganisho wa ftp kupitia mteja.
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. Unda hifadhidata ya WordPress
Ingia kwa phpMyAdmin na ubofye "Unda hifadhidata". Taja jina la hifadhidata la kiholela, kwa upande wetu "wordpress_db" na ubofye kitufe cha "Unda".
Chagua hifadhidata mpya katika sehemu ya kushoto na ubofye “Mapendeleo”
Kisha bonyeza "Ongeza akaunti ya mtumiaji".
Ingiza kuingia na nenosiri (huduma ya wps / Qwe123) katika dirisha lililofunguliwa, angalia "Toa marupurupu yote katika wordpress_db" na bonyeza "Ifuatayo"
Kwenye ukurasa unaofuata bonyeza "Ghairi yote" kuweka upya haki zote kwenye kiwango cha hifadhidata na ubofye "Ifuatayo".
3. Usanidi wa WordPress kwenye seva ya Linux
Nenda kwenye saraka ya mizizi ya tovuti yako na unakili faili ya usanidi kutoka kwa kiolezo
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Kufungua "wp-config.php" faili na ingiza vigezo vya uunganisho wa hifadhidata ambavyo tumeunda katika hatua ya awali na uhifadhi mabadiliko.
4. Sakinisha CMS WordPress
Fungua kiungo kifuatacho kwenye kivinjari "http://[server's_ip_address]/wp-admin/install.php".
Jaza sehemu zote na ubofye "Sakinisha WordPress". Weka jina la mtumiaji na nenosiri bila mpangilio. Kwa upande wetu, ni wpadmin na Qwe123 ipasavyo.
Maelezo haya yatatumika kufikia WordPress.
Baada ya kumaliza usakinishaji, fungua kiungo "http://[server's_ip_address]/wp-login.php", weka maelezo ya ufikiaji, na uingie kwenye WordPress.
Unapaswa kuona moja ya templeti za WordPress kwenye ukurasa kuu.
Usanidi umekamilika.
Maelezo ya ufikiaji wa WordPress:
- http://[server’s_ip_address]/wp-login.php
- Ingia: wpadmin
- Nenosiri: Qwe123