Cloud for Charities: Torolàlana momba ny fifindra-monina

Cloud for Charities: Torolàlana momba ny fifindra-monina

Vao tsy ela akory izay, ny Mail.Ru Cloud Solutions (MCS) sy ny serivisy Dobro Mail.Ru dia nanangana ny tetikasa "Cloud ho an'ny asa soa”, isaorana ireo fikambanana tsy mitady tombony mahazo maimaim-poana ny loharanon'ny sehatra rahona MCS. Fondation Charitable "Arithmetika ny fahatsarana» dia nandray anjara tamin'ny tetikasa ary nahomby tamin'ny fametrahana ampahany amin'ny fotodrafitrasa mifototra amin'ny MCS.

Rehefa vita ny fanamarinana dia afaka mahazo fahafaha-manao virtoaly avy amin'ny MCS ny NPO, saingy mila fepetra sasany ny fanamafisana fanampiny. Amin'ity fitaovana ity, te-hizara torolalana manokana izahay amin'ny fametrahana mpizara miorina amin'ny Ubuntu Linux mba hampandehanana ny tranokala fototra fototra sy subdomains maromaro mampiasa mari-pankasitrahana SSL maimaim-poana. Ho an'ny maro, ity dia ho torolalana tsotra, saingy manantena izahay fa ny traikefanay dia ho ilaina ho an'ny fikambanana tsy mitady tombony hafa, fa tsy hoe fotsiny.

FYI: Inona no azonao avy amin'ny MCS? 4 CPUs, 32 GB RAM, 1 TB HDD, Ubuntu Linux OS, fitahirizana zavatra 500 GB.

Dingana 1: manomboka ny mpizara virtoaly

Andao hivantana amin'ny teboka ary hamorona ny mpizara virtoaly (antsoina hoe "ohatra") ao amin'ny kaontinao manokana MCS. Ao amin'ny fivarotana fampiharana dia mila misafidy sy mametraka stack LAMP efa vonona ianao, izay andiana rindrambaiko mpizara (LAMP = Linux, Apache, MySQL, PHP) ilaina hampandehanana ny ankamaroan'ny tranokala.

Cloud for Charities: Torolàlana momba ny fifindra-monina
Cloud for Charities: Torolàlana momba ny fifindra-monina
Cloud for Charities: Torolàlana momba ny fifindra-monina
Safidio ny fikirakirana mpizara mety ary mamorona fanalahidy SSH vaovao. Rehefa avy manindry ny bokotra "Install", dia hanomboka ny fametrahana ny server sy ny LAMP stack, haka fotoana kely izany. Ny rafitra ihany koa dia hanolotra ny misintona fanalahidy manokana amin'ny solosainao hitantana ny milina virtoaly amin'ny alàlan'ny console, tehirizo izany.

Aorian'ny fametrahana ny fampiharana dia ndao apetraka avy hatrany ny firewall, atao ao amin'ny kaontinao manokana ihany koa izany: mandehana any amin'ny fizarana "Cloud computing -> Virtual machines" ary fidio ny "Setting the firewall":

Cloud for Charities: Torolàlana momba ny fifindra-monina
Mila manampy alalana amin'ny fifamoivoizana miditra amin'ny seranana 80 sy 9997 ianao. Ilaina izany amin'ny ho avy mba hametrahana mari-pankasitrahana SSL sy hiasa amin'ny phpMyAdmin. Vokatr'izany, ny fitambaran'ny fitsipika dia tokony ho toy izao:

Cloud for Charities: Torolàlana momba ny fifindra-monina
Ankehitriny ianao dia afaka mifandray amin'ny mpizara anao amin'ny alàlan'ny baiko amin'ny alàlan'ny protocol SSH. Mba hanaovana izany, soraty ity baiko manaraka ity, manondro ny lakile SSH ao amin'ny solosainao sy ny adiresy IP ivelany an'ny mpizara anao (azonao jerena ao amin'ny fizarana "Virtual machines" izany):

$ ssh -i /путь/к/ключу/key.pem ubuntu@<ip_сервера>

Rehefa mifandray amin'ny mpizara voalohany, dia asaina mametraka ny fanavaozana rehetra misy azy ary avereno indray. Mba hanaovana izany, araho ireto baiko manaraka ireto:

$ sudo apt-get update

