Laipẹ sẹhin, Mail.Ru Cloud Solutions (MCS) ati iṣẹ Dobro Mail.Ru ṣe ifilọlẹ iṣẹ naa “
Lẹhin ti afọwọsi kọja, NPO le gba agbara foju lati MCS, ṣugbọn iṣeto siwaju nilo awọn afijẹẹri kan. Ninu ohun elo yii, a fẹ lati pin awọn ilana kan pato fun ṣiṣeto olupin orisun-orisun Ubuntu lati ṣiṣe oju opo wẹẹbu ipilẹ akọkọ ati nọmba awọn subdomains nipa lilo awọn iwe-ẹri SSL ọfẹ. Fun ọpọlọpọ, eyi yoo jẹ itọsọna ti o rọrun, ṣugbọn a nireti pe iriri wa yoo wulo fun awọn ajo miiran ti kii ṣe èrè, kii ṣe nikan.
FYI: Kini o le gba lati ọdọ MCS? 4 CPUs, 32 GB Ramu, 1 TB HDD, Ubuntu Linux OS, 500 GB ohun ipamọ.
Igbesẹ 1: ṣe ifilọlẹ olupin foju
Jẹ ki a lọ taara si aaye ki o ṣẹda olupin foju wa (aka “apẹẹrẹ”) ninu akọọlẹ ti ara ẹni MCS rẹ. Ninu ile itaja ohun elo, o nilo lati yan ati fi sori ẹrọ akopọ LAMP ti o ti ṣetan, eyiti o jẹ eto sọfitiwia olupin (LAMP = Linux, Apache, MySQL, PHP) pataki lati ṣiṣe awọn oju opo wẹẹbu pupọ julọ.
Yan iṣeto olupin ti o yẹ ki o ṣẹda bọtini SSH tuntun kan. Lẹhin titẹ bọtini “Fi sori ẹrọ”, fifi sori ẹrọ olupin ati akopọ LAMP yoo bẹrẹ, eyi yoo gba akoko diẹ. Eto naa yoo tun funni lati ṣe igbasilẹ bọtini ikọkọ si kọnputa rẹ lati ṣakoso ẹrọ foju nipasẹ console, fipamọ.
Lẹhin fifi ohun elo naa sori ẹrọ, jẹ ki a ṣeto ogiriina lẹsẹkẹsẹ, eyi tun ṣee ṣe ninu akọọlẹ ti ara ẹni: lọ si apakan “Iṣiro awọsanma -> Awọn ẹrọ foju” ki o yan “Ṣeto ogiriina naa”:
O nilo lati ṣafikun igbanilaaye fun ijabọ ti nwọle nipasẹ ibudo 80 ati 9997. Eyi jẹ pataki ni ọjọ iwaju lati fi awọn iwe-ẹri SSL sori ẹrọ ati lati ṣiṣẹ pẹlu phpMyAdmin. Bi abajade, ṣeto awọn ofin yẹ ki o dabi eyi:
Bayi o le sopọ si olupin rẹ nipasẹ laini aṣẹ nipa lilo ilana SSH. Lati ṣe eyi, tẹ aṣẹ atẹle naa, tọka si bọtini SSH lori kọnputa rẹ ati adiresi IP ita ti olupin rẹ (o le rii ni apakan “Awọn ẹrọ foju”):
$ ssh -i /путь/к/ключу/key.pem ubuntu@<ip_сервера>
Nigbati o ba n sopọ si olupin fun igba akọkọ, o niyanju lati fi gbogbo awọn imudojuiwọn lọwọlọwọ sori rẹ ki o tun atunbere. Lati ṣe eyi, ṣiṣe awọn aṣẹ wọnyi:
$ sudo apt-get update
Eto naa yoo gba atokọ ti awọn imudojuiwọn, fi sii wọn nipa lilo aṣẹ yii ki o tẹle awọn ilana naa:
$ sudo apt-get upgrade
Lẹhin fifi awọn imudojuiwọn sori ẹrọ, tun bẹrẹ olupin naa:
$ sudo reboot
Igbesẹ 2: Ṣeto awọn ogun foju
Ọpọlọpọ awọn ti kii ṣe ere nilo lati ṣetọju ọpọlọpọ awọn ibugbe tabi subdomains ni akoko kanna (fun apẹẹrẹ, oju opo wẹẹbu akọkọ ati ọpọlọpọ awọn oju-iwe ibalẹ fun awọn ipolongo ipolowo, ati bẹbẹ lọ). Gbogbo eyi le wa ni irọrun gbe sori olupin kan nipa ṣiṣẹda ọpọlọpọ awọn ogun foju.
Ni akọkọ a nilo lati ṣẹda ilana ilana fun awọn aaye ti yoo han si awọn alejo. Jẹ ki a ṣẹda awọn ilana diẹ:
$ sudo mkdir -p /var/www/a-dobra.ru/public_html
$ sudo mkdir -p /var/www/promo.a-dobra.ru/public_html
Ki o si pato eni to ni olumulo lọwọlọwọ:
$ 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
Oniyipada $USER
ni orukọ olumulo labẹ eyiti o ti wọle lọwọlọwọ (nipasẹ aiyipada eyi ni olumulo ubuntu
). Bayi olumulo lọwọlọwọ ni awọn ilana ilana gbangba_html nibiti a yoo tọju akoonu naa.
A tun nilo lati ṣatunkọ awọn igbanilaaye diẹ lati rii daju pe iraye si kika ni a gba laaye si itọsọna wẹẹbu ti o pin ati gbogbo awọn faili ati awọn folda ti o wa ninu. Eyi jẹ pataki fun awọn oju-iwe aaye lati ṣafihan ni deede:
$ sudo chmod -R 755 /var/www
Olupin wẹẹbu rẹ yẹ ki o ni awọn igbanilaaye ti o nilo lati ṣafihan akoonu naa. Ni afikun, olumulo rẹ ni bayi ni agbara lati ṣẹda akoonu ninu awọn ilana ti o nilo.
Faili index.php ti wa tẹlẹ ninu itọsọna /var/www/html, jẹ ki a daakọ si awọn ilana tuntun wa - eyi yoo jẹ akoonu wa fun bayi:
$ 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
Bayi o nilo lati rii daju pe olumulo le wọle si aaye rẹ. Lati ṣe eyi, a yoo kọkọ tunto awọn faili agbalejo foju, eyiti o pinnu bii olupin wẹẹbu Apache yoo ṣe dahun si awọn ibeere si awọn agbegbe oriṣiriṣi.
Nipa aiyipada, Apache ni faili agbalejo foju kan 000-default.conf ti a le lo bi aaye ibẹrẹ. A yoo daakọ eyi lati ṣẹda awọn faili agbalejo foju fun ọkọọkan awọn ibugbe wa. A yoo bẹrẹ pẹlu agbegbe kan, tunto rẹ, daakọ si agbegbe miiran, ati lẹhinna ṣe awọn atunṣe pataki lẹẹkansi.
Eto aiyipada Ubuntu nilo pe faili ogun foju kọọkan ni itẹsiwaju * .conf kan.
Jẹ ki a bẹrẹ nipa didakọ faili naa fun agbegbe akọkọ:
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/a-dobra.ru.conf
Ṣii faili titun ni olootu pẹlu awọn ẹtọ gbongbo:
$ sudo nano /etc/apache2/sites-available/a-dobra.ru.conf
Satunkọ awọn data bi wọnyi, pato ibudo 80, rẹ data fun ServerAdmin
, ServerName
, ServerAlias
, bakannaa ọna si itọsọna root ti aaye rẹ, fi faili pamọ (Ctrl+X, lẹhinna 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
ṣeto awọn jc ašẹ, eyi ti o gbọdọ baramu awọn foju ogun orukọ. Eyi gbọdọ jẹ orukọ ìkápá rẹ. Èkejì, ServerAlias
, n ṣalaye awọn orukọ miiran ti o yẹ ki o tumọ bi ẹnipe o jẹ aaye akọkọ. Eyi rọrun fun lilo awọn orukọ ìkápá afikun, fun apẹẹrẹ lilo www.
Jẹ ki a daakọ atunto yii fun agbalejo miiran ati tun satunkọ ni ọna kanna:
$ sudo cp /etc/apache2/sites-available/a-dobra.ru.conf /etc/apache2/sites-available/promo.a-dobra.ru.conf
O le ṣẹda bi ọpọlọpọ awọn ilana ati awọn ogun foju fun awọn oju opo wẹẹbu rẹ bi o ṣe fẹ! Ni bayi ti a ti ṣẹda awọn faili agbalejo foju wa, a nilo lati mu wọn ṣiṣẹ. A le lo a2ensite IwUlO lati jeki kọọkan ti wa ojula bi yi:
$ sudo a2ensite a-dobra.ru.conf
$ sudo a2ensite promo.a-dobra.ru.conf
Nipa aiyipada, ibudo 80 ti wa ni pipade ni LAMP, ati pe a yoo nilo rẹ nigbamii lati fi ijẹrisi SSL sori ẹrọ. Nitorinaa jẹ ki a ṣatunkọ faili ports.conf lẹsẹkẹsẹ lẹhinna tun Apache bẹrẹ:
$ sudo nano /etc/apache2/ports.conf
Ṣafikun laini tuntun ki o fi faili pamọ ki o dabi eyi:
Listen 80
Listen 443
Listen 9997
Lẹhin ipari awọn eto, o nilo lati tun Apache bẹrẹ fun gbogbo awọn ayipada lati mu ipa:
$ sudo systemctl reload apache2
Igbesẹ 3: Ṣeto awọn orukọ-ašẹ
Nigbamii, o nilo lati ṣafikun awọn igbasilẹ DNS ti yoo tọka si olupin tuntun rẹ. Lati ṣakoso awọn ibugbe, Arithmetic wa ti Ipilẹ ti o dara nlo iṣẹ dns-master.ru, a yoo fi han pẹlu apẹẹrẹ kan.
Ṣiṣeto igbasilẹ A fun agbegbe akọkọ jẹ itọkasi nigbagbogbo gẹgẹbi atẹle (ami @
):
Igbasilẹ A fun awọn ibugbe subdomains nigbagbogbo ni pato bi eleyi:
Adirẹsi IP jẹ adirẹsi olupin Linux ti a ṣẹṣẹ ṣẹda. O le pato TTL = 3600.
Lẹhin akoko diẹ, yoo ṣee ṣe lati ṣabẹwo si aaye rẹ, ṣugbọn fun bayi nikan nipasẹ http://
. Ni nigbamii ti igbese a yoo fi support https://
.
Igbesẹ 4: Ṣeto awọn iwe-ẹri SSL ọfẹ
O le gba ọfẹ Jẹ ki a Encrypt awọn iwe-ẹri SSL fun aaye akọkọ rẹ ati gbogbo awọn subdomains. O tun le tunto isọdọtun aifọwọyi wọn, eyiti o rọrun pupọ. Lati gba awọn iwe-ẹri SSL, fi Certbot sori olupin rẹ:
$ sudo add-apt-repository ppa:certbot/certbot
Fi sori ẹrọ package Certbot fun Apache ni lilo apt
:
$ sudo apt install python-certbot-apache
Bayi Certbot ti šetan lati lo, ṣiṣe aṣẹ naa:
$ sudo certbot --apache -d a-dobra.ru -d www.a-dobra.ru -d promo.a-dobra.ru
Yi aṣẹ nṣiṣẹ certbot, awọn bọtini -d
setumo awọn orukọ ti awọn ibugbe fun eyi ti awọn ijẹrisi yẹ ki o wa ti oniṣowo.
Ti eyi ba jẹ igba akọkọ ti o ṣe ifilọlẹ certbot, ao beere lọwọ rẹ lati tẹ adirẹsi imeeli rẹ sii ki o gba si awọn ofin lilo iṣẹ naa. certbot yoo kan si olupin Let's Encrypt ati lẹhinna rii daju pe o ṣakoso agbegbe fun eyiti o beere ijẹrisi naa.
Ti ohun gbogbo ba lọ daradara, certbot yoo beere bi o ṣe fẹ tunto iṣeto 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):
A ṣeduro yiyan aṣayan 2 ati titẹ ENTER. Iṣeto ni yoo ni imudojuiwọn ati pe Apache yoo tun bẹrẹ lati lo awọn ayipada.
Awọn iwe-ẹri rẹ ti wa ni igbasilẹ bayi, fi sori ẹrọ ati ṣiṣẹ. Gbiyanju lati tun kojọpọ aaye rẹ pẹlu https:// ati pe iwọ yoo rii aami aabo ni ẹrọ aṣawakiri rẹ. Ti o ba ṣe idanwo olupin rẹ
Jẹ ki a Encrypt awọn iwe-ẹri wulo fun awọn ọjọ 90 nikan, ṣugbọn package certbot ti a ṣẹṣẹ fi sii yoo tunse awọn iwe-ẹri laifọwọyi. Lati ṣe idanwo ilana imudojuiwọn, a le ṣe ṣiṣe gbigbẹ ti certbot:
$ sudo certbot renew --dry-run
Ti o ko ba rii awọn aṣiṣe eyikeyi bi abajade ti ṣiṣiṣẹ aṣẹ yii, lẹhinna ohun gbogbo n ṣiṣẹ!
Igbesẹ 5: Wọle si MySQL ati phpMyAdmin
Ọpọlọpọ awọn aaye ayelujara lo awọn apoti isura infomesonu. Ohun elo phpMyAdmin fun iṣakoso data ti wa tẹlẹ sori olupin wa. Lati wọle si, lọ si ẹrọ aṣawakiri rẹ nipa lilo ọna asopọ bii:
https://<ip-адрес сервера>:9997
Ọrọigbaniwọle fun iwọle gbongbo le jẹ gba ninu akọọlẹ ti ara ẹni MCS rẹ (
Igbesẹ 6: Ṣeto ikojọpọ faili nipasẹ SFTP
Awọn olupilẹṣẹ yoo rii pe o rọrun lati gbe awọn faili si oju opo wẹẹbu rẹ nipasẹ SFTP. Lati ṣe eyi, a yoo ṣẹda olumulo tuntun, pe e ni ọga wẹẹbu:
$ sudo adduser webmaster
Eto naa yoo beere lọwọ rẹ lati ṣeto ọrọ igbaniwọle kan ki o tẹ data miiran sii.
Yiyipada eni to ni itọsọna pẹlu oju opo wẹẹbu rẹ:
$ sudo chown -R webmaster:webmaster /var/www/a-dobra.ru/public_html
Bayi jẹ ki a yi atunto SSH pada ki olumulo tuntun nikan ni iwọle si SFTP kii ṣe ebute SSH:
$ sudo nano /etc/ssh/sshd_config
Yi lọ si opin pupọ ti faili atunto ki o ṣafikun bulọọki atẹle naa:
Match User webmaster
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/www/a-dobra.ru
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
Fi faili pamọ ki o tun iṣẹ naa bẹrẹ:
$ sudo systemctl restart sshd
Bayi o le sopọ si olupin nipasẹ eyikeyi alabara SFTP, fun apẹẹrẹ, nipasẹ FileZilla.
Abajade
- Bayi o mọ bi o ṣe le ṣẹda awọn ilana tuntun ati tunto awọn ogun foju fun awọn oju opo wẹẹbu rẹ laarin olupin kanna.
- O le ni rọọrun ṣẹda awọn iwe-ẹri SSL pataki - o jẹ ọfẹ, ati pe wọn yoo ni imudojuiwọn laifọwọyi.
- O le ni irọrun ṣiṣẹ pẹlu aaye data MySQL nipasẹ phpMyAdmin faramọ.
- Ṣiṣẹda awọn akọọlẹ SFTP tuntun ati ṣeto awọn ẹtọ wiwọle ko nilo igbiyanju pupọ. Iru awọn akọọlẹ le ṣee gbe lọ si awọn oludasilẹ wẹẹbu ti ẹnikẹta ati awọn alabojuto aaye.
- Maṣe gbagbe lati ṣe imudojuiwọn eto naa lorekore, ati pe a tun ṣeduro ṣiṣe awọn afẹyinti - ni MCS o le ya “awọn fọto fọto” ti gbogbo eto pẹlu titẹ kan, ati lẹhinna, ti o ba jẹ dandan, ṣe ifilọlẹ gbogbo awọn aworan.
Awọn orisun ti a lo ti o le wulo:
Nipa ọna,
orisun: www.habr.com