Cloud for Misaada: Mwongozo wa Uhamiaji

Cloud for Misaada: Mwongozo wa Uhamiaji

Sio muda mrefu uliopita, Mail.Ru Cloud Solutions (MCS) na huduma ya Dobro Mail.Ru ilizindua mradi huo "Wingu kwa wafadhili”, shukrani ambayo mashirika yasiyo ya faida yanaweza kupata rasilimali za jukwaa la wingu la MCS bila malipo. Shirika la hisani "Hesabu ya wemaΒ» alishiriki katika mradi na kusambaza kwa ufanisi sehemu ya miundombinu yake kulingana na MCS.

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.

Cloud for Misaada: Mwongozo wa Uhamiaji
Cloud for Misaada: Mwongozo wa Uhamiaji
Cloud for Misaada: Mwongozo wa Uhamiaji
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":

Cloud for Misaada: Mwongozo wa Uhamiaji
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:

Cloud for Misaada: Mwongozo wa Uhamiaji
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 @):

Cloud for Misaada: Mwongozo wa Uhamiaji
Rekodi A ya vikoa vidogo kawaida hubainishwa kama hii:

Cloud for Misaada: Mwongozo wa Uhamiaji
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 Mtihani wa Seva ya SSL Labs, atapata daraja A.

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 (https://mcs.mail.ru/app/services/marketplace/apps/) Usisahau kubadilisha nenosiri lako la msingi mara ya kwanza unapoingia!

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

  1. Sasa unajua jinsi ya kuunda saraka mpya na kusanidi seva pangishi za tovuti zako ndani ya seva hiyo hiyo.
  2. Unaweza kuunda vyeti muhimu vya SSL kwa urahisi - ni bure, na vitasasishwa moja kwa moja.
  3. Unaweza kufanya kazi kwa urahisi na hifadhidata ya MySQL kupitia phpMyAdmin inayofahamika.
  4. 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.
  5. 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:

https://www.digitalocean.com/community/tutorials/apache-ubuntu-14-04-lts-ru
https://www.digitalocean.com/community/tutorials/apache-let-s-encrypt-ubuntu-18-04-ru
https://www.digitalocean.com/community/tutorials/how-to-enable-sftp-without-shell-access-on-ubuntu-18-04

Kwa njia, hapa Unaweza kusoma kwenye VC jinsi taasisi yetu ilivyosambaza jukwaa la elimu ya mtandaoni kwa watoto yatima kulingana na wingu la MCS.

Chanzo: mapenzi.com

Kuongeza maoni