Hahazo lisitr'ireo fanavaozana ny rafitra, apetraho amin'ny fampiasana ity baiko ity ary araho ny torolàlana:

$ sudo apt-get upgrade

Aorian'ny fametrahana ny fanavaozana, avereno indray ny mpizara:

$ sudo reboot

Dingana 2: Mametraha mpampiantrano virtoaly

Maro ny fikambanana tsy mitady tombontsoa no mila mitazona sehatra na zana-tohatra maromaro miaraka amin'ny fotoana iray (ohatra, tranokala lehibe sy pejy fipetrahana maromaro ho an'ny fanentanana fampiroboroboana, sns.). Izany rehetra izany dia azo apetraka tsara amin'ny mpizara iray amin'ny famoronana mpampiantrano virtoaly maromaro.

Voalohany dia mila mamorona rafitra lahatahiry ho an'ny tranokala izay haseho amin'ny mpitsidika isika. Andao hamorona lahatahiry vitsivitsy:

$ sudo mkdir -p /var/www/a-dobra.ru/public_html

$ sudo mkdir -p /var/www/promo.a-dobra.ru/public_html

Ary lazao ny tompon'ny mpampiasa ankehitriny:

$ 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

Miovaova $USER misy ny solonanarana izay idiranao amin'izao fotoana izao (amin'ny alàlan'ny default dia io no mpampiasa ubuntu). Ankehitriny ny mpampiasa ankehitriny dia manana ny lahatahiry public_html izay hitehirizana ny atiny.

Mila manitsy kely ihany koa ny fahazoan-dàlana mba hahazoana antoka fa mahazo alalana amin'ny lahatahiry tranonkala ifampizarana sy ny rakitra sy lahatahiry rehetra ny fidirana mamaky teny. Ilaina izany mba hampisehoana tsara ny pejy tranonkala:

$ sudo chmod -R 755 /var/www

Tokony hanana ny fahazoan-dàlana ilainy hanehoana ny atiny izao ny mpizara tranonkalanao. Fanampin'izany, manana fahafahana mamorona votoaty ao amin'ny lahatahiry ilaina ny mpampiasa anao.

Efa misy rakitra index.php ao amin'ny lahatahiry /var/www/html, andao halaina any amin'ny lahatahiry vaovao - ity no votoatiny amin'izao fotoana izao:

$ 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

Ankehitriny dia mila mahazo antoka ianao fa afaka miditra amin'ny tranokalanao ny mpampiasa. Mba hanaovana izany, dia amboary aloha ny rakitra mpampiantrano virtoaly, izay mamaritra ny fomba hamalian'ny mpizara tranonkala Apache amin'ny fangatahana amin'ny sehatra samihafa.

Amin'ny alàlan'ny default, Apache dia manana rakitra mpampiantrano virtoaly 000-default.conf izay azontsika ampiasaina ho fanombohana. Handika izany izahay mba hamoronana rakitra fampiantranoana virtoaly ho an'ny sehatra tsirairay. Hanomboka amin'ny sehatra iray isika, amboary izany, handika izany amin'ny sehatra iray hafa, ary avy eo dia hanao ny fanovana ilaina indray.

Ny fanamafisam-peo default an'ny Ubuntu dia mitaky fa ny rakitra mpampiantrano virtoaly tsirairay dia manana fanitarana *.conf.

Andao hanomboka amin'ny fanaovana kopia ny rakitra ho an'ny sehatra voalohany:

$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/a-dobra.ru.conf

Sokafy rakitra vaovao amin'ny tonian-dahatsoratra misy zo fototra:

$ sudo nano /etc/apache2/sites-available/a-dobra.ru.conf

