د خیرات لپاره بادل: د مهاجرت لارښود

د خیرات لپاره بادل: د مهاجرت لارښود

ډیر وخت دمخه، Mail.Ru Cloud Solutions (MCS) او د Dobro Mail.Ru خدمت پروژه پیل کړه "د خیرات لپاره بادل"، مننه چې غیر انتفاعي سازمانونه کولی شي د MCS کلاوډ پلیټ فارم سرچینې وړیا ترلاسه کړي. خیریه بنسټ"د نیکمرغۍ ریاضی» په پروژه کې برخه واخیسته او د MCS پر بنسټ یې د زیربنا یوه برخه په بریالیتوب سره ځای پرځای کړه.

د تایید کولو وروسته، NPO کولی شي د MCS څخه مجازی ظرفیت ترلاسه کړي، مګر نور تشکیلات ځینې وړتیاو ته اړتیا لري. پدې موادو کې، موږ غواړو د اوبنټو لینوکس میشته سرور ترتیب کولو لپاره ځانګړي لارښوونې شریک کړو ترڅو د اصلي بنسټ ویب پاڼه او یو شمیر فرعي ډومینونه د وړیا SSL سندونو په کارولو سره. د ډیری لپاره، دا به یو ساده لارښود وي، مګر موږ هیله لرو چې زموږ تجربه به د نورو غیر انتفاعي سازمانونو لپاره ګټوره وي، او نه یوازې.

FYI: تاسو د MCS څخه څه ترلاسه کولی شئ؟ 4 CPUs، 32 GB رام، 1 TB HDD، اوبنټو لینکس OS، د 500 GB څیز ذخیره.

1 ګام: مجازی سرور پیل کړئ

راځئ چې مستقیم ټکي ته ورسیږو او ستاسو د MCS شخصي حساب کې زموږ مجازی سرور (عرف "مثال") جوړ کړئ. په اپلیکیشن پلورنځي کې، تاسو اړتیا لرئ د چمتو شوي LAMP سټیک انتخاب او نصب کړئ، کوم چې د سرور سافټویر (LAMP = Linux، Apache، MySQL، PHP) سیټ دی چې ډیری ویب پاڼې چلولو لپاره اړین دي.

د خیرات لپاره بادل: د مهاجرت لارښود
د خیرات لپاره بادل: د مهاجرت لارښود
د خیرات لپاره بادل: د مهاجرت لارښود
د سرور مناسب ترتیب غوره کړئ او نوی SSH کیلي رامینځته کړئ. د "انسټال" تڼۍ باندې کلیک کولو وروسته، د سرور او LAMP سټیک نصب کول به پیل شي، دا به یو څه وخت ونیسي. سیسټم به ستاسو کمپیوټر ته د شخصي کیلي ډاونلوډ کولو وړاندیز وکړي ترڅو د کنسول له لارې مجازی ماشین اداره کړي ، خوندي یې کړئ.

د اپلیکیشن له نصبولو وروسته ، راځئ سمدلاسه فایر وال تنظیم کړو ، دا ستاسو په شخصي حساب کې هم ترسره کیږي: د "کلاؤډ کمپیوټري -> مجازی ماشینونو" برخې ته لاړشئ او "د فایر وال تنظیم کول" غوره کړئ:

د خیرات لپاره بادل: د مهاجرت لارښود
تاسو اړتیا لرئ د پورټ 80 او 9997 له لارې د راتلوونکي ترافیک لپاره اجازه اضافه کړئ. دا په راتلونکي کې د SSL سندونو نصبولو او د phpMyAdmin سره کار کولو لپاره اړین دی. د پایلې په توګه، د مقرراتو ټولګه باید داسې ښکاري:

د خیرات لپاره بادل: د مهاجرت لارښود
اوس تاسو کولی شئ د SSH پروتوکول په کارولو سره د کمانډ لاین له لارې خپل سرور سره وصل شئ. د دې کولو لپاره، لاندې کمانډ ولیکئ، ستاسو په کمپیوټر کې د SSH کیلي او ستاسو د سرور بهرني IP پتې ته اشاره وکړئ (تاسو کولی شئ دا د "مجازی ماشینونو" برخه کې ومومئ):

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

کله چې د لومړي ځل لپاره سرور سره وصل شئ ، نو سپارښتنه کیږي چې ټول اوسني تازه معلومات په دې کې نصب کړئ او بیا یې پیل کړئ. د دې کولو لپاره، لاندې کمانډونه پرمخ وړئ:

