
Teu lami pisan, Mail.Ru Cloud Solutions (MCS) sareng jasa Dobro Mail.Ru ngaluncurkeun proyék "", anu ngamungkinkeun organisasi nirlaba pikeun ménta sumberdaya platform awan MCS haratis. Yayasan amal ""Ilubiung dina proyék sareng suksés nyebarkeun bagian tina infrastrukturna dumasar kana MCS.
Saatos validasi, organisasi nirlaba tiasa nampi kapasitas virtual ti MCS, tapi setelan salajengna meryogikeun kaahlian khusus. Dina tulisan ieu, urang bakal ngabagikeun pitunjuk khusus pikeun nyetél server dumasar kana Ubuntu Linux Pikeun ngoperasikeun situs wéb utama yayasan sareng sababaraha subdomain nganggo sertipikat SSL gratis. Ieu bakal janten pituduh anu saderhana pikeun seueur jalmi, tapi kami ngarepkeun pangalaman kami bakal mangpaat pikeun organisasi nirlaba anu sanés sareng saluareun éta.
FYINaon anu anjeun tiasa kéngingkeun ti MCS? 4 CPU, RAM 32 GB, HDD 1 TB, OS Ubuntu Linux, panyimpenan objék 500 GB.
Lengkah 1: Jalankeun server virtual
Hayu urang langsung kana intina sareng jieun server virtual urang (ogé katelah "instance") dina akun MCS anjeun. Ti toko aplikasi, anjeun kedah milih sareng masang tumpukan LAMP anu tos siap, nyaéta sakumpulan parangkat lunak server (LAMP = Linux, Apache, MySQL, PHP), anu diperyogikeun pikeun ngajalankeun kalolobaan situs wéb.



Pilih konfigurasi luyu pikeun server jeung ngahasilkeun konci SSH anyar. Saatos ngaklik "Pasang," pangladén sareng pamasangan tumpukan LAMP bakal ngamimitian, anu peryogi sababaraha waktos. Sistim nu ogé bakal ajakan anjeun pikeun ngundeur konci swasta ka komputer Anjeun pikeun ngatur mesin virtual via konsol nu. Simpen.
Saatos masang aplikasi, hayu urang langsung nyetél firewall. Ieu ogé tiasa dilakukeun dina akun pribadi anjeun: angkat ka bagian "Komputasi Awan -> Mesin Virtual" sareng pilih "Setélan Firewall":

Anjeun kedah ngijinkeun lalu lintas asup kana palabuhan 80 sareng 9997. Ieu dipikabutuh pikeun masang sertipikat SSL sareng damel sareng phpMyAdmin. Aturan final kedah sapertos kieu:

Ayeuna anjeun tiasa nyambung ka server anjeun nganggo garis paréntah nganggo protokol SSH. Jang ngalampahkeun ieu, lebetkeun paréntah di handap ieu, netepkeun jalur ka konci SSH dina komputer anjeun sareng alamat IP éksternal tina server anjeun (anjeun tiasa mendakan ieu dina bagian "Mesin Virtual"):
$ ssh -i /путь/к/ключу/key.pem ubuntu@<ip_сервера>Nalika nyambungkeun ka server pikeun kahiji kalina, disarankeun pikeun masang sadaya apdet ayeuna sareng reboot. Jang ngalampahkeun ieu, ngajalankeun paréntah di handap ieu:
$ sudo apt-get updateSistem bakal nampi daptar apdet, pasang nganggo paréntah ieu sareng turutan paréntahna:
$ sudo apt-get upgradeSaatos masang apdet, reboot server:
$ sudo rebootLengkah 2: Konpigurasikeun host virtual
Seueur lembaga nonprofit kedah janten host sababaraha domain atanapi subdomain sakaligus (contona, halaman wéb utama sareng sababaraha halaman badarat pikeun kampanye promosi, jsb.). Sadaya ieu tiasa gampang di-host dina hiji server ku nyiptakeun sababaraha host virtual.
Kahiji, urang kudu nyieun struktur diréktori pikeun loka anu bakal dipintonkeun ka nu datang. Hayu urang nyieun sababaraha diréktori:
$ sudo mkdir -p /var/www/a-dobra.ru/public_html$ sudo mkdir -p /var/www/promo.a-dobra.ru/public_htmlSarta kami bakal nangtukeun pamaké ayeuna salaku nu boga:
$ 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 Variabel $USER ngandung ngaran pamaké anjeun ayeuna asup (standar nyaéta pamaké ubuntu). Ayeuna pangguna ayeuna gaduh diréktori public_html, dimana urang bakal nyimpen eusina.
Urang ogé kedah rada nyaluyukeun idin pikeun mastikeun aksés dibaca diidinan ka diréktori wéb anu dibagikeun sareng sadaya file sareng polder anu aya di jerona. Ieu dipikabutuh pikeun kaca loka pikeun nembongkeun bener:
$ sudo chmod -R 755 /var/wwwPangladén wéb anjeun ayeuna kedah gaduh idin anu diperyogikeun pikeun ningalikeun eusi. Salaku tambahan, pangguna anjeun ayeuna kedah tiasa nyiptakeun kontén dina diréktori anu diperyogikeun.
Geus aya file index.php dina diréktori /var/www/html, hayu urang salin kana diréktori anyar urang - ieu bakal eusi urang ayeuna:
$ 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.phpAyeuna urang kedah mastikeun yén pangguna tiasa ngaksés halaman wéb anjeun. Jang ngalampahkeun ieu, urang mimiti ngonpigurasikeun file host virtual, anu nangtukeun kumaha server wéb Apache bakal ngabales pamundut pikeun domain anu béda.
Sacara standar, Apache ngagaduhan file host virtual anu disebut 000-default.conf, anu tiasa urang dianggo salaku titik awal. Kami bakal nyalin éta pikeun nyiptakeun file host virtual pikeun unggal domain urang. Urang mimitian ku hiji domain, ngonpigurasikeunana, nyalin kana domain anu sanés, teras ngadamel éditan anu diperyogikeun.
Konfigurasi Ubuntu sacara standar merlukeun unggal file virtual host gaduh ekstensi *.conf.
Hayu urang mimitian ku nyalin file pikeun domain munggaran:
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/a-dobra.ru.confBuka file anyar dina éditor anu gaduh hak istimewa root:
$ sudo nano /etc/apache2/sites-available/a-dobra.ru.conf Edit data saperti kieu, nangtukeun port 80, data anjeun pikeun ServerAdmin, ServerName, ServerAlias, kitu ogé jalur ka diréktori akar situs anjeun, simpen file (Ctrl + X, lajeng Y):
<VirtualHost *:80>
ServerAdmin e.valuisky@a-dobra.ru
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 Nyetél domain primér, anu kedah cocog sareng nami host virtual. Ieu kedah janten nami domain anjeun. Nu kadua, ServerAlias, ngahartikeun ngaran séjén nu kudu diinterpretasi saolah-olah éta domain primér. Ieu merenah pikeun ngagunakeun ngaran domain tambahan, kayaning www.
Hayu urang nyalin config ieu ka host sejen tur edit ku cara nu sami:
$ sudo cp /etc/apache2/sites-available/a-dobra.ru.conf /etc/apache2/sites-available/promo.a-dobra.ru.confAnjeun tiasa nyiptakeun saloba diréktori sareng host virtual pikeun situs wéb anjeun anu anjeun pikahoyong! Ayeuna urang parantos nyiptakeun file host virtual, urang kedah ngaktipkeunana. Urang tiasa nganggo utilitas a2ensite pikeun ngaktipkeun unggal situs urang sapertos kieu:
$ sudo a2ensite a-dobra.ru.conf$ sudo a2ensite promo.a-dobra.ru.conf Sacara standar, LAMP nutup port 80, tapi urang peryogi éta engké pikeun masang sertipikat SSL. Janten, hayu urang ngédit file ports.conf teras balikan deui Apache:
$ sudo nano /etc/apache2/ports.confNambahkeun hiji baris anyar jeung simpen file sangkan kasampak kawas kieu:
Listen 80
Listen 443
Listen 9997Sakali anjeun parantos réngsé konfigurasi, anjeun kedah ngabalikan deui Apache supados sadaya parobihan tiasa dianggo:
$ sudo systemctl reload apache2Lengkah 3: Nyetél ngaran domain
Salajengna, anjeun kedah nambihan rékaman DNS anu bakal nunjuk ka server énggal anjeun. Yayasan "Arithmetic of Good" kami nganggo dns-master.ru pikeun ngatur domain; urang bakal ngagunakeun éta salaku conto.
Nyetél rékaman A pikeun domain utama biasana dituduhkeun sapertos kieu (tanda @):

A-catetan pikeun subdomains biasana dieusian kawas kieu:

Alamat IP nyaéta alamat anu nembé urang jieun. Linux-servers. Anjeun tiasa nangtukeun TTL = 3600.
Sanggeus sababaraha waktu, éta bakal mungkin pikeun ngakses situs anjeun, tapi pikeun ayeuna ngan ngaliwatan http://Dina lengkah saterusna urang bakal nambahan rojongan https://.
Lengkah 4: Nyetél sertipikat SSL gratis
Anjeun tiasa kéngingkeun sertipikat SSL Let's Encrypt gratis pikeun halaman wéb utama anjeun sareng sadaya subdomain. Anjeun oge bisa nyetél pembaharuan otomatis, nu pohara merenah. Pikeun kéngingkeun sertipikat SSL, pasang Certbot dina server anjeun:
$ sudo add-apt-repository ppa:certbot/certbot Hayu urang masang pakét Certbot pikeun Apache ngagunakeun apt:
$ sudo apt install python-certbot-apache Ayeuna Certbot parantos siap dianggo, jalankeun paréntahna:
$ sudo certbot --apache -d a-dobra.ru -d www.a-dobra.ru -d promo.a-dobra.ru Paréntah ieu ngajalankeun certbot, konci -d nangtukeun ngaran domain nu sertipikat kudu dikaluarkeun.
Upami ieu pertama kalina anjeun ngajalankeun certbot, anjeun bakal dipenta pikeun nuliskeun alamat email anjeun sareng satuju kana syarat jasa. Saatosna, certbot bakal ngahubungi server Let's Encrypt sareng pariksa yén anjeun ngadalikeun domain anu anjeun kéngingkeun sertipikat.
Upami sadayana lancar, certbot bakal naroskeun kumaha anjeun badé ngonpigurasikeun 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):Kami nyarankeun milih pilihan 2 sareng pencét ENTER. Konfigurasi bakal diropéa, sarta Apache bakal restarted pikeun nerapkeun parobahanana.
Ayeuna sertipikat anjeun diunduh, dipasang, sareng jalan. Coba muat ulang situs anjeun nganggo https:// sareng anjeun bakal ningali ikon kaamanan dina panyungsi anjeun. Lamun nguji server Anjeun , anjeunna bakal nampi A.
Sertipikat Let's Encrypt ngan valid pikeun 90 dinten, tapi pakét certbot anu kami pasang bakal otomatis nga-renew sertipikat. Pikeun nguji prosés pembaharuan, urang tiasa ngalakukeun certbot garing:
$ sudo certbot renew --dry-run Upami anjeun henteu ningali kasalahan nalika anjeun ngajalankeun paréntah ieu, maka sadayana jalan!
Lengkah 5: Aksés MySQL sareng phpMyAdmin
Loba situs web ngagunakeun database. Server kami parantos dipasang phpMyAdmin pikeun manajemén database. Pikeun ngaksés éta, arahkeun ka tautan ieu dina panyungsi anjeun:
https://<ip-адрес сервера>:9997Sandi pikeun aksés root tiasa didapet dina akun pribadi MCS anjeun (). Tong hilap ngarobih kecap konci root anjeun nalika anjeun mimiti asup!
Lengkah 6: Konpigurasikeun unggah file via SFTP
Pamekar bakal gampang pikeun ngamuat file pikeun halaman wéb anjeun nganggo SFTP. Jang ngalampahkeun ieu, urang bakal nyieun pamaké anyar, disebut webmaster:
$ sudo adduser webmasterSistem bakal naroskeun anjeun nyetél kecap konci sareng asupkeun sababaraha inpormasi anu sanés.
Robah nu boga diréktori nu ngandung ramatloka anjeun:
$ sudo chown -R webmaster:webmaster /var/www/a-dobra.ru/public_htmlAyeuna hayu urang robih konfigurasi SSH supados pangguna énggal ngan ukur gaduh aksés kana SFTP sanés terminal SSH:
$ sudo nano /etc/ssh/sshd_configGulung ka handap ka bagian handap file konfigurasi sareng tambahkeun blok ieu:
Match User webmaster
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/www/a-dobra.ru
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding noSimpen file sareng balikan deui jasa:
$ sudo systemctl restart sshdAyeuna anjeun tiasa nyambung ka server liwat klien SFTP, contona, via FileZilla.
hasil
- Ayeuna anjeun terang kumaha cara nyiptakeun diréktori énggal sareng nyetél host virtual pikeun situs wéb anjeun dina hiji server.
- Anjeun tiasa sacara gampil nyiptakeun sertipikat SSL anu anjeun peryogikeun - éta gratis, sareng éta bakal otomatis diropéa.
- Anjeun tiasa dianggo kalayan gampang sareng database MySQL ngalangkungan phpMyAdmin anu akrab.
- Nyieun akun SFTP anyar jeung nyetel hak aksés gampang. Akun ieu tiasa dibagikeun sareng pamekar wéb pihak katilu sareng pangurus situs.
- Tong hilap ngapdet sistem anjeun sacara périodik, sareng kami ogé nyarankeun ngadamel cadangan — MCS ngamungkinkeun anjeun nyandak jepretan sadaya sistem anjeun kalayan hiji klik, teras ngajalankeun sadayana gambar upami diperyogikeun.
Sumberdaya anu dianggo anu tiasa mangfaat:
Ku jalan kitu, Anjeun tiasa maca dina VC kumaha yayasan kami nyebarkeun platform pendidikan online pikeun yatim dumasar kana méga MCS.
sumber: www.habr.com