Amboary ny angona toy izao manaraka izao, mamaritra ny seranan-tsambo 80, ny angonao ho an'ny ServerAdmin, ServerName, ServerAlias, ary koa ny lalana mankany amin'ny lahatahiry fototry ny tranokalanao, tehirizo ny rakitra (Ctrl+X, avy eo 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 mametraka ny sehatra voalohany, izay tsy maintsy mifanaraka amin'ny anaran'ny mpampiantrano virtoaly. Ity dia tokony ho anaran-tsehatrao. Faharoa, ServerAlias, dia mamaritra anarana hafa tokony hadika ho toy ny sehatra voalohany. Ity dia mety amin'ny fampiasana anarana sehatra fanampiny, ohatra amin'ny fampiasana www.

Andao handika ity config ity ho an'ny mpampiantrano iray hafa ary hanova izany amin'ny fomba mitovy:

$ sudo cp /etc/apache2/sites-available/a-dobra.ru.conf /etc/apache2/sites-available/promo.a-dobra.ru.conf

Azonao atao ny mamorona lahatahiry sy mpampiantrano virtoaly maro ho an'ny tranokalanao araka izay tianao! Ankehitriny rehefa namorona ny rakitra mpampiantrano virtoaly izahay dia mila mamela azy ireo izahay. Afaka mampiasa ny fampiasa a2ensite izahay mba ahafahan'ny tsirairay amin'ny tranokalanay toy izao:

$ sudo a2ensite a-dobra.ru.conf

$ sudo a2ensite promo.a-dobra.ru.conf 

Amin'ny alàlan'ny default, mihidy ao amin'ny LAMP ny seranan-tsambo 80, ary mila izany isika any aoriana mba hametrahana taratasy fanamarinana SSL. Andeha àry hanova avy hatrany ny rakitra ports.conf ary avereno indray ny Apache:

$ sudo nano /etc/apache2/ports.conf

Manampia tsipika vaovao ary tehirizo ilay rakitra mba ho toy izao:

Listen 80
Listen 443
Listen 9997

Rehefa vita ny fanovana dia mila averinao indray ny Apache mba hampiharana ny fanovana rehetra:

$ sudo systemctl reload apache2

Dingana 3: Manangana anaran-tsehatra

Manaraka, mila manampy rakitra DNS izay hanondro ny mpizara vaovao ianao. Mba hitantanana sehatra, ny Arithmetic of Good Foundation dia mampiasa ny serivisy dns-master.ru, hasehontsika amin'ny ohatra iray izany.

Ny fametrahana rakitsoratra A ho an'ny sehatra lehibe dia matetika aseho toy izao manaraka izao (sign @):

Cloud for Charities: Torolàlana momba ny fifindra-monina
Ny firaketana A ho an'ny subdomains dia matetika voatondro toy izao:

Cloud for Charities: Torolàlana momba ny fifindra-monina
Ny adiresy IP dia ny adiresin'ny mpizara Linux vao noforoninay. Azonao atao ny mamaritra ny TTL = 3600.

Rehefa afaka kelikely, dia ho azo atao ny mitsidika ny tranokalanao, fa amin'izao fotoana izao ihany http://. Amin'ny dingana manaraka dia hanampy fanohanana https://.

Dingana 4: Manangana mari-pankasitrahana SSL maimaim-poana

Afaka mahazo mari-pankasitrahana Let's Encrypt SSL maimaim-poana ianao ho an'ny tranokalanao lehibe sy ny subdomain rehetra. Azonao atao ihany koa ny manamboatra ny fanavaozana mandeha ho azy, izay tena mety. Mba hahazoana mari-pankasitrahana SSL, apetraho amin'ny mpizara Certbot ianao:

$ sudo add-apt-repository ppa:certbot/certbot

Apetraho ny fonosana Certbot ho an'ny Apache mampiasa apt:

$ sudo apt install python-certbot-apache 

Efa vonona hampiasaina izao ny Certbot, araho ny baiko:

$ sudo certbot --apache -d a-dobra.ru -d www.a-dobra.ru -d promo.a-dobra.ru

Ity baiko ity dia mampiasa certbot, keys -d farito ny anaran'ny sehatra izay tokony hamoahana ny taratasy fanamarinana.

Raha vao voalohany ianao no manomboka certbot, dia angatahina ianao hampiditra ny adiresy mailakao ary hanaiky ny fepetra fampiasana ny serivisy. certbot dia hifandray amin'ny mpizara Let's Encrypt avy eo ary hanamarina fa tena mifehy ny sehatra nangatahanao ny taratasy fanamarinana ianao.

Raha nandeha tsara ny zava-drehetra, certbot dia hanontany ny fomba tianao hanitsiana ny fanovana 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):

Manoro hevitra izahay hisafidy safidy 2 ary tsindrio ny ENTER. Havaozina ny fanamafisam-peo ary haverina indray ny Apache hampihatra ireo fanovana.