$ sudo apt-get update

سیسټم به د تازه معلوماتو لیست ترلاسه کړي، د دې کمانډ په کارولو سره یې نصب کړئ او لارښوونې تعقیب کړئ:

$ sudo apt-get upgrade

د تازه معلوماتو نصبولو وروسته، سرور بیا پیل کړئ:

$ sudo reboot

2 ګام: مجازی کوربه تنظیم کړئ

ډیری غیر انتفاعي اړتیا لري چې په ورته وخت کې ډیری ډومینونه یا فرعي ډومینونه وساتي (د بیلګې په توګه، یو اصلي ویب پاڼه او د پروموشنل کمپاینونو لپاره ډیری لینډینګ پاڼې، او نور). دا ټول په اسانۍ سره په یو سرور کې د څو مجازی کوربه توبونو په جوړولو سره کیښودل کیدی شي.

لومړی موږ اړتیا لرو د سایټونو لپاره لارښود جوړښت رامینځته کړو چې لیدونکو ته به ښودل شي. راځئ چې ځینې لارښودونه جوړ کړو:

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

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

او د اوسني کارونکي مالک مشخص کړئ:

$ 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

متغیر $USER د هغه کارن نوم لري چې تاسو اوس مهال ننوتلی یاست (په ډیفالټ دا کارن دی ubuntu). اوس اوسنی کارن د public_html لارښودونه لري چیرې چې موږ به مینځپانګه ذخیره کړو.

موږ اړتیا لرو اجازه یو څه ترمیم کړو ترڅو ډاډ ترلاسه کړو چې د لوستلو لاسرسي شریک شوي ویب لارښود او ټول فایلونه او فولډرې چې پکې شامل دي اجازه لري. دا اړینه ده چې د سایټ پاڼې په سمه توګه ښکاره شي:

$ sudo chmod -R 755 /var/www

ستاسو ویب سرور باید اوس هغه اجازې ولري چې دا د مینځپانګې ښودلو ته اړتیا لري. سربیره پردې، ستاسو کاروونکي اوس د دې وړتیا لري چې په اړین لارښودونو کې مینځپانګې رامینځته کړي.

په /var/www/html ډایرکټر کې لا دمخه د index.php فایل شتون لري ، راځئ چې دا زموږ نوي لارښودونو ته کاپي کړو - دا به د اوس لپاره زموږ مینځپانګه وي:

$ 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

اوس تاسو اړتیا لرئ ډاډ ترلاسه کړئ چې کاروونکي کولی شي ستاسو سایټ ته لاسرسی ومومي. د دې کولو لپاره، موږ به لومړی د مجازی کوربه فایلونه تنظیم کړو، کوم چې دا معلومه کوي چې څنګه د اپاچي ویب سرور به مختلف ډومینونو ته غوښتنو ته ځواب ووايي.

په ډیفالټ، اپاچی د مجازی کوربه فایل 000-default.conf لري چې موږ یې د پیل ټکي په توګه کارولی شو. موږ دا کاپي کوو ترڅو زموږ د هر ډومین لپاره مجازی کوربه فایلونه جوړ کړو. موږ به د یو ډومین سره پیل وکړو، دا به ترتیب کړو، دا به بل ډومین ته کاپي کړو، او بیا به اړین سمونونه بیا ترسره کړو.

د اوبنټو ډیفالټ ترتیب ته اړتیا لري چې هر مجازی کوربه فایل د *.conf توسیع ولري.

راځئ چې د لومړي ډومین لپاره د فایل کاپي کولو سره پیل وکړو:

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

په مدیر کې د روټ حقونو سره نوې فایل خلاص کړئ:

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

