Sio muda mrefu uliopita, Mail.Ru Cloud Solutions (MCS) na huduma ya Dobro Mail.Ru ilizindua mradi huo "
Baada ya kupitisha uthibitishaji, NPO inaweza kupokea uwezo pepe kutoka kwa MCS, lakini usanidi zaidi unahitaji sifa fulani. Katika nyenzo hii, tunataka kushiriki maagizo mahususi ya kusanidi seva inayotegemea Ubuntu Linux ili kuendesha tovuti ya msingi na idadi ya vikoa vidogo vinavyotumia vyeti vya SSL visivyolipishwa. Kwa wengi, hii itakuwa mwongozo rahisi, lakini tunatarajia kwamba uzoefu wetu utakuwa muhimu kwa mashirika mengine yasiyo ya faida, na si tu.
FYI: Unaweza kupata nini kutoka kwa MCS? CPU 4, RAM ya GB 32, HDD 1 ya TB, Ubuntu Linux OS, hifadhi ya kitu ya GB 500.
Hatua ya 1: zindua seva pepe
Hebu tuelekee moja kwa moja na tuunde seva yetu pepe (yaani "mfano") katika akaunti yako ya kibinafsi ya MCS. Katika duka la programu, unahitaji kuchagua na kufunga stack tayari ya LAMP, ambayo ni seti ya programu ya seva (LAMP = Linux, Apache, MySQL, PHP) muhimu ili kuendesha tovuti nyingi.
Chagua usanidi unaofaa wa seva na uunde kitufe kipya cha SSH. Baada ya kubofya kitufe cha "Sakinisha", usakinishaji wa seva na stack ya LAMP itaanza, hii itachukua muda. Mfumo pia utatoa kupakua ufunguo wa kibinafsi kwa kompyuta yako ili kudhibiti mashine ya mtandaoni kupitia console, ihifadhi.
Baada ya kusanikisha programu, wacha tuanzishe firewall mara moja, hii pia inafanywa katika akaunti yako ya kibinafsi: nenda kwenye sehemu ya "Kompyuta ya Wingu -> Mashine ya Virtual" na uchague "Mipangilio ya Firewall":
Unahitaji kuongeza ruhusa kwa trafiki inayoingia kupitia bandari 80 na 9997. Hii ni muhimu katika siku zijazo ili kusakinisha vyeti vya SSL na kufanya kazi na phpMyAdmin. Kama matokeo, seti ya sheria inapaswa kuonekana kama hii:
Sasa unaweza kuunganisha kwenye seva yako kupitia mstari wa amri kwa kutumia itifaki ya SSH. Ili kufanya hivyo, chapa amri ifuatayo, ukionyesha ufunguo wa SSH kwenye kompyuta yako na anwani ya IP ya nje ya seva yako (unaweza kuipata katika sehemu ya "Mashine za Virtual"):
$ ssh -i /ΠΏΡΡΡ/ΠΊ/ΠΊΠ»ΡΡΡ/key.pem ubuntu@<ip_ΡΠ΅ΡΠ²Π΅ΡΠ°>
Wakati wa kuunganisha kwa seva kwa mara ya kwanza, inashauriwa kusakinisha sasisho zote za sasa juu yake na kuwasha upya. Ili kufanya hivyo, endesha amri zifuatazo:
$ sudo apt-get update
Mfumo utapokea orodha ya sasisho, zisakinishe kwa kutumia amri hii na ufuate maagizo:
$ sudo apt-get upgrade
Baada ya kusasisha sasisho, anzisha tena seva:
$ sudo reboot
Hatua ya 2: Sanidi wapangishi pepe
Mashirika mengi yasiyo ya faida yanahitaji kudumisha vikoa au vikoa vidogo kwa wakati mmoja (kwa mfano, tovuti kuu na kurasa kadhaa za kutua za kampeni za matangazo, n.k.). Yote hii inaweza kuwekwa kwa urahisi kwenye seva moja kwa kuunda majeshi kadhaa ya kawaida.
Kwanza tunahitaji kuunda muundo wa saraka kwa tovuti ambazo zitaonyeshwa kwa wageni. Wacha tuunde saraka kadhaa:
$ sudo mkdir -p /var/www/a-dobra.ru/public_html
$ sudo mkdir -p /var/www/promo.a-dobra.ru/public_html
Na taja mmiliki wa mtumiaji wa sasa:
$ sudo chown -R $USER:$USER /var/www/a-dobra.ru/public_html
$ sudo chown -R $USER:$USER /var/www/promo.a-dobra.ru/public_html
Inaweza kubadilika $USER
ina jina la mtumiaji ambalo umeingia chini yake (kwa chaguo-msingi huyu ndiye mtumiaji ubuntu
) Sasa mtumiaji wa sasa anamiliki saraka za umma_html ambapo tutahifadhi maudhui.
Pia tunahitaji kuhariri ruhusa kidogo ili kuhakikisha kuwa ufikiaji wa kusoma unaruhusiwa kwenye saraka ya wavuti iliyoshirikiwa na faili na folda zote zilizomo. Hii ni muhimu ili kurasa za tovuti zionyeshwe kwa usahihi:
$ sudo chmod -R 755 /var/www
Seva yako ya wavuti inapaswa sasa kuwa na ruhusa inayohitaji ili kuonyesha maudhui. Kwa kuongeza, mtumiaji wako sasa ana uwezo wa kuunda maudhui katika saraka zinazohitajika.
Tayari kuna index.php faili katika saraka ya /var/www/html, wacha tuinakili kwa saraka zetu mpya - hii itakuwa maudhui yetu kwa sasa:
$ cp /var/www/html/index.php /var/www/a-dobra.ru/public_html/index.php
$ cp /var/www/html/index.php /var/www/promo.a-dobra.ru/public_html/index.php
Sasa unahitaji kuhakikisha kuwa mtumiaji anaweza kufikia tovuti yako. Ili kufanya hivyo, kwanza tutasanidi faili za mwenyeji wa kawaida, ambazo huamua jinsi seva ya wavuti ya Apache itajibu maombi kwa vikoa tofauti.
Kwa chaguo-msingi, Apache ina faili ya seva pangishi 000-default.conf ambayo tunaweza kutumia kama sehemu ya kuanzia. Tutainakili hii ili kuunda faili pepe za seva pangishi kwa kila moja ya vikoa vyetu. Tutaanza na kikoa kimoja, kukisanidi, kukinakili hadi kikoa kingine, na kisha kufanya mabadiliko yanayohitajika tena.
Usanidi chaguo-msingi wa Ubuntu unahitaji kwamba kila faili pepe ya seva pangishi iwe na kiendelezi cha *.conf.
Wacha tuanze kwa kunakili faili kwa kikoa cha kwanza:
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/a-dobra.ru.conf
Fungua faili mpya katika hariri iliyo na haki za mizizi:
$ sudo nano /etc/apache2/sites-available/a-dobra.ru.conf
Hariri data kama ifuatavyo, ukibainisha bandari 80, data yako ya ServerAdmin
, ServerName
, ServerAlias
, na vile vile njia ya saraka ya mizizi ya tovuti yako, hifadhi faili (Ctrl+X, kisha Y):
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName a-dobra.ru
ServerAlias www.a-dobra.ru
DocumentRoot /var/www/a-dobra.ru/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/a-dobra.ru/public_html>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
<FilesMatch .php$>
SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost/"
</FilesMatch>
</VirtualHost>
ServerName
huweka kikoa msingi, ambacho lazima kilingane na jina la seva pangishi. Hili lazima liwe jina la kikoa chako. Pili, ServerAlias
, inafafanua majina mengine ambayo yanapaswa kufasiriwa kana kwamba ndio kikoa cha msingi. Hii ni rahisi kutumia majina ya kikoa ya ziada, kwa mfano kutumia www.
Wacha tunakili usanidi huu kwa mwenyeji mwingine na pia tuuhariri kwa njia ile ile:
$ sudo cp /etc/apache2/sites-available/a-dobra.ru.conf /etc/apache2/sites-available/promo.a-dobra.ru.conf
Unaweza kuunda saraka nyingi na wapangishi pepe wa tovuti zako upendavyo! Sasa kwa kuwa tumeunda faili zetu za seva pangishi, tunahitaji kuziwezesha. Tunaweza kutumia matumizi ya a2ensite kuwezesha kila moja ya tovuti zetu kama hii:
$ sudo a2ensite a-dobra.ru.conf
$ sudo a2ensite promo.a-dobra.ru.conf
Kwa chaguo-msingi, bandari 80 imefungwa katika LAMP, na tutaihitaji baadaye ili kusakinisha cheti cha SSL. Kwa hivyo wacha tuhariri faili ya ports.conf mara moja na tuwashe tena Apache:
$ sudo nano /etc/apache2/ports.conf
Ongeza laini mpya na uhifadhi faili ili ionekane kama hii:
Listen 80
Listen 443
Listen 9997
Baada ya kukamilisha mipangilio, unahitaji kuanzisha upya Apache ili mabadiliko yote yatekeleze:
$ sudo systemctl reload apache2
Hatua ya 3: Sanidi majina ya vikoa
Ifuatayo, unahitaji kuongeza rekodi za DNS ambazo zitaelekeza kwenye seva yako mpya. Ili kudhibiti vikoa, Hesabu yetu ya Msingi Mzuri hutumia huduma ya dns-master.ru, tutaionyesha kwa mfano.
Kuweka rekodi ya A kwa kikoa kikuu kawaida huonyeshwa kama ifuatavyo (ishara @
):
Rekodi A ya vikoa vidogo kawaida hubainishwa kama hii:
Anwani ya IP ni anwani ya seva ya Linux ambayo tumeunda hivi punde. Unaweza kutaja TTL = 3600.
Baada ya muda, itawezekana kutembelea tovuti yako, lakini kwa sasa tu kupitia http://
. Katika hatua inayofuata tutaongeza msaada https://
.
Hatua ya 4: Sanidi vyeti vya SSL visivyolipishwa
Unaweza kupata cheti cha Hebu Tusimbe kwa Njia Fiche kwa tovuti yako kuu na vikoa vidogo vyote bila malipo. Unaweza pia kusanidi upyaji wao wa moja kwa moja, ambayo ni rahisi sana. Ili kupata vyeti vya SSL, sakinisha Certbot kwenye seva yako:
$ sudo add-apt-repository ppa:certbot/certbot
Sakinisha kifurushi cha Certbot kwa Apache kutumia apt
:
$ sudo apt install python-certbot-apache
Sasa Certbot iko tayari kutumia, endesha amri:
$ sudo certbot --apache -d a-dobra.ru -d www.a-dobra.ru -d promo.a-dobra.ru
Amri hii inaendesha certbot, funguo -d
fafanua majina ya vikoa ambavyo cheti kinapaswa kutolewa.
Ikiwa hii ni mara ya kwanza unapozindua certbot, utaombwa uweke barua pepe yako na ukubali sheria na masharti ya matumizi ya huduma. certbot kisha itawasiliana na seva ya Hebu Tusimbe kwa Njia Fiche na kisha kuthibitisha kwamba kweli unadhibiti kikoa ambacho umeomba cheti.
Ikiwa kila kitu kilikwenda sawa, certbot itauliza jinsi unataka kusanidi usanidi wa HTTPS:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
Tunapendekeza uchague chaguo la 2 na ubofye ENTER. Mipangilio itasasishwa na Apache itaanzishwa upya ili kutekeleza mabadiliko.
Vyeti vyako sasa vimepakuliwa, kusakinishwa na kufanya kazi. Jaribu kupakia upya tovuti yako na https:// na utaona ikoni ya usalama kwenye kivinjari chako. Ikiwa utajaribu seva yako
Wacha Tusimba vyeti ni halali kwa siku 90 pekee, lakini kifurushi cha certbot ambacho tumesakinisha kitasasisha vyeti kiotomatiki. Ili kujaribu mchakato wa kusasisha, tunaweza kufanya kazi kavu ya certbot:
$ sudo certbot renew --dry-run
Ikiwa hauoni makosa yoyote kama matokeo ya kuendesha amri hii, basi kila kitu kinafanya kazi!
Hatua ya 5: Fikia MySQL na phpMyAdmin
Tovuti nyingi hutumia hifadhidata. Zana ya phpMyAdmin ya usimamizi wa hifadhidata tayari imesakinishwa kwenye seva yetu. Ili kuipata, nenda kwenye kivinjari chako kwa kutumia kiungo kama vile:
https://<ip-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°>:9997
Nenosiri la ufikiaji wa mizizi linaweza kupatikana katika akaunti yako ya kibinafsi ya MCS (
Hatua ya 6: Sanidi upakiaji wa faili kupitia SFTP
Wasanidi watapata urahisi wa kupakia faili za tovuti yako kupitia SFTP. Ili kufanya hivyo, tutaunda mtumiaji mpya, tumwite msimamizi wa wavuti:
$ sudo adduser webmaster
Mfumo utakuuliza uweke nenosiri na uweke data nyingine.
Kubadilisha mmiliki wa saraka na tovuti yako:
$ sudo chown -R webmaster:webmaster /var/www/a-dobra.ru/public_html
Sasa wacha tubadilishe usanidi wa SSH ili mtumiaji mpya apate ufikiaji wa SFTP tu na sio terminal ya SSH:
$ sudo nano /etc/ssh/sshd_config
Tembeza hadi mwisho wa faili ya usanidi na ongeza kizuizi kifuatacho:
Match User webmaster
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/www/a-dobra.ru
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
Hifadhi faili na uanze tena huduma:
$ sudo systemctl restart sshd
Sasa unaweza kuunganisha kwenye seva kupitia mteja wowote wa SFTP, kwa mfano, kupitia FileZilla.
Jumla ya
- Sasa unajua jinsi ya kuunda saraka mpya na kusanidi seva pangishi za tovuti zako ndani ya seva hiyo hiyo.
- Unaweza kuunda vyeti muhimu vya SSL kwa urahisi - ni bure, na vitasasishwa moja kwa moja.
- Unaweza kufanya kazi kwa urahisi na hifadhidata ya MySQL kupitia phpMyAdmin inayofahamika.
- Kuunda akaunti mpya za SFTP na kusanidi haki za ufikiaji hakuhitaji juhudi nyingi. Akaunti kama hizo zinaweza kuhamishiwa kwa wasanidi programu wengine wa wavuti na wasimamizi wa tovuti.
- Usisahau kusasisha mfumo mara kwa mara, na pia tunapendekeza kufanya nakala rudufu - katika MCS unaweza kuchukua "picha" za mfumo mzima kwa mbofyo mmoja, na kisha, ikiwa ni lazima, uzindua picha nzima.
Rasilimali zinazotumika ambazo zinaweza kuwa muhimu:
Kwa njia,
Chanzo: mapenzi.com