Efa alaina sy apetraka ary miasa izao ny taratasy fanamarinanao. Andramo avereno avereno amin'ny https:// ny tranokalanao dia ho hitanao ny kisary fiarovana amin'ny navigateur. Raha manandrana ny mpizara anao ianao SSL Labs Server Test, hahazo naoty A izy.

Ny mari-pankasitrahana Let's Encrypt dia manan-kery mandritra ny 90 andro ihany, fa ny fonosana certbot vao napetratsika dia hanavao ho azy ny fanamarinana. Mba hitsapana ny fizotry ny fanavaozana, dia afaka manao fanamainana ny certbot izahay:

$ sudo certbot renew --dry-run 

Raha tsy mahita hadisoana ianao vokatry ny fampandehanana ity baiko ity dia mandeha ny zava-drehetra!

Dingana 5: Midira amin'ny MySQL sy phpMyAdmin

Tranonkala maro no mampiasa angon-drakitra. Ny fitaovana phpMyAdmin ho an'ny fitantanana angon-drakitra dia efa napetraka ao amin'ny servery. Raha te hidirana dia mandehana any amin'ny navigateur mampiasa rohy toy ny:

https://<ip-адрес сервера>:9997

Ny tenimiafina ho an'ny fidirana amin'ny faka dia azo alaina ao amin'ny kaontinao manokana MCS (https://mcs.mail.ru/app/services/marketplace/apps/). Aza adino ny manova ny tenimiafina fototra amin'ny fotoana voalohany hidiranao!

Dingana 6: Amboary ny fampiakarana rakitra amin'ny SFTP

Ho hitan'ny mpamorona fa mety ny mampakatra rakitra ho an'ny tranokalanao amin'ny alàlan'ny SFTP. Mba hanaovana izany dia hamorona mpampiasa vaovao izahay, antsoina hoe webmaster:

$ sudo adduser webmaster

Ny rafitra dia hangataka anao hametraka tenimiafina ary hampiditra angona hafa.

Fanovana ny tompon'ny lahatahiry amin'ny tranokalanao:

$ sudo chown -R webmaster:webmaster /var/www/a-dobra.ru/public_html

Andeha isika hanova ny config SSH ka ny mpampiasa vaovao ihany no afaka miditra amin'ny SFTP fa tsy ny terminal SSH:

$ sudo nano /etc/ssh/sshd_config

Mankanesa any amin'ny faran'ny rakitra fanamafisana ary ampio ity sakana manaraka ity:

Match User webmaster
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/www/a-dobra.ru
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no

Tehirizo ny rakitra ary avereno indray ny serivisy:

$ sudo systemctl restart sshd

Ankehitriny ianao dia afaka mifandray amin'ny mpizara amin'ny alàlan'ny mpanjifa SFTP, ohatra, amin'ny alàlan'ny FileZilla.

Ny vokany

  1. Fantatrao izao ny fomba hamoronana lahatahiry vaovao sy hanefana mpampiantrano virtoaly ho an'ny tranokalanao ao anatin'ny lohamilina iray ihany.
  2. Afaka mamorona mora foana ireo mari-pankasitrahana SSL ilaina ianao - maimaim-poana izany, ary havaozina ho azy ireo.
  3. Azonao atao ny miara-miasa amin'ny angon-drakitra MySQL amin'ny alàlan'ny phpMyAdmin mahazatra.
  4. Tsy mitaky ezaka be ny famoronana kaonty SFTP vaovao sy ny fametrahana zo fidirana. Ny kaonty toy izany dia azo afindra any amin'ny mpamorona tranonkala sy ny mpitantana tranonkala.
  5. Aza adino ny manavao tsindraindray ny rafitra, ary manoro hevitra ihany koa izahay hanao backup - ao amin'ny MCS dia azonao atao ny maka "snapshots" amin'ny rafitra manontolo amin'ny tsindry iray, ary avy eo, raha ilaina, manomboka sary iray manontolo.

Loharano ampiasaina mety mahasoa:

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

Raha eny, eto Azonao vakiana ao amin'ny VC ny fomba nametrahan'ny fototry ny sehatra fanabeazana an-tserasera ho an'ny kamboty mifototra amin'ny rahona MCS.

Source: www.habr.com

Add a comment