په لاندې ډول ډاټا ایډیټ کړئ، د پورټ 80 مشخص کول، ستاسو ډاټا لپاره ServerAdmin, ServerName, ServerAlias، په بیله بیا ستاسو د سایټ روټ لارښود ته لاره ، فایل خوندي کړئ (Ctrl+X، بیا 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 لومړنی ډومین ټاکي، کوم چې باید د مجازی کوربه نوم سره سمون ولري. دا باید ستاسو د ډومین نوم وي. دوهم، ServerAlias، نور نومونه تعریفوي چې باید تشریح شي لکه څنګه چې دا لومړني ډومین وي. دا د اضافي ډومین نومونو کارولو لپاره مناسب دی، د بیلګې په توګه د www کارول.

راځئ چې دا ترتیب د بل کوربه لپاره کاپي کړو او په ورته ډول یې ترمیم کړو:

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

تاسو کولی شئ د خپلو ویب پا toو لپاره څومره لارښودونه او مجازی کوربه جوړ کړئ څومره چې تاسو غواړئ! اوس چې موږ خپل مجازی کوربه فایلونه جوړ کړي، موږ اړتیا لرو چې دوی فعال کړو. موږ کولی شو د a2ensite افادیت څخه کار واخلو ترڅو زموږ هر سایټ په لاندې ډول فعال کړو:

$ sudo a2ensite a-dobra.ru.conf

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

په ډیفالټ کې، پورټ 80 په LAMP کې تړل شوی، او موږ به وروسته د SSL سند نصبولو ته اړتیا ولرو. نو راځئ سمدلاسه د ports.conf فایل ترمیم کړو او بیا اپاچی بیا پیل کړو:

$ sudo nano /etc/apache2/ports.conf

نوې کرښه اضافه کړئ او فایل خوندي کړئ نو داسې ښکاري:

Listen 80
Listen 443
Listen 9997

د ترتیباتو بشپړولو وروسته، تاسو اړتیا لرئ چې د ټولو بدلونونو د اغیزمن کیدو لپاره اپاچی بیا پیل کړئ:

$ sudo systemctl reload apache2

3 ګام: د ډومین نومونه تنظیم کړئ

بل، تاسو اړتیا لرئ د DNS ریکارډونه اضافه کړئ چې ستاسو نوي سرور ته به اشاره وکړي. د ډومینونو اداره کولو لپاره، زموږ د ښه فاؤنڈیشن ریاضی د dns-master.ru خدمت کاروي، موږ به یې د مثال سره وښایه.

د اصلي ډومین لپاره د A-ریکارډ ترتیب کول معمولا په لاندې ډول ښودل کیږي (نښه @):

د خیرات لپاره بادل: د مهاجرت لارښود
د فرعي ډومینونو لپاره ریکارډ معمولا په دې ډول مشخص کیږي:

د خیرات لپاره بادل: د مهاجرت لارښود
IP پته د لینکس سرور پته ده چې موږ یې جوړ کړی. تاسو کولی شئ TTL = 3600 مشخص کړئ.

د یو څه وخت وروسته، دا به ممکنه وي چې ستاسو سایټ څخه لیدنه وکړئ، مګر د اوس لپاره یوازې له لارې http://. په بل ګام کې به موږ ملاتړ اضافه کړو https://.

4 ګام: وړیا SSL سندونه تنظیم کړئ

تاسو کولی شئ وړیا ترلاسه کړئ راځئ چې د خپل اصلي سایټ او ټولو فرعي ډومینونو لپاره SSL سندونه کوډ کړو. تاسو کولی شئ د دوی اتوماتیک تجدید هم تنظیم کړئ ، کوم چې خورا اسانه دی. د SSL سندونو ترلاسه کولو لپاره ، په خپل سرور کې Certbot نصب کړئ:

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

د اپاچي کارولو لپاره د Certbot بسته نصب کړئ apt:

$ sudo apt install python-certbot-apache 

اوس Certbot د کارولو لپاره چمتو دی، کمانډ پرمخ وړئ:

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

دا کمانډ سرټبوټ چلوي، کیلي -d د هغو ډومینونو نومونه تعریف کړئ چې سند یې باید صادر شي.

که دا لومړی ځل وي چې تاسو certbot پیل کړئ، نو تاسو څخه به وغوښتل شي چې خپل بریښنالیک پته دننه کړئ او د خدمت کارولو شرایطو سره موافق یاست. certbot به بیا د Let's Encrypt سرور سره اړیکه ونیسي او بیا به تصدیق کړي چې تاسو واقعیا هغه ډومین کنټرول کوئ چې تاسو د سند غوښتنه کړې.

که هرڅه سم وي، سرټبټ به پوښتنه وکړي چې تاسو څنګه غواړئ د 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):

موږ وړاندیز کوو چې انتخاب 2 غوره کړئ او د ENTER فشار ورکړئ. تشکیلات به تازه شي او اپاچي به د بدلونونو پلي کولو لپاره بیا پیل شي.

ستاسو سندونه اوس ډاونلوډ شوي، نصب شوي او کار کوي. خپل سایټ د https:// سره بیا پورته کولو هڅه وکړئ او تاسو به په خپل براوزر کې د امنیت عکس وګورئ. که تاسو خپل سرور ازموینه وکړئ د SSL لابراتوار سرور ازموینه، هغه به A درجه ترلاسه کړي.

راځئ چې د کوډ کولو سندونه یوازې د 90 ورځو لپاره د اعتبار وړ وي ، مګر د سرټبوټ کڅوړه چې موږ یې نصب کړې په اوتومات ډول سندونه نوي کوي. د تازه پروسې ازموینې لپاره ، موږ کولی شو د سرټبوټ وچ چل ترسره کړو:

$ sudo certbot renew --dry-run 

که تاسو د دې کمانډ چلولو په پایله کې کومه تېروتنه ونه ګورئ، نو هرڅه کار کوي!

5 ګام: MySQL او phpMyAdmin ته لاسرسی ومومئ

ډیری ویب پاڼې ډیټابیس کاروي. د ډیټابیس مدیریت لپاره د phpMyAdmin وسیله لا دمخه زموږ په سرور کې نصب شوې ده. دې ته د لاسرسي لپاره ، د لینک په کارولو سره خپل براوزر ته لاړشئ لکه:

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

د روټ لاسرسي لپاره پټنوم ستاسو د MCS شخصي حساب کې ترلاسه کیدی شي (https://mcs.mail.ru/app/services/marketplace/apps/). د لومړي ځل لپاره د ننوتلو پرمهال خپل د روټ پاسورډ بدلول مه هیروئ!

6 ګام: د SFTP له لارې د فایل اپلوډ تنظیم کړئ

پراختیا کونکي به د SFTP له لارې ستاسو د ویب پا forې لپاره فایلونه اپلوډ کول اسانه ومومي. د دې کولو لپاره، موږ به یو نوی کاروونکي جوړ کړو، هغه ته د ویب ماسټر غږ وکړئ:

$ sudo adduser webmaster

سیسټم به تاسو څخه وغواړي چې پاسورډ تنظیم کړئ او ځینې نور معلومات داخل کړئ.

ستاسو د ویب پاڼې سره د لارښود مالک بدلول:

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

اوس راځئ چې د SSH تشکیل بدل کړو ترڅو نوی کارونکي یوازې SFTP ته لاسرسی ولري نه د SSH ټرمینل:

$ sudo nano /etc/ssh/sshd_config

د ترتیب کولو فایل پای ته سکرول کړئ او لاندې بلاک اضافه کړئ:

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

فایل خوندي کړئ او خدمت بیا پیل کړئ:

$ sudo systemctl restart sshd

اوس تاسو کولی شئ د هر SFTP پیرودونکي له لارې سرور سره وصل شئ، د بیلګې په توګه، د FileZilla له لارې.

نتیجه

  1. اوس تاسو پوهیږئ چې څنګه نوي لارښودونه رامینځته کړئ او په ورته سرور کې ستاسو د ویب پا toو لپاره مجازی کوربه تنظیم کړئ.
  2. تاسو کولی شئ په اسانۍ سره اړین SSL سندونه جوړ کړئ - دا وړیا دي، او دوی به په اتوماتيک ډول تازه شي.
  3. تاسو کولی شئ په اسانۍ سره د پیژندل شوي phpMyAdmin له لارې د MySQL ډیټابیس سره کار وکړئ.
  4. د نوي SFTP حسابونو رامینځته کول او د لاسرسي حقونو تنظیم کول ډیرې هڅې ته اړتیا نلري. دا ډول حسابونه د دریمې ډلې ویب پراختیا کونکو او د سایټ مدیرانو ته لیږدول کیدی شي.
  5. مه هیروئ چې په منظم ډول سیسټم تازه کړئ، او موږ د بیک اپ جوړولو وړاندیز هم کوو - په MCS کې تاسو کولی شئ په یو کلیک سره د ټول سیسټم "سنیپ شاټونه" واخلئ، او بیا، که اړتیا وي، ټول انځورونه پیل کړئ.

کارول شوي سرچینې چې ممکن ګټور وي:

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

په لاره کې، دلته تاسو کولی شئ په VC کې ولولئ چې څنګه زموږ بنسټ د MCS کلاوډ پراساس د یتیمانو لپاره آنلاین زده کړې لپاره پلیټ فارم ځای په ځای کړی.

سرچینه: www.habr.com

Add a comment