سرور مجازی

  • ۰
  • ۰

Let’s Encrypt یک مجوز صدور گواهینامه (CA) است که روشی آسان برای به دست آوردن و نصب مجوزهای رایگان TLS / SSL فراهم می کند ، از این طریق HTTPS رمزگذاری شده را روی سرورهای وب فعال می کند. در واقع با ارائه یک کلاینت نرم افزاری ، Certbot ، که سعی در خودکارسازی اکثر مراحل لازم میکند ، فرایند را ساده می کند. در حال حاضر ، کل مراحل اخذ و نصب گواهینامه هم در Apache و هم در Nginx کاملا به صورت اتوماتیک انجام می شود.
در این آموزش از Certbot برای دریافت گواهینامه رایگان SSL برای Apache روی Debian 10 استفاده می کنید و گواهی خود را برای تمدید خودکار تنظیم می کنید.
در این آموزش به جای فایل پیکربندی پیش فرض از یک فایل میزبان مجازی Apache جداگانه استفاده خواهد شد. توصیه می کنیم برای هر دامنه فایل های جدید میزبان مجازی Apache ایجاد کنید زیرا این امر به جلوگیری از اشتباهات رایج کمک می کند و فایل های پیش فرض را به عنوان پیکربندی برگشت پذیر حفظ می کند.
پیش نیازها
برای دنبال کردن این آموزش ، به موارد زیر نیاز دارید:
• یک سرور Debian 10 که با دنبال کردن راهنمای ستاپ اولیه سرور برای Debian 10 تنظیم شده و شامل یک کاربر غیر root با امتیازات sudo و فایروال باشد.
• نام دامنه کاملاً ثبت شده. در این آموزش ، از your_domain به عنوان نمونه استفاده می شود. می توانید نام دامنه را در Namecheap خریداری کنید ، یکی از آنها را به صورت رایگان در Freenom دریافت کنید ، یا از ثبت دامنه مورد نظر خود استفاده کنید.
• هر دو فایل DNS زیر که برای سرور شما تنظیم شده اند. برای انجام این کار ، می توانید دستورالعمل های اضافه کردن دامنه ها و سپس دستورالعمل های ایجاد رکوردهای DNS را دنبال کنید.
o یک رکورد A با your_domain که به آدرس IP عمومی سرور شما اشاره کند.
o یک رکورد A با www.your_domain که به آدرس IP عمومی سرور شما اشاره کند.
• Apache که با دنبال کردن نحوه نصب Apache در Debian 10 نصب شده باشد. مطمئن شوید که یک فایل میزبان مجازی برای دامنه خود تنظیم کرده اید. در این آموزش از /etc/apache2/sites-available/your_domain.conf به عنوان نمونه استفاده می شود.
مرحله 1 – نصب Certbot
اولین قدم برای استفاده از Let’s Encrypt جهت دریافت گواهینامه SSL ، نصب نرم افزار Certbot در سرور شماست.
در حال حاضر ، Certbot به طور پیش فرض از مخازن نرم افزار Debian در دسترس نیست. برای دانلود نرم افزار با استفاده از apt ، باید مخازن backport را به فایل Source.list خود اضافه کنید که apt به دنبال منابع بسته میباشد. backport ها بسته هایی از تست دبیان و توزیع های ناپایدار هستند که دوباره کامپایل می شوند بنابراین بدون کتابخانه های جدید در توزیع های دبیان پایدار اجرا می شوند.
برای اضافه کردن مخزن backports ، فایل sources.list را در دیرکتوری / etc / apt / خود باز کنید (یا ایجاد کنید):
$ sudo nano /etc/apt/sources.list

در انتهای فایل خط زیر را اضافه کنید:
/etc/apt/sources.list.d/sources.list
. . .
deb http://mirrors.vpsgol.com/debian buster-backports main
deb-src http://mirrors.vpsgol.com/debian buster-backports main
deb http://ftp.debian.org/debian buster-backports main

شامل بسته های اصلی می باشد که سازگار با دستورالعمل های نرم افزار رایگان Debian (DFSG) و همچنین مولفه های non-free و contrib هستند که خود یا مطابق DFSG نیستند و یا متعلقاتی در این دسته دارند.
فایل را با فشار دادن CTRL + X ، Y ، سپس enter ، ذخیره کرده و ببندید ، سپس لیست بسته های خود را به روز کنید:
$ sudo apt update

سپس Certbot را با دستور زیر نصب کنید. توجه داشته باشید که گزینه -t به apt میگوید که با جستجوی مخزن backports که اخیراً اضافه کردید به دنبال بسته باشد:
$ sudo apt install python-certbot-apache -t buster-backports

Certbot اکنون آماده استفاده است اما برای اینکه SSL برای Apache پیکربندی شود ، باید تأیید کنیم که Apache به درستی پیکربندی شده است.
مرحله 2 – تنظیم گواهی SSL
Certbot باید بتواند میزبان مجازی صحیح را در پیکربندی Apache شما پیدا کند تا SSL را به صورت خودکار پیکربندی کند. به طور خاص ، این کار را با جستجوی یک دستورالعمل ServerName انجام می دهد که با دامنه ای مطابق است که میخواهید برای آن مجوز بگیرید.
اگر مرحله آموزش میزبان مجازی را در آموزش نصب Apache دنبال کردید ، باید یک بلوک VirtualHost برای دامنه خود در /etc/apache2/sites-available/your_domain.conf با دستورالعمل ServerName که قبلاً به طور مناسب تنظیم شده است، داشته باشید.
برای بررسی ، فایل میزبان مجازی را برای دامنه خود با استفاده از nano یا ویرایشگر متن مورد علاقه خود باز کنید:
$ sudo nano /etc/apache2/sites-available/your_domain.conf

خط ServerName موجود را پیدا کنید. باید مانند این به نظر برسد و نام دامنه شما به جای your_domain قرار بگیرد:
/etc/apache2/sites-available/your_domain.conf

ServerName your_domain;

اگر قبلاً این کار را انجام نداده اید ، دستورالعمل ServerName را به روز کنید تا به نام دامنه شما اشاره کنید. سپس فایل را ذخیره کنید ، از ویرایشگر خود خارج شوید و ترکیب ویرایش های پیکربندی خود را تأیید کنید:
$ sudo apache2ctl configtest

اگر خطایی در نحو وجود نداشته باشد ، آن را در خروجی خود مشاهده خواهید کرد:
Output
Syntax OK

اگر خطایی رخ داد ، فایل میزبان مجازی را مجدداً باز کنید و هرگونه اشتباه تایپی یا کاراکتر جا افتاده را بررسی کنید. پس از اینکه ترکیب فایل پیکربندی شما صحیح شد ، Apache را مجدد لود کنید تا پیکربندی جدید بارگیری شود:
sudo systemctl reload apache2

Certbot اکنون می تواند بلوک صحیح VirtualHost را پیدا کرده و آن را به روز کند.
در مرحله بعد ، بیایید فایروال را به روز کنیم تا امکان ترافیک HTTPS را بدهیم.
مرحله 3 – اجازه دادن به HTTPS از طریق فایروال
اگر فایروال ufw را فعال کرده باشید ، همانطور که توسط راهنماهای پیش نیاز توصیه شده است ، برای تنظیم ترافیک HTTPS ، باید تنظیماتی را انجام دهید. خوشبختانه ، وقتی روی Debian نصب شده باشد ، ufw با چند پروفایل بسته بندی می شود که به ساده کردن روند تغییر قوانین فایروال برای ترافیک HTTP و HTTPS کمک می کند.
با تایپ دستور زیر می توانید تنظیم فعلی را مشاهده کنید:
$ sudo ufw status

اگر از مرحله 2 راهنمای ما در مورد چگونگی نصب Apache در Debian 10 استفاده کرده باشید، خروجی دستور اینگونه خواهد بود ، نشان می دهد که فقط ترافیک HTTP به سرور وب مجاز است:
Output
Status: active

To Action From
— —— —-
OpenSSH ALLOW Anywhere
WWW ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
WWW (v6) ALLOW Anywhere (v6)

برای اجزاه ترافیک HTTPS بیشتر، به پروفایل “WWW Full” مجوز بدهید و بخش اضافی “WWW” را حذف کنید:
$ sudo ufw allow ‘WWW Full’

$ sudo ufw delete allow ‘WWW’

وضعیت شما اکنون باید به این شکل باشد:
$ sudo ufw status

Output
Status: active

To Action From
— —— —-
OpenSSH ALLOW Anywhere
WWW Full ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
WWW Full (v6) ALLOW Anywhere (v6)

سپس ، بیایید Certbot را اجرا کنیم و گواهینامه هایمان را دریافت کنیم.
مرحله 4 – اخذ گواهینامه SSL
Certbot روشهای مختلفی برای گرفتن گواهینامه های SSL از طریق افزونه ها ارائه می دهد. افزونه Apache از تنظیم مجدد Apache و بارگیری مجدد تنظیمات در صورت لزوم مراقبت خواهد کرد. برای استفاده از این افزونه ، دستور زیر را تایپ کنید:
$ sudo certbot –apache -d your_domain -d www.your_domain

این کار Certbot را با افزونه –apache با استفاده از -d برای مشخص کردن نام هایی که معتبر آن هستند اجرا میکند.
اگر این اولین بار است که Certbot را اجرا میکنید ، از شما خواسته می شود که آدرس ایمیل را وارد کنید و با شرایط سرویس ها موافقت کنید. علاوه بر این ، از شما سؤال خواهد کرد که آیا می خواهید آدرس ایمیل خود را با بنیاد الکترونیکی Frontier ، یک سازمان غیرانتفاعی که از حقوق دیجیتال دفاع می کند و همچنین سازنده Certbot است به اشتراک بگذارید یا خیر. برای اشتراک آدرس ایمیل Y و برای رد این اعلان N را وارد کنید.
بعد از انجام این کار ، certbot با سرور Let’S Encrypt ارتباط برقرار می کند ، سپس برای تأیید اینکه دامنه مورد نظر خود را کنترل می کنید ، یک چالش اجرا کنید.
اگر موفقیت آمیز باشد ، certbot از شما می پرسد که چگونه می خواهید تنظیمات HTTPS خود را پیکربندی کنید:
Output
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):

گزینه خود را انتخاب کنید و سپس ENTER بزنید. پیکربندی به طور خودکار به روز می شود ، و Apache برای انتخاب تنظیمات جدید مجدد لود می شود. certbot با پیغامی همراه خواهد بود که به شما می گوید روند موفقیت آمیز بوده و گواهی نامه های شما در کجا ذخیره شده است:
Output
IMPORTANT NOTES:
– Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/your_domain/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/your_domain/privkey.pem
Your cert will expire on 2019-10-20. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the “certonly” option. To non-interactively renew *all* of
your certificates, run “certbot renew”
– Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
– If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let’s Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

گواهینامه های شما دانلود ، نصب و لود می شوند. سعی کنید وب سایت خود را با استفاده از https: // مجدد لود کنید و به نشانگر امنیتی مرورگر خود توجه کنید. باید نشان دهد که سایت به طور صحیح ایمن است ، معمولاً با نماد قفل سبز انجام میشود. اگر سرور خود را با استفاده از SSL Labs Server Test آزمایش کنید ، درجه A دریافت می کند.
بیایید با آزمایش روند تجدید کار را به پایان برسانیم.
مرحله 5 – تأیید تمدید خودکار Certbot
گواهی های Let’s Encrypt فقط برای نود روز اعتبار دارند. این امر برای ترغیب کاربران به اتوماسیون کردن فرایند تجدید گواهینامه میباشد. بسته certbot که نصب کردیم با اضافه کردن یک اسکریپت تجدید به /etc/cron.d از این امر مراقبت می کند. این اسکریپت روزانه دو بار اجرا می شود و به طور خودکار هر مدرکی را که کمتر از سی روز از انقضای آن مانده ، تمدید می کند.
برای آزمایش فرایند تجدید ، می توانید با استفاده از certbot این دستور را اجرا کنید:
$ sudo certbot renew –dry-run

اگر خطایی نمی بینید ، همه تنظیمات انجام شده است. در صورت لزوم ، Certbot گواهی های شما را تمدید کرده و Apache را مجدد لود می کند تا تغییرات را اعمال کند. اگر فرایند تمدید خودکار زمانی از کار نافتد ، Let’s Encrypt پیامی را به ایمیلی که مشخص کرده اید ، ارسال می کند و به شما هشدار می دهید که گواهی شما رو به پایان است.
نتیجه
در این آموزش ، کلاینت lets Encrypt certbot را نصب کردید ، گواهینامه های SSL را برای دامنه خود دانلود کردید ، Apache را برای استفاده از این گواهینامه ها پیکربندی کرده و تمدید خودکار گواهی نامه را فعال نمودید. اگر سؤال دیگری در مورد استفاده از Certbot دارید ، مراجعه به مطالب مربوطه آنها توصیه میشود.

 

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

(CA) Certificate Authority  یک نهاد مسئول صدور گواهینامه های دیجیتال برای تأیید هویت در اینترنت است. اگرچه CA های عمومی یک انتخاب محبوب برای تأیید اعتبار وب سایت ها و سایر خدماتی هستند که به عموم مردم ارائه می شود ، CA های خصوصی معمولاً برای گروه های بسته و خدمات خصوصی استفاده می شوند.
ایجاد یک تایید اعتبار مجاز خصوصی برای شما امکان پیکربندی ، آزمایش و اجرای برنامه هایی را می دهد که نیاز به اتصالات رمزگذاری شده بین مشتری و سرور مجازی دارند. با داشتن یک CA خصوصی ، می توانید برای کاربران ، سرور مجازی ها یا برنامه ها و خدمات فردی در زیرساخت های خود گواهینامه صادر کنید.
برخی از نمونه برنامه های لینوکس که از CA خصوصی خود استفاده می کنند OpenVPN و Puppet هستند. همچنین می توانید سرور مجازی وب خود را برای استفاده از گواهینامه های صادر شده توسط یک CA خصوصی به منظور ایجاد محیط های توسعه و مرحله بندی با سرور مجازی های تولیدی که از TLS برای رمزگذاری اتصالات استفاده می کنند ، پیکربندی کنید.
در این راهنما ، می آموزیم که چگونه یک تایید اعتبار مجاز خصوصی را در سرور مجازی CentOS 8 تنظیم کنیم و نحوه تولید و امضاء یک گواهی آزمایشی با استفاده از CA جدید خود را میاموزید. همچنین یاد خواهید گرفت که چگونه می توانید گواهی عمومی سرور مجازی CA را در فروشگاه گواهینامه سیستم عامل خود وارد کنید تا بتوانید زنجیره اعتماد بین CA و سرور مجازی های از راه دور یا کاربران را تأیید کنید. در آخر یاد می گیرید که چگونه می توانید گواهی نامه ها را ابطال کنید و یک لیست ابطال مجوز توزیع کنید تا مطمئن شوید تنها کاربران و سیستم های مجاز می توانند از خدماتی استفاده کنند که به CA شما متکی هستند.
پیش نیازها
برای پیروی از این آموزش ، به سرور مجازی CentOS 8 با یک کاربر sudo فعال و غیر ریشه و فایروال تنظیم شده با firewalld نیاز دارید. برای تکمیل تنظیمات می توانید از راهنمای راه اندازی سرور مجازی اولیه با CentOS 8 پیروی کنید.
در این آموزش به این سرور مجازی CA Server گفته خواهد شد.
اطمینان حاصل کنید که CA Server یک سیستم مستقل است. فقط برای ورودی ، امضاء و ابطال درخواست گواهی استفاده می شود. این سرویس نباید خدمات دیگری را اجرا کند ، و در صورت کار نکردن با CA خود ، به صورت آفلاین یا کاملاً خاموش خواهد بود.
نکته: اگر می خواهید درباره امضا و ابطال گواهینامه ها بیاموزید ، آخرین بخش این آموزش اختیاری است. اگر تصمیم گرفتید که مراحل عملی را انجام دهید ، به سرور مجازی دوم CentOS 8 نیاز خواهید داشت یا می توانید از رایانه محلی لینوکس خود که دارای CentOS 8 ، Fedora یا یک مشتق RedHat است ، استفاده کنید.

مرحله 1 – نصب Easy-RSA
اولین کار در این آموزش نصب مجموعه اسکریپت هایeasy-rsa در سرور مجازی CA شما است. easy-rsa ابزاری برای مدیریت مجوز تایید هویت است که شما برای تولید یک کلید خصوصی و گواهی ریشه عمومی از آن استفاده خواهید کرد و سپس از آن برای امضای درخواست مشتری و سرور مجازی هایی که به CA شما اعتماد دارند استفاده خواهید کرد.
بسته easy-rsa به طور پیش فرض در CentOS 8 در دسترس نیست ، بنابراین شما نیاز به فعال کردن بسته های اضافی برای منبع Enterprise Linux (EPEL) دارید. EPEL توسط پروژه Fedora اداره می شود و شامل بسته های غیر استاندارد اما محبوب برای Fedora، CentOS و سایر توزیع های لینوکس است که از قالب بسته RPM استفاده می کنند. به عنوان کاربر sudo غیر ریشه ای که در مراحل اولیه راه اندازی ایجاد کرده اید به سرور مجازی CA خود وارد شوید و دستور زیر را اجرا کنید:
$ sudo dnf install epel-release

از شما خواسته می شود که بسته را دانلود و آن را نصب کنید. y را فشار دهید تا تأیید کنید که می خواهید بسته را نصب کنید.
اکنون بسته ی easy-rsa را نصب کنید ، دوباره در اعلان حاصل y وارد کنید:
$ sudo dnf install easy-rsa

در این مرحله شما همه موارد مورد نیاز خود را تنظیم کرده و آماده استفاده از Easy-RSA هستید. در مرحله بعدی یک زیرساخت کلید عمومی ایجاد می کنید ، و سپس ساخت Certificate Authority را شروع می کنید.
مرحله 2 – تهیه دایرکتوری زیرساخت کلید عمومی
اکنون که easy-rsa را نصب کردید ، زمان آن رسیده است که یک اسکلت زیرساخت کلید عمومی (PKI) را روی سرور مجازی CA ایجاد کنید. اطمینان حاصل کنید که هنوز به عنوان کاربر غیر ریشه خود در سیستم هستید و یک دیرکتوری easy-rsa ایجاد کنید. اطمینان حاصل کنید که برای اجرای هر یک از دستورهای زیر از sudo استفاده نمی کنید ، زیرا کاربر عادی شما باید بدون داشتن امتیاز بالا ، با CA مدیریت و تعامل کند.
$ mkdir ~/easy-rsa

این دستور یک دیرکتوری جدید به نام easy-rsa در پوشه هوم شما ایجاد می کند. ما از این دایرکتوری برای ایجاد پیوندهای نمادین با اشاره به فایل های بسته easy-rsa که در مرحله قبلی نصب کرده ایم استفاده خواهیم کرد. این فایل ها در پوشه / usr / share / easy-rsa / 3 در CA Server قرار دارند.
با دستور ln ، لینک ها را ایجاد کنید:
$ ln -s /usr/share/easy-rsa/3/* ~/easy-rsa/

توجه: در حالی که راهنماهای دیگر ممکن است به شما دستور دهند که فایل های بسته easy-rsa را در دیرکتوری PKI خود کپی کنید ، این آموزش یک رویکرد Symlink را به کار می گیرد. در نتیجه ، هرگونه بروزرسانی در بسته easy-rsa به طور خودکار در اسکریپت های PKI شما منعکس می شود.

برای محدود کردن دسترسی به دیرکتوری جدید PKI ، اطمینان حاصل کنید که فقط مالک می تواند با استفاده از دستور chmod به آن دسترسی داشته باشد:
$ chmod 700 /home/sammy/easy-rsa

سرانجام ، PKI را در دیرکتوری easy-rsa تنظیم کنید:
$ cd ~/easy-rsa

$ ./easyrsa init-pki

Output
init-pki complete; you may now create a CA or requests.
Your newly created PKI dir is: /home/sammy/easy-rsa/pki

پس از تکمیل این بخش دایرکتوری دارید که شامل تمام فایل هایی است که برای ایجاد یک مجوز تایید اعتبار لازم است. در قسمت بعدی کلید خصوصی و مجوز عمومی را برای CA خود ایجاد خواهید کرد.
مرحله 3 – ایجاد یک Certificate Authority
قبل از اینکه بتوانید کلید خصوصی و گواهی نامه CA خود را ایجاد کنید ، باید فایلی به نام vars را با مقادیر پیش فرض ایجاد و پخش کنید. ابتدا وارد دیرکتوری easy-rsa می شوید ، سپس فایل vars را با nano یا ویرایشگر متن مورد نظر خود ایجاد و ویرایش می کنید.
ویرایشگر متن پیش فرض که با CentOS 8 همراه است vi است. vi یک ویرایشگر متن بسیار قدرتمند است ، اما می تواند برای کاربرانی که فاقد تجربه با آن هستند ، تا حدودی خسته کننده باشد. برای تسهیل ویرایش فایل های پیکربندی روی سرور مجازی CentOS 8 خود ، بهتر است ویرایشگر کاربر پسند دیگری مانند nano را نصب کنید:
$ sudo dnf install nano

هنگامی که از شما خواسته می شود nano را نصب کنید y را زده تا مراحل نصب را ادامه دهید. اکنون آماده ویرایش فایل vars هستید:
$ cd ~/easy-rsa

nano vars
پس از باز شدن فایل ، سطرهای زیر را در آن پیست کنید و هر مقدار هایلایت شده را ویرایش کنید تا اطلاعات سازمانی شما را نشان دهد. بخش مهم در اینجا اطمینان از عدم خالی بودن هر یک از مقادیر است:
~/easy-rsa/vars
set_var EASYRSA_REQ_COUNTRY “US”
set_var EASYRSA_REQ_PROVINCE “NewYork”
set_var EASYRSA_REQ_CITY “New York City”
set_var EASYRSA_REQ_ORG “vpsgol
set_var EASYRSA_REQ_EMAIL “admin@example.com”
set_var EASYRSA_REQ_OU “Community”

پس از اتمام ، فایل را ذخیره کنید و ببندید. اگر از nano استفاده می کنید ، می توانید این کار را با فشار دادن CTRL + X ، سپس Y و ENTER برای تأیید انجام دهید. اکنون آماده ساخت CA خود هستید.
برای ایجاد جفت کلید عمومی و خصوصی برای مجوز گواهی خود ، دستور ./easy-rsa را بار دیگر اجرا کنید ، این بار با گزینه build-ca:
$ ./easyrsa build-ca

در خروجی ، چند خط در مورد نسخه OpenSSL مشاهده خواهید کرد و از شما خواسته می شود یک عبارت عبور را برای جفت کلید خود وارد کنید. مطمئن باشید که یک عبارت عبور قوی را انتخاب کرده و در جایی امن آن را یادداشت کنید. شما باید هر بار که میخواهید با CA خود ارتباط برقرار کنید ، عبارت عبور را وارد کنید ، به عنوان مثال برای امضا یا ابطال مجوز.
همچنین از شما خواسته می شود نام معمولی (CN) را برای CA خود تأیید کنید. CN نامی است که برای ارجاع این دستگاه در مفهوم مجوز اختیارات استفاده می شود. می توانید هر سری از کاراکترها را برای نام مشترک CA وارد کنید اما به همین دلیل ، برای سادگی، ENTER را فشار دهید تا نام پیش فرض را بپذیرید.
Output
. . .
Enter New CA Key Passphrase:
Re-Enter New CA Key Passphrase:
. . .
Common Name (eg: your user, host, or server name) [Easy-RSA CA]:

CA creation complete and you may now import and sign cert requests.
Your new CA certificate file for publishing is at:
/home/sammy/easy-rsa/pki/ca.crt

توجه: اگر نمی خواهید هر بار که با CA خود ارتباط برقرار می کنید از شما رمزعبور خواسته شود ، می توانید دستور build-ca را با گزینه nopass اجرا کنید ، مانند این:
$ ./easyrsa build-ca nopass

اکنون شما دو فایل مهم دارید – ~ / easy-rsa / pki / ca.crt و ~ / easy-rsa / pki / private / ca.key – که مؤلفه های عمومی و خصوصی یک مجوز تایید را تشکیل می دهد.
• ca.crt فایل گواهینامه عمومی CA است. کاربران ، سرور مجازی ها و مشتری ها از این گواهی نامه استفاده می کنند تا تأیید کنند که آنها بخشی از همان وب قابل اعتماد هستند. هر کاربر و سرور مجازی ی که از CA شما استفاده می کند ، باید یک نسخه از این فایل را داشته باشد. همه طرفها به گواهی عمومی اعتماد خواهند کرد تا اطمینان حاصل کنند که شخصی در حال جعل سیستم نیست و حمله ای توسط شخص واسط انجام نمی دهد.
• ca.key کلید خصوصی است که CA برای امضای گواهینامه ها برای سرور مجازی ها و مشتری ها استفاده می کند. اگر یک مهاجم به CA شما و به دنبال آن به فایل ca.key شما دسترسی پیدا کند ، باید CA خود را نابود کنید. به همین دلیل فایل ca.key شما فقط باید روی دستگاه CA شما باشد و در حالت ایده آل ، دستگاه CA شما هنگام امضا نکردن درخواست گواهی به عنوان یک اقدام امنیتی اضافی باید به صورت آفلاین نگه داشته شود.
با این کار ، CA شما در جای خود محفوظ و آماده امضای درخواست گواهینامه ، و ابطال گواهینامه ها میباشد.
مرحله 4 – توزیع گواهینامه عمومی Certificate Authority
اکنون CA شما پیکربندی شده و آماده است تا به عنوان یک ریشه اعتماد برای هر سیستمی که می خواهید پیکربندی کنید و از آن استفاده نمایید ، عمل کند. می توانید گواهی CA را به سرور مجازی های OpenVPN ، وب سرور مجازیها ، سرور مجازی های پستی و غیره اضافه کنید. هر کاربر یا سرور مجازی ی که نیاز به تأیید هویت کاربر یا سرور مجازی دیگری در شبکه شما داشته باشد ، باید یک نسخه از فایل ca.crt را به فروشگاه گواهینامه سیستم عامل خود وارد کند.
برای وارد کردن گواهینامه عمومی CA به یک سیستم دیگر لینوکس مانند سرور مجازی دیگر یا یک رایانه محلی ، ابتدا یک نسخه از فایل ca.crt را از سرور مجازی CA خود بگیرید. می توانید از دستور cat برای خروجی آن در یک ترمینال استفاده کنید ، و سپس آن را در یک فایل روی رایانه دوم که وارد کننده گواهینامه است کپی پیست کنید. همچنین می توانید از ابزارهایی مانند scp، rsync برای انتقال فایل بین سیستم ها استفاده کنید. با این وجود ما در این مرحله از کپی پیست با nano استفاده خواهیم کرد زیرا این سیستم بر روی تمام سیستم ها کار می کند.
به عنوان کاربر غیر ریشه خود در CA Server ، دستور زیر را اجرا کنید:
$ cat ~/easy-rsa/pki/ca.crt

خروجی ترمینال شما مشابه زیر خواهد بود:
Output
—–BEGIN CERTIFICATE—–
MIIDSzCCAjOgAwI

AgIUcR9Crsv3FBEujrPZnZnU4nSb5T

MwDQYJKoZIhvcNAQEL
BQAwFjEUMBIGA1UEAw

wLRWFzeS1SU0EgQ0EwHh

cNMjAwMzE4MDMxNjI2WhcNMzAw
. . .
. . .
—–END CERTIFICATE—–

کپی همه چیز ، از جمله خطوط —–BEGIN CERTIFICATE—– و —–END CERTIFICATE—– را کپی کنید.
در سیستم دوم لینوکس از nano یا ویرایشگر متن مورد نظر خود برای باز کردن فایلی به نام /tmp/ca.crt استفاده کنید:
$ nano /tmp/ca.crt

محتویاتی را که به تازگی از سرور مجازی CA کپی کرده اید در ویرایشگر پیست کنید. پس از اتمام ، فایل را ذخیره کنید و ببندید. اگر از نانو استفاده می کنید ، می توانید این کار را با فشار دادن CTRL + X ، سپس Y و ENTER برای تأیید انجام دهید.
اکنون که یک نسخه از ca.crt را در سیستم لینوکس دوم خود دارید ، زمان آن است که گواهی را وارد فروشگاه گواهینامه سیستم عامل خود کنید.
در CentOS ، Fedora یا سایر سیستمهای مشتق شده RedHat لینوکس دستورات زیر را برای وارد کردن گواهینامه اجرا می کند:
CentOS, Fedora, RedHat distributions
$ sudo cp /tmp/ca.crt /etc/pki/ca-trust/source/anchors/

$ update-ca-trust

برای وارد کردن گواهینامه سرور مجازی CA در سیستم مبتنی بر Debian یا Ubuntu ، محتویات فایل را درست مانند مثال قبلی در فایلی به نام /tmp/ca.crt. بر روی سیستم کپی و پیست کنید. در مرحله بعد گواهینامه را در /usr/local/share/ca-certificates/ کپی کنید ، سپس دستور update-ca-certificates را اجرا کنید.
Debian and Ubuntu derived distributions
$ sudo cp /tmp/ca.crt /usr/local/share/ca-certificates/

$ update-ca-certificates

اکنون سیستم دوم لینوکس شما به گواهینامه هایی که توسط سرور مجازی CA امضا شده است اعتماد خواهد کرد.
توجه: اگر از CA خود با سرور مجازی های وب استفاده می کنید و از Firefox به عنوان یک مرورگر استفاده می نمایید ، لازم است مجوز عمومی ca.crt را به طور مستقیم به Firefox وارد کنید. Firefox از فروشگاه مجوز سیستم عامل محلی استفاده نمی کند. برای جزئیات بیشتر در مورد چگونگی افزودن گواهی نامه CA به Firefox ، لطفاً این مقاله پشتیبانی را از موزیلا در مورد تنظیم مجوزهای تایید هویت (CA) در Firefox ببینید.
اگر از CA خود برای ادغام با محیط ویندوز یا رایانه های دسکتاپ استفاده می کنید ، لطفاً نحوه استفاده از certutil.exe برای نصب یک گواهی CA را مشاهده کنید.
اگر از این آموزش به عنوان پیش نیاز آموزش دیگری استفاده می کنید ، یا با نحوه ثبت نام و ابطال گواهینامه ها آشنا هستید ، می توانید در اینجا متوقف شوید. اگر می خواهید در مورد نحوه ثبت نام و ابطال گواهینامه ها اطلاعات بیشتری کسب کنید ، در قسمت اختیاری زیر هر فرآیند با جزئیات توضیح داده خواهد شد.
(اختیاری) – ایجاد درخواست های مربوط به امضای گواهی و ابطال مجوزها
بخش های بعدی این آموزش اختیاری هستند. اگر تمام مراحل قبلی را انجام داده اید ، باید یک مجوز گواهی کاملاً پیکربندی شده و کاربردی داشته باشید که بتوانید به عنوان پیش نیاز سایر آموزش ها از آنها استفاده کنید. می توانید فایل ca.crt CA خود را وارد کرده و گواهینامه هایی را که توسط CA شما امضا شده است تأیید کنید.
اگر می خواهید در مورد نحوه امضای درخواست گواهینامه و چگونگی ابطال گواهینامه ها تمرین کرده و اطلاع پیدا کنید ، در این بخش های اختیاری نحوه عملکرد هر دو فرآیند توضیح داده می شود.
(اختیاری) – ایجاد و امضای درخواست گواهی تمرینی
اکنون که یک CA آماده استفاده دارید ، می توانید با تهیه یک کلید خصوصی و درخواست گواهینامه برای آشنایی با روند امضا و توزیع ، تمرین کنید.
یک درخواست امضای گواهی (CSR) شامل سه بخش است: کلید عمومی ، شناسایی اطلاعات مربوط به سیستم درخواست کننده ، و امضای خود درخواست ، که با استفاده از کلید خصوصی طرف درخواست کننده ایجاد می شود. کلید خصوصی مخفی نگه داشته می شود و برای رمزگذاری اطلاعات استفاده می شود که هر کس دارای مجوز عمومی امضا شده باشد می تواند رمزگشایی کند.
مراحل زیر بر روی سیستم دوم لینوکس شما که دارای CentOS ، Fedora یا توزیع دیگر لینوکس RedHat است ، اجرا می شود. این می تواند یک سرور مجازی از راه دور دیگر یا یک دستگاه محلی لینوکس مانند لپ تاپ یا رایانه دستکتاپ باشد. از آنجا که easy-rsa به طور پیش فرض در همه سیستم ها در دسترس نیست ، ما از ابزار Openssl برای ایجاد یک کلید خصوصی و مجوز استفاده خواهیم کرد.
Openssl معمولاً به طور پیش فرض در اکثر توزیع های لینوکس نصب می شود ، اما فقط برای اطمینان ، دستور زیر را روی سیستم خود اجرا کنید:
$ sudo dnf install openssl

هنگامی که از شما خواسته می شود openssl را وارد کنید y را برای ادامه مراحل نصب وارد کنید. اکنون آماده هستید تا یک CSR عملی را با Openssl ایجاد کنید.
اولین قدمی که باید برای ایجاد CSR تکمیل کنید ، تولید یک کلید خصوصی است. برای ایجاد یک کلید خصوصی با استفاده از Openssl ، یک دایرکتوری practice-csr ایجاد کرده و سپس یک کلید را در داخل آن ایجاد کنید. ما این درخواست را برای سرور مجازی تخیلی به نام sammy-server ایجاد خواهیم کرد ، برخلاف ایجاد گواهی که برای شناسایی کاربر یا CA دیگر استفاده می شود.
$ mkdir ~/practice-csr

$ cd ~/practice-csr

$ openssl genrsa -out sammy-server.key

Output
Generating RSA private key, 2048 bit long modulus (2 primes)
. . .
. . .
e is 65537 (0x010001)

اکنون که یک کلید خصوصی دارید، دوباره با استفاده از ابزار Openssl می توانید CSR مربوطه را ایجاد کنید. از شما خواسته می شود تعدادی از فیلدها مانند کشور ، ایالت و شهر را پر کنید. اگر می خواهید یک زمینه را خالی بگذارید ، می توانید . وارد کنید، اما توجه داشته باشید که اگر این یک CSR واقعی بود ، بهتر است از مقادیر صحیح برای مکان و سازمان خود استفاده کنید:
$ openssl req -new -key sammy-server.key -out sammy-server.req

Output
. . .
—–
Country Name (2 letter code) [XX]:US
State or Province Name (full name) []:New York
Locality Name (eg, city) [Default City]:New York City
Organization Name (eg, company) [Default Company Ltd]:vpsgol
Organizational Unit Name (eg, section) []:Community
Common Name (eg, your name or your server’s hostname) []:sammy-server
Email Address []:

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

اگر دوست دارید بجای اعلان تعاملی ، آن مقادیر را به صورت خودکار به عنوان بخشی از فراخوانی Openssl اضافه کنید ، می توانید آرگومان -subj را به OpenSSL منتقل کنید. حتماً مقادیر هایلایت شده را ویرایش کنید تا با مکان تمرین ، سازمان و نام سرور مجازی شما مطابقت داشته باشد:
$ openssl req -new -key sammy-server.key -out sammy-server.req -subj \

$ /C=US/ST=New\ York/L=New\ York\ City/O=vpsgol/OU=Community/CN=sammy-server

برای تأیید محتویات CSR ، می توانید یک فایل درخواست با Openssl را بخوانید و فلیدهای داخل را بررسی کنید:
$ openssl req -in sammy-server.req -noout -subject

Output
subject=C = US, ST = New York, L = New York City, O = vpsgol, OU = Community, CN = sammy-s

هنگامی که از موضوع درخواست گواهینامه تمرین خود راضی هستید ، فایل sammy-server.req را با استفاده از scp در سرور مجازی CA خود کپی کنید:
در این مرحله شما یک درخواست امضای گواهی را برای سرور مجازی تخیلی به نام sammy-server ایجاد کردید. در دنیای واقعی ، این درخواست می تواند چیزی مانند یک وب سرور مجازی در حال توسعه یا مرحله بندی باشد که برای آزمایش به یک گواهینامه TLS نیاز دارد. یا می تواند از یک سرور مجازی OpenVPN که متقاضی صدور گواهینامه است ، نشات بگیرد تا کاربران بتوانند به یک VPN وصل شوند. در مرحله بعدی ، ما با استفاده از کلید خصوصی سرور مجازی CA به امضای درخواست امضای گواهینامه می پردازیم.
)اختیاری) – امضای CSR
در مرحله قبل ، یک درخواست گواهی عملی و کلید برای سرور مجازی تخیلی ایجاد کردید. آن را در دایرکتوری / tmp روی سرور مجازی CA خود کپی کرده اید ، که از فرایندی تقلید میکند که شما استفاده میکنید. آن هم در صورتی که مشتری یا سرور مجازی های واقعی برای شما درخواست امضای CSR ارسال کنند،.
در ادامه سناریوی تخیلی ، اکنون سرور مجازی CA نیاز به وارد کردن گواهی تمرینی و امضای آن دارد. هنگامی که یک درخواست گواهی توسط CA تأیید شود و دوباره به یک سرور مجازی ارسال شود ، مشتریانی که به اختیارات گواهینامه اعتماد دارند نیز می توانند به گواهی تازه صادر شده اعتماد کنند.
از آنجا که ما در PKI CA که در آن ابزار easy-rsa در دسترس است فعالیت خواهیم کرد ، مراحل امضا از ابزار easy-rsa برای آسان تر کردن کارها استفاده خواهد کرد ، برخلاف استفاده مستقیم از Openssl مانند آنچه در مثال قبلی انجام دادیم.
اولین قدم برای امضای CSR تخیلی وارد کردن درخواست گواهینامه با استفاده از اسکریپت easy-rsa است:
$ cd ~/easy-rsa

$ ./easyrsa import-req /tmp/sammy-server.req sammy-server

Output
. . .
The request has been successfully imported with a short name of: sammy-server
You may now use this name to perform signing operations on this request.

اکنون می توانید با اجرای اسکریپت easyrsa با گزینه sign-req ، درخواست را امضا کنید و به دنبال آن نوع درخواست و نام مشترک که در CSR گنجانده شده است. نوع درخواست می تواند client ، server یا ca مختلف باشد. از آنجا که ما با یک گواهینامه برای سرور مجازی تخیلی تمرین می کنیم ، حتما از نوع درخواست server  استفاده کنید:
$ ./easyrsa sign-req server sammy-server

در خروجی ، از شما خواسته می شود که تأیید کنید که این درخواست از یک منبع قابل اعتماد تهیه شده است. برای تأیید ، yes را تایپ کرده و سپس ENTER را فشار دهید:
Output
You are about to sign the following certificate.
Please check over the details shown below for accuracy. Note that this request
has not been cryptographically verified. Please be sure it came from a trusted
source or that you have verified the request checksum with the sender.

Request subject, to be signed as a server certificate for 3650 days:

subject=
commonName = sammy-server

Type the word ‘yes’ to continue, or any other input to abort.
Confirm request details: yes
. . .
Certificate created at: /home/sammy/easy-rsa/pki/issued/sammy-server.crt

اگر کلید CA خود را رمزگذاری کردید ، در این مرحله از شما خواسته می شود رمزعبور خود را وارد کنید.
با اتمام این مراحل ، شما با استفاده از کلید خصوصی سرور مجازی CA در /home/sammy/easy-rsa/pki/private/ca.key ، sammy-server.req CSR را امضا کردید. فایل sammy-server.crt حاصل ، حاوی کلید رمزگذاری عمومی سرور مجازی تمرینی و همچنین امضای جدیدی از سرور مجازی CA است. نکته امضا این است که به هر کسی که به CA اعتماد دارد می گوید که می توانند به گواهی سرور مجازی sammy نیز اعتماد کنند.
اگر این درخواست برای سرور مجازی واقعی مانند سرور مجازی وب یا سرور مجازی VPN باشد ، آخرین مرحله روی سرور مجازی CA توزیع فایل های جدید sammy-server.crt و ca.crt از سرور مجازی CA به سرور مجازی از راه دوری است که درخواست CSR را داده است:
$ scp pki/issued/sammy-server.crt sammy@your_server_ip:/tmp

$ scp pki/ca.crt sammy@your_server_ip:/tmp

در این مرحله ، می توانید از گواهی صادر شده با چیزی مانند سرور مجازی وب ، VPN ، ابزار مدیریت پیکربندی ، سیستم پایگاه داده یا برای اهداف تأیید اعتبار مشتری استفاده کنید.
(اختیاری) – ابطال مجوز
گاهی اوقات ، برای جلوگیری از استفاده کاربر یا سرور مجازی ، ممکن است نیاز به ابطال مجوز باشد. شاید لپ تاپ شخصی به سرقت رفته باشد ، سرور مجازی وب به خطر بیفتد یا یک کارمند یا پیمانکار از سازمان شما خارج شده باشد.
برای ابطال مجوز ، روند کلی این مراحل را دنبال کنید:
1- گواهی را با دستور ./easyrsa revoke client_name باطل کنید.
2- با دستور ./easyrsa gen-crl یک CRL جدید ایجاد کنید.
3- فایل crl.pem به روز شده را به سرور مجازی یا سرور مجازی هایی که به CA شما متکی هستند منتقل کنید و در آن سیستم ها آن را به دایرکتوری یا دایرکتوری های مورد نیاز برای برنامه هایی که به آن ارجاع میدهند ، کپی کنید.
4- سرویس هایی را که از CA و فایل CRL استفاده می کنند را مجدداً راه اندازی کنید.
می توانید از این فرآیند برای ابطال هرگونه گواهی که قبلاً در هر زمان صادر کرده اید استفاده کنید. در بخش های بعدی به تفصیل در مورد هر بخش توضیح خواهیم داد ، و از دستور لغو شروع میکنیم.
ابطال یک گواهی
برای ابطال مجوز ، به دیرکتوری easy-rsa در سرور مجازی CA خود بروید:
$
cd ~/easy-rsa

در مرحله بعد ، اسکریپت easyrsa را با گزینه revoke اجرا کنید ، و سپس نام مشتری را که می خواهید لغو کنید ، وارد کنید. پس از مثال عملی فوق ، نام مشترک معمول sammy-server است:
$ ./easyrsa revoke sammy-server

با این کار از شما خواسته می شود با وارد کردن بله ، این لغو را تایید کنید:
Output
Please confirm you wish to revoke the certificate with the following subject:

subject=
commonName = sammy-server

Type the word ‘yes’ to continue, or any other input to abort.
Continue with revocation: yes
. . .
Revoking Certificate 8348B3F146A765581946040D5C4D590A
. . .
به مقدار هایلایت شده در خط Revoking Certificate توجه کنید. این مقدار شماره سریال منحصر به فرد گواهی است که ابطال می شود. اگر می خواهید لیست ابطال را در آخرین مرحله از این بخش بررسی کنید تا تأیید کنید که گواهی در آن قرار دارد ، به این مقدار نیاز خواهید داشت.
پس از تأیید عمل ، CA گواهی را ابطال می کند. با این حال ، سیستم های از راه دور که به CA متکی هستند ، هیچ راهی برای بررسی اینکه آیا گواهینامه ای ابطال شده است یا خیر، ندارند. کاربران و سرور مجازی ها تا زمانی که لیست ابطال مجوز گواهی CA (CRL) در کلیه سیستمهایی که به CA متکی هستند توزیع میشود، قادر خواهند بود از این گواهی استفاده کنند.
در مرحله بعد ، شما یک CRL تولید می کنید یا یک فایل crl.pem موجود را به روز می کنید.
ایجاد یک لیست ابطال مجوزها
اکنون که یک مجوز را ابطال کرده اید ، لازم است لیستی از گواهی های ابطال شده در سرور مجازی CA خود را به روز کنید. هنگامی که یک لیست ابطال به روز شده دارید ، می توانید بگویید که کاربران و سیستم های دارای گواهی معتبر در CA شما هستند.
برای تولید CRL ، دستور easy-rsa را با گزینه gen-crl در حالی که هنوز در دیرکتوری ~ / easy-rsa هستید اجرا کنید:
$ ./easyrsa gen-crl

اگر هنگام ایجاد فایل ca.key از یک عبارت عبور استفاده کرده اید ، از شما خواسته می شود که آن را وارد کنید. دستور gen-crl یک فایل با نام crl.pem تولید می کند و حاوی لیست به روز شده گواهی های ابطال شده برای آن CA است.
در مرحله بعد باید هر بار که دستور gen-crl را اجرا میکنید، فایل crl.pem به روز شده را به کلیه سرور مجازی ها و مشتریانی که به این CA متکی هستند منتقل کنید. در غیر این صورت ، مشتریان و سیستم ها همچنان می توانند به خدمات و سیستمهایی که از CA شما استفاده می کنند ، دسترسی پیدا کنند ، زیرا این سرویس ها باید درباره وضعیت ابطال شده گواهی اطلاعات داشته باشند.
انتقال لیست ابطال مجوزها
اکنون که CRL را در سرور مجازی CA خود ایجاد کرده اید ، باید آن را به سیستم های از راه دور که به CA شما متکی هستند منتقل کنید. برای انتقال این فایل به سرور مجازی های خود ، از دستور scp استفاده کنید.
توجه: این آموزش نحوه تولید و توزیع دستی CRL را توضیح می دهد. در حالی که روش های قوی تر و خودکارتری برای توزیع و بررسی لیست های ابطال مانند OCSP-Stapling وجود دارد ، اما پیکربندی این روشها خارج از محدوده این مقاله است.
اطمینان حاصل کنید که به عنوان کاربر غیر ریشه خود وارد سرور مجازی CA خود شده اید و دستور زیر را اجرا کرده اید، فقط اینکه به جای IP_server_ip ، نام IP DNS یا سرور مجازی خود را جایگزین کنید:
$ scp ~/easy-rsa/pki/crl.pem sammy@your_server_ip:/tmp

اکنون که فایل روی سیستم از راه دور قرار دارد ، آخرین مرحله به روزرسانی تمام سرویس ها با نسخه جدید لیست ابطال است.
به روزرسانی خدماتی که از CRL پشتیبانی می کنند
لیست کردن مراحل مورد نیاز برای به روزرسانی خدماتی که از فایل crl.pem استفاده می کنند فراتر از محدوده این آموزش است. به طور کلی باید فایل crl.pem را در محلی که سرویس انتظار دارد کپی کنید و سپس با استفاده از systemctl مجدداً آن را راه اندازی کنید.
پس از به روزرسانی سرویس های خود با فایل جدید crl.pem ، سرویس های شما قادر خواهند بود اتصالات مشتری یا سرور مجازی هایی را که از گواهی ابطال شده استفاده می کنند را رد کنند.
بررسی و تأیید محتوای CRL
اگر می خواهید یک فایل CRL را بررسی کنید ، به عنوان مثال برای تأیید لیستی از گواهینامه های ابطال شده ، از دستور Openssl زیر در دیرکتوری راهنمای easy-rsa در سرور مجازی CA خود استفاده کنید:
$ cd ~/easy-rsa

$ openssl crl -in pki/crl.pem -noout -text

همچنین می توانید این دستور را روی هر سرور مجازی یا سیستمی که ابزار Openssl را با یک نسخه از فایل crl.pem نصب کرده اجرا کنید. به عنوان مثال ، اگر فایل crl.pem را به سیستم دوم خود منتقل کردید و می خواهید تأیید کنید که گواهی sammy-server ابطال شده است ، می توانید یک دستور Openssl را مانند زیر استفاده کنید، فقط شماره سریالی که قبلا در هنگام ابطال مجوز یادداشت کردید را به جای شماره سریال هایلایت شده در این جا قرار دهید:
$ openssl crl -in /tmp/crl.pem -noout -text |grep -A 1 8348B3F146A765581946040D5C4D590A

Output
Serial Number: 8348B3F146A765581946040D5C4D590A
Revocation Date: Apr 1 20:48:02 2020 GMT

توجه کنید که چگونه دستور grep برای بررسی شماره سریال منحصر به فرد مورد نظر در مرحله ابطال مورد استفاده قرار می گیرد. اکنون می توانید محتویات لیست ابطال مجوزهای خود را در مورد هر سیستمی که به آن متکی است برای محدود کردن دسترسی به کاربران و خدمات ، تأیید کنید.
نتیجه
در این آموزش شما با استفاده از بسته Easy-RSA بر روی یک سرور مجازی مستقل CentOS 8 یک مجوز خصوصی ایجاد کرده اید. آموختید که چگونه مدل اعتماد بین طرفینی که به CA اعتماد می کنند ، کار می کند. همچنین یک درخواست ثبت نام گواهینامه (CSR) را برای یک سرور مجازی تمرینی ایجاد و امضا کردید ، و سپس یاد گرفتید که چگونه یک گواهی را لغو کنید. سرانجام ، آموختید که چگونه یک لیست ابطال مجوز (CRL) برای هر سیستمی که به CA شما متکی است را تولید و توزیع کنید تا اطمینان حاصل شود که کاربران یا سرور مجازی هایی که نباید به خدمات دسترسی داشته باشند از انجام این کار منع می شوند.
اکنون می توانید مجوزهایی را برای کاربران صادر کرده و از آنها با خدماتی مانند OpenVPN استفاده کنید. همچنین می توانید از CA خود برای پیکربندی توسعه و تنظیم سرور مجازی های وب با گواهی نامه ها برای تأمین محیط های غیر تولیدی استفاده کنید. استفاده از CA با گواهینامه های TLS در حین توسعه می تواند اطمینان حاصل کند که کد و محیط شما تا حد ممکن با محیط تولید شما مطابقت دارند.
اگر می خواهید در مورد نحوه استفاده از OpenSSL بیشتر بیاموزید ، ملزومات OpenSSL ما: کار با گواهی های SSL ، کلیدهای خصوصی و آموزش CSR اطلاعات اضافی زیادی دارند که به شما کمک می کند تا با اصول OpenSSL بیشتر آشنا شوید.

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

MariaDB یک سیستم مدیریت پایگاه داده منبع باز است که معمولاً به عنوان جایگزینی برای بخش MySQL محبوب ترین LAMP (Linux ، Apache ، MySQL ، PHP / Python / Perl) استفاده می شود. به عنوان جایگزینی برای MySQL در نظر گرفته شده است.
نسخه کوتاه این راهنمای نصب شامل این سه مرحله است:
• ایندکس بسته خود را با استفاده از APT به روز کنید
• پکیج mariadb-server را با استفاده از APT نصب کنید. این بسته همچنین ابزارهای مرتبط را برای تعامل با MariaDB در نظر می گیرد
• اسکریپت امنیتی شامل mysql_secure_installation را اجرا کنید تا دسترسی به سرور مجازی محدود شود
$ sudo apt update

$ sudo apt install mariadb-server

$ sudo mysql_secure_installation

در این آموزش نحوه نصب MariaDB در سرور مجازی Ubuntu 18.04 توضیح داده خواهد شد و تأیید می شود که در حال اجرا است و از پیکربندی اولیه ایمن برخوردار است.
پیش نیازها
برای دنبال کردن این آموزش ، به موارد زیر نیاز دارید:
• یک سرور مجازی Ubuntu 18.04 که با دنبال کردن راهنمای تنظیم اولیه سرور مجازی نصب شده باشد، و شامل یک کاربر غیر ریشه با امتیازات sudo و فایروال باشد.
مرحله 1 – نصب MariaDB
در اوبونتو 18.04 ، نسخه MariaDB 10.1 به صورت پیش فرض در منابع بسته APT گنجانده شده است.
برای نصب آن ، ایندکس بسته را بر روی سرور مجازی خود با apt به روز کنید:
$ sudo apt update

سپس بسته را نصب کنید:
$ sudo apt install mariadb-server

این دستورات MariaDB را نصب می کنند ، اما از شما خواسته نمی شود که رمز عبوری را تنظیم کنید یا تغییرات دیگری در پیکربندی ایجاد کنید. از آنجا که پیکربندی پیش فرض، نصب MariaDB را ناایمن می کند ، ما از اسکریپتی استفاده خواهیم کرد که بسته سرور مجازی mariadb برای محدود کردن دسترسی به سرور مجازی و حذف حساب های بلااستفاده فراهم می کند.
مرحله 2 – پیکربندی MariaDB
برای نصب های جدید MariaDB ، مرحله بعدی اجرای اسکریپت امنیتی گنجانده شده است. این اسکریپت برخی از گزینه های پیش فرض بدون ایمنی را تغییر می دهد. ما از آن برای مسدود کردن ورود به سیستم ریشه از راه دور و حذف کاربران استفاده نشده پایگاه داده استفاده خواهیم کرد.
اسکریپت امنیتی را اجرا کنید:
$ sudo mysql_secure_installation

این دستور مجموعه ای از اعلان ها را به شما نشان میدهد که می توانید در گزینه های امنیتی نصب MariaDB خود تغییراتی ایجاد کنید. اولین دستور از شما می خواهد رمز ورود ریشه داده فعلی را وارد کنید. از آنجا که ما هنوز تنظیم نکردیم ، ENTER را فشار دهید تا “none” را نشان دهد.
اعلان بعدی از شما سؤال می کند که آیا می خواهید رمزعبور ریشه دیتابیس را تنظیم کنید یا خیر. N را تایپ کرده و ENTER را فشار دهید. در اوبونتو ، حساب اصلی برای MariaDB با نگهداری سیستم خودکار گره خورده است ، بنابراین ما نباید روشهای تأیید صحت تنظیم شده را برای آن حساب تغییر دهیم. با این کار امکان به روزرسانی بسته با حذف دسترسی به حساب ادمین باعث می شود سیستم به روزرسانی بسته شود. اگر احراز هویت سوکت برای مورد استفاده شما مناسب نباشد ، بعداً نحوه تنظیم اختیاری یک حساب ادمین اضافی برای دسترسی به رمز ورود را بررسی می کنیم.
از آنجا ، می توانید Y و سپس ENTER را فشار دهید تا جواب پیش فرض همه سؤالات بعدی را بپذیرید. این کار برخی از کاربران ناشناس و بانک اطلاعاتی آزمایشی حذف می کند ، ورود به سیستم ریشه از راه دور را غیرفعال می کند و این قوانین جدید را بارگذاری می کند تا MariaDB سریعاً تغییراتی را که ایجاد کرده اید به مرحله اجرا برساند.
مرحله 3 – تنظیم تأیید اعتبار کاربر و امتیازات (اختیاری)
در سیستم های اوبونتو که MariaDB 10.1 در حال اجرا است ، کاربر اصلی MariaDB با استفاده از افزونه unix_socket به طور پیش فرض و نه با رمز عبور ، تأیید اعتبار را انجام می دهد. این امر امکان امنیت و قابلیت استفاده بیشتری را در بسیاری از موارد فراهم می کند ، اما در صورت نیاز به دادن امتیازات اجرایی به یک برنامه خارجی (به عنوان مثال ، phpMyAdmin) می تواند کار را پیچیده تر کند.
از آنجا که سرور مجازی از حساب root برای کارهایی مانند گردش ورود به سیستم و شروع و متوقف کردن سرور مجازی استفاده می کند ، بهتر است جزئیات تأیید اعتبار حساب root را تغییر ندهید. تغییر اعتبار در پرونده پیکربندی /etc/mysql/debian.cnf ممکن است در ابتدا کار کند ، اما به روزرسانی های بسته به طور بالقوه می توانند آن تغییرات را بازنویسی کنند. به جای تغییر حساب اصلی ، نگهدارندگان بسته توصیه می کنند یک حساب ادمین جداگانه برای دسترسی مبتنی بر رمز عبور ایجاد کنید.
برای این کار ، یک حساب کاربری جدید با نام admin با همان قابلیت های root ایجاد می کنیم ، که برای احراز هویت رمز عبور پیکربندی شده است. برای انجام این کار ، اعلان MariaDB را از پایانه خود باز کنید:
$ sudo mysql

اکنون کاربر جدیدی با امتیازات اصلی و دسترسی مبتنی بر رمز عبور ایجاد خواهیم کرد. نام کاربری و رمز عبور را برای مطابقت با موارد برگزیده خود تغییر دهید:
mariaDB [(none)]> GRANT ALL ON *.* TO ‘admin’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

برای اطمینان از ذخیره و در دسترس بودن آنها در بخش کنونی ، امتیازات را فلاش کنید:
mariaDB [(none)]> FLUSH PRIVILEGES;

پس از این ، از پوسته MariaDB خارج شوید:
mariaDB [(none)]> exit

در آخر ، بگذارید نصب MariaDB را آزمایش کنیم.
مرحله 4 – تست MariaDB
هنگام نصب از منابع پیش فرض ، MariaDB باید به صورت خودکار شروع به کار کند. برای آزمایش این موضوع ، وضعیت آن را بررسی کنید.
$ sudo systemctl status mariadb

خروجی مشابه زیر را دریافت خواهید کرد:
Output
● mariadb.service – MariaDB 10.1.44 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-03-25 16:51:16 UTC; 8min ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 22559 (mysqld)
Status: “Taking your SQL requests now…”
Tasks: 27 (limit: 1152)
CGroup: /system.slice/mariadb.service
└─22559 /usr/sbin/mysqld

Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: mysql
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: performance_schema
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Phase 6/7: Checking and upgrading tables
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Processing databases
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: information_schema
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: performance_schema
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: Phase 7/7: Running ‘FLUSH PRIVILEGES’
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22596]: OK
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22658]: Checking for insecure root accounts.
Mar 25 16:51:17 ubuntu-mariadb /etc/mysql/debian-start[22663]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

اگر MariaDB در حال اجرا نیست، میتوانید با دستور sudo systemctl start mariadb آن را راه اندازی کنید.
برای بررسی بیشتر ، می توانید با استفاده از ابزار mysqladmin ، که یک کلاینت است و به شما امکان اجرای دستورات ادمین را می دهد ، به پایگاه داده وصل شوید. برای مثال ، این دستور می گوید که به عنوان root به MariaDB وصل شوید و با استفاده از سوکت یونیکس نسخه را برگردانید:
$ sudo mysqladmin version

باید خروجی مشابه این دریافت کنید:
Output
mysqladmin Ver 9.1 Distrib 10.1.44-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Server version 10.1.44-MariaDB-0ubuntu0.18.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 10 min 9 sec

Threads: 1 Questions: 445 Slow queries: 0 Opens: 167 Flush tables: 1 Open tables: 30 Queries per second avg: 0.730

اگر یک کاربر ادمین جداگانه را با تأیید اعتبار رمزگذاری کرده اید ، می توانید همان کار را با تایپ کردن این دستور انجام دهید:
$ mysqladmin -u admin -p version

این بدان معناست که MariaDB در حال کار است و کاربر شما قادر به تأیید هویت موفقیت آمیز میباشد.
نتیجه
در این راهنما شما MariaDB را برای فعالیت به عنوان یک سرور مجازی SQL نصب کرده اید. در طی مراحل نصب ، سرور مجازی را نیز ایمن می کنید. به صورت اختیاری ، همچنین یک کاربر ادمین معتبر با رمز عبور جداگانه ایجاد کرده اید.
اکنون که یک سرور مجازی MariaDB در حال اجرا و مطمئن دارید ، در اینجا چند نمونه از مراحل بعدی که می توانید برای کار با سرور مجازی انجام دهید ، آورده شده است:
• ورود و خروج بانکهای اطلاعاتی
همچنین می توانید MariaDB را در یک پشته اپلیکیشن بزرگتر گنجانید:
• نحوه نصب Linux، Nginx، MariaDB، PHP (LEMP stack) در اوبونتو 18.04

 

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

Node.js یک زمان اجرا JavaScript برای برنامه نویسی سمت سرور مجازی است که برنامه نویسان را قادر می سازد تا با استفاده از JavaScript ، قابلیت backend مقیاس پذیر را ایجاد کنند ، زبانی که بسیاری از افراد از طریق توسعه وب مبتنی بر مرورگر با آن آشنا هستند.
در این راهنما ، ما سه روش مختلف نصب Node.js بر روی سرور مجازی CentOS 8 را به شما نشان خواهیم داد:
• استفاده از dnf برای نصب بسته nodejs از منبع پیش فرض AppStream CentOS
• نصب nvm ، Node Version Manager و استفاده از آن برای نصب و مدیریت چندین نسخه node
• ساخت و نصب node از منبع
بیشتر کاربران باید از dnf برای نصب نسخه های از پیش بسته بندی شده node استفاده کنند. اگر یک توسعه دهنده هستید یا نیاز به مدیریت چندین نسخه نصب شده از Node دارید ، از روش nvm استفاده کنید. ساختن از سورس به ندرت برای اکثر کاربران ضروری است.
پیش نیازها
برای تکمیل این آموزش ، به سرور مجازی ی که دارای CentOS 8 باشد ، نیاز خواهید داشت. ما فرض خواهیم کرد که شما به عنوان یک کاربر غیر ریشه و فعال در این سرور مجازی وارد شده اید. برای انجام این کار، به راهنمای اولیه راه اندازی سرور مجازی ما برای CentOS 8 مراجعه کنید.
گزینه 1 – نصب node از منبع CentOS AppStream
Node.js از منبع پیش فرض نرم افزار AppStream در CentOS 8 در دسترس است. چندین نسخه وجود دارد ، و می توانید با فعال کردن module stream مناسب ، بین آنها انتخاب کنید. ابتدا جریان های موجود برای ماژول nodejs را با استفاده از دستور dnf لیست کنید:
$ sudo dnf module list nodejs

Output
Name Stream Profiles Summary
nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime
nodejs 12 common, development, minimal, s2i

دو جریان در دسترس است ، 10 و 12. [d] نشان می دهد که نسخه 10 جریان پیش فرض است. اگر ترجیح می دهید Node.js 12 را نصب کنید ، اکنون جریانهای ماژول را تغییر دهید:
$ sudo dnf module enable nodejs:12

از شما خواسته می شود تصمیم خود را تأیید کنید. پس از آن جریان 12 نسخه فعال می شود و می توانیم نصب را ادامه دهیم. برای اطلاعات بیشتر در مورد کار با جریانهای ماژول ، به مطالب CentOS AppStream مراجعه کنید.
بسته nodejs را با dnf نصب کنید:
باز هم ، dnf از شما می خواهد تا اقدامات انجام شده را تأیید کنید. برای انجام این کار y را فشار دهید و ENTER را نصب کنید.
بررسی کنید که نصب با جستار node برای شماره نسخه خود موفقیت آمیز باشد:
$ node –version

Output
v12.13.1

اگر به جای آن Node.js 10 را نصب کنید ، خروجی شما متفاوت خواهد بود.
توجه: هر دو نسخه موجود Node.js نسخه های پشتیبانی طولانی مدت هستند ، به این معنی که دارای یک پنجره تعمیر و نگهداری طولانی تر هستند. برای اطلاعات بیشتر در مورد چرخه عمر ، به صفحه رسمی Node.js مراجعه کنید.

نصب بسته nodejs همچنین باید برنامه npm Node Package Manager را به عنوان یک وابستگی نصب کند. تأیید کنید که به درستی نصب شده است:
$ npm –version

Output
6.12.1

در این مرحله شما با موفقیت Node.js و npm را با استفاده از منابع نرم افزار CentOS درج کرده اید. در بخش بعدی نحوه استفاده از Node Version Manager برای انجام این کار نمایش داده خواهد شد.
گزینه 2 – نصب node با استفاده از مدیر نسخه node
روش دیگر نصب Node.js که به خصوص قابل انعطاف است استفاده از nvm ، یعنی مدیر نسخه node است. این بخش از نرم افزار به شما امکان می دهد بسیاری از نسخه های مختلف مستقل Node.js و بسته های مربوط به Node را هم زمان نصب و نگهداری کنید.
برای نصب NVM در دستگاه CentOS 8 خود ، به صفحه GitHub پروژه مراجعه کنید. دستور curl را از فایل README که در صفحه اصلی نمایش داده شده کپی کنید. آخرین نسخه اسکریپت نصب را برای شما می آورد.
قبل اتصال دستور به bash ، بهتر است که اسکریپت را مرور کنید تا مطمئن شوید کاری انجام نمی دهد که با آن موافق نیستید. شما می توانید با حذف بخش | bashدر انتهای دستور Curl این کار را انجام دهید:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh

نگاهی بیندازید و اطمینان حاصل کنید که با تغییراتی که ایجاد می کند ، موافق هستید. وقتی راضی شدید ، مجدداً دستور را با | bash در انتها ، اجرا کنید. URL ای که استفاده می کنید بسته به آخرین نسخه NVM تغییر خواهد کرد ، اما در حال حاضر ، اسکریپت را می توانید با تایپ دستور زیر دانلود و اجرا کنید:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash

این کار اسکریپت nvm را روی حساب کاربری شما نصب می کند. برای استفاده از آن ، ابتدا باید فایل .bash_profile خود را تهیه کنید:
$ source ~/.bash_profile

اکنون می توانید از NVM بپرسید کدام نسخه های Node در دسترس هستند:
nvm list-remote
. . .
v12.13.0 (LTS: Erbium)
v12.13.1 (LTS: Erbium)
v12.14.0 (LTS: Erbium)
v12.14.1 (LTS: Erbium)
v12.15.0 (LTS: Erbium)
v12.16.0 (LTS: Erbium)
v12.16.1 (Latest LTS: Erbium)
v13.0.0
v13.0.1
v13.1.0
v13.2.0
v13.3.0
v13.4.0
v13.5.0
v13.6.0
v13.7.0
v13.8.0
v13.9.0
v13.10.0
v13.10.1
v13.11.0
v13.12.0

این یک لیست بسیار طولانی است! با تایپ کردن هر نسخه منتشر شده که می بینید می توانید نسخه ای از Node را نصب کنید. به عنوان مثال ، برای دریافت نسخه v13.6.0 ، می توانید تایپ کنید:
$ nvm install v13.6.0

با تایپ کردن این دستور میتوانید نسخه های مختلفی که نصب کرده اید را مشاهده کنید:
nvm list
Output
-> v13.6.0
default -> v13.6.0
node -> stable (-> v13.6.0) (default)
stable -> 13.6 (-> v13.6.0) (default)

این دستور نسخه فعال فعلی در خط اول (-> v13.6.0) را نشان می دهد ، و بعد از آن برخی نام های مستعار و نسخه هایی که آن نام های مستعار به آن اشاره دارند، آمده است.
توجه: اگر نسخه دیگری از Node را نیز از طریق منابع نرم افزار CentOS نصب کرده اید ، ممکن است یک system -> v12.13.1 (یا شماره نسخه دیگری) را در اینجا مشاهده کنید. همیشه می توانید نسخه سیستم Node را با استفاده از nvm use system فعال کنید.

علاوه بر این ، نامهای مختلفی را برای انتشارهای مختلف Node با پشتیبانی بلند مدت (LTS) مشاهده خواهید کرد:
Output
lts/* -> lts/erbium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.19.0 (-> N/A)
lts/erbium -> v12.16.1 (-> N/A)

ما می توانیم نسخه ای را نیز بر اساس این نام های مستعار نصب کنیم. به عنوان مثال ، برای نصب آخرین نسخه پشتیبانی طولانی مدت ، erbium ، دستور زیر را اجرا کنید:
$ nvm install lts/erbium

Output
Downloading and installing node v12.16.1…
. . .
Now using node v12.16.1 (npm v6.13.4)

می توانید با استفاده از nvm بین نسخه های نصب شده جابجا شوید:
$ nvm use v13.6.0

Now using node v13.6.0 (npm v6.13.4)

با تایپ کردن این دستور می توانید تأیید کنید که نصب با استفاده از همان تکنیک بخش های دیگر موفقیت آمیز بوده است:
node –version
Output
v13.6.0

نسخه صحیح node همانطور که انتظار داشتیم روی دستگاه ما نصب شده است. یک نسخه سازگار npm نیز موجود است.
گزینه 3 – نصب node از منبع
راه دیگر برای نصب Node.js دانلود کد منبع و کامپایل آن است.
برای انجام این کار ، از مرورگر وب خود استفاده کنید تا به صفحه رسمی Node.js بروید ، بر روی لینک Source Code کلیک راست کرده و بر روی Copy Link Address یا هر گزینه مشابهی که مرورگر شما نشان می دهد کلیک کنید.
به بخش SSH خود برگردید، ابتدا مطمئن شوید که در دایرکتوری هستید که می توانید در آن بنویسید. ما از دیرکتوری اصلی کاربر فعلی استفاده خواهیم کرد:
$ cd ~

سپس curl را تایپ کنید ، لینکی را که از وب سایت کپی کرده اید پیست کنید ، و بعد از آن | tar xzقرار دهید:
$ curl https://nodejs.org/dist/v12.16.1/node-v12.16.1.tar.gz | tar xz

از ابزار curl برای دانلود منبع استفاده میکند، سپس آن را مستقیماً به ابزار tar مرتبط میکند ، که آن را در دیرکتوری فعلی اکسترکت می کند.
به دیرکتوری منبع تازه ایجاد شده بروید:
$ cd node-v*

چند بسته وجود دارد که باید آنها را از منابع CentOS دانلود کنیم. برای نصب این موارد از dnf استفاده کنید:
$ sudo dnf install gcc-c++ make python2

از شما خواسته می شود نصب را تأیید کنید. برای انجام این کار y را وارد کرده و enter بزنید. اکنون می توانیم نرم افزار را پیکربندی و کامپایل کنیم:
$ ./configure

$ make -j4

کامپایل کاملاً مدتی طول خواهد کشید (حدود 30 دقیقه روی یک سرور مجازی چهار هسته ای). ما برای اجرای چهار فرآیند کامپایل موازی از گزینه -j4 استفاده کرده ایم. می توانید این گزینه را حذف کنید یا بر اساس تعداد هسته پردازنده ای که در دسترس دارید ، عدد را به روز کنید.
پس از اتمام کامپایل ، می توانید با تایپ کردن دستور زیر نرم افزار را روی سیستم خود نصب کنید:
$ sudo make install

برای بررسی موفقیت آمیز بودن نصب ، از node بخواهید شماره نسخه خود را نشان دهد:
$ node –version

v12.16.1

اگر شماره نسخه صحیح را مشاهده کردید ، نصب با موفقیت انجام شده است. به طور پیش فرض ، node همچنین یک نسخه سازگار از npm را نصب می کند ، بنابراین باید در دسترس باشد.
نتیجه
در این آموزش نحوه نصب Node.js را با استفاده از منبع نرم افزار CentOS AppStream ، که از Node Version Manager استفاده میکند و کامپایل از منبع آموختیم.
اگر می خواهید اطلاعات بیشتری درباره برنامه نویسی در JavaScript داشته باشید ، لطفا سری آموزش های مرتبط ما را بخوانید:
How to Code in Javascript: یک مرور کلی بر زبان JavaScript ، قابل استفاده برای مرورگر و Node.js
How to Code in Node.js: یک سری تمرین که اصول استفاده از Node.js را آموزش می دهد

 

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

firewalld یک نرم افزار مدیریت فایروال است که برای بسیاری از توزیع های لینوکس موجود است ، که به عنوان یک پیش زمینه برای سیستم های فیلترینگ بسته های داخل هسته ای nftables یا iptables لینوکس عمل می کند.
در این راهنما به شما نشان خواهیم داد که چگونه می توانید فایروال firewalld را برای سرور مجازی CentOS 8 خود تنظیم کنید و اصول مدیریت فایروال را با ابزار اجرایی firewall-cmd پوشش دهید.
پیش نیازها
برای تکمیل این آموزش ، به سرور مجازی ی که دارای CentOS 8 باشد ، نیاز خواهید داشت. ما فرض خواهیم کرد که شما به عنوان یک کاربر غیر ریشه و فعال در این سرور مجازی وارد شده اید. برای انجام این کار، به راهنمای اولیه راه اندازی سرور مجازی ما برای CentOS 8 مراجعه کنید.
مفاهیم اساسی در firewalld
قبل از شروع صحبت در مورد چگونگی استفاده از ابزار Firewall-cmd برای مدیریت پیکربندی فایروال، باید با چند مفهومی که این ابزار معرفی می کند ، آشنا شویم.
Zones یا نواحی
firewalld  گروههایی از قوانین را با استفاده از ماهیتی به نام zones مدیریت می کند. Zone ها یا نواحی مجموعه قوانینی هستند که بسته به میزان اعتماد شما به شبکه ، ترافیک مجاز را اعلام می کنند. رابط های شبکه به ناحیه ای اختصاص داده میشوند تا رفتارهایی را که فایروال باید اجازه دهد ، را دیکته کنند.
برای رایانه هایی که ممکن است به طور مکرر بین شبکه ها در حرکت باشند (مانند لپ تاپ) ، این نوع انعطاف پذیری روش خوبی برای تغییر قوانین شما بسته به محیط فراهم می کند. ممکن است برای ممنوعیت بیشتر ترافیک هنگام کار بر روی یک شبکه WiFi عمومی قوانین سختگیرانه ای را داشته باشید ، در حالی که هنگام اتصال به شبکه خانگی خود محدودیت های خفیف تری را اعمال میکنید. برای سرور مجازی ، این نواحی اغلب به این اندازه مهم نیستند زیرا محیط شبکه به ندرت ، در هر صورت ، تغییر می کند.
صرف نظر از اینکه محیط شبکه شما چقدر ممکن است پویا باشد ، همچنان مفید است با ایده کلی پشت هر یک از نواحی از پیش تعریف شده برای firewalld آشنا شوید. نواحی از پیش تعریف شده در firewalld  ، به ترتیب حداقل اعتماد به بیشترین اعتماد عبارتند از:
•drop: پایین ترین سطح اعتماد است. تمام اتصالات ورودی بدون پاسخ افت کرده و فقط اتصالات خروجی امکان پذیر است.
•block: مشابه مورد فوق میباشد، اما به جای اینکه ارتباطات به راحتی قطع شوند ، درخواستهای دریافتی با پیغام icmp-host-prohibited  یا  icmp6-adm-prohibited رد می شوند.
•public: شبکه های عمومی و غیر قابل اعتماد را نشان می دهد. شما به رایانه های دیگر اعتماد ندارید اما ممکن است اتصالات ورودی انتخاب شده را به صورت موردی اجازه دهید.
•external: شبکه های خارجی هستند در صورتی که از فایروال به عنوان دروازه خود استفاده می کنید. این مورد برای نقاب گذاری NAT تنظیم شده است تا شبکه داخلی شما خصوصی بماند اما قابل دسترسی باشد.
•internal: طرف دیگر ناحیه خارجی است، که برای قسمت داخلی یک دروازه استفاده می شود. رایانه ها نسبتا قابل اعتماد هستند و برخی خدمات اضافی نیز در دسترس میباشند.
•dmz: برای رایانه های واقع در DMZ (رایانه های جدا شده ای که به بقیه شبکه شما دسترسی ندارند) استفاده می شود. فقط اتصالات ورودی خاص مجاز است.
•work: برای ماشینهای کاری استفاده می شود. به اکثر رایانه های موجود در شبکه اعتماد میکند. چند سرویس دیگر ممکن است مجاز باشند.
•home: یک محیط هوم میباشد. به طور کلی نشان می دهد که شما به اکثر رایانه های دیگر اعتماد دارید و چند سرویس دیگر نیز پذیرفته می شوند.
•trusted: به تمام دستگاههای موجود در شبکه اعتماد میکند. بازترین گزینه موجود است و باید با احتیاط استفاده شود.
برای استفاده از فایروال می توانیم قوانینی ایجاد کرده و خصوصیات نواحی خود را تغییر داده و سپس رابط های شبکه خود را به هر کدام از نواحی مناسب تر اختصاص دهیم.
پایداری قانون (Rule Permanence)
در Firewalld می توان قوانینی را برای مجموعه قوانین زمان اجرای فعلی اعمال کرد یا دائمی استفاده نمود. وقتی یک قانون اضافه میشود یا تغییر می یابد ، به طور پیش فرض ، فقط فایروال در حال اجرا اصلاح می شود. پس از ریبوت بعدی – یا بارگذاری مجدد سرویس Firewalld – فقط قوانین دائمی باقی می مانند.
اکثر عملیات firewall-cmd می توانند پرچم –permanent را داشته باشند که نشان می دهد تغییرات باید در پیکربندی کامل اعمال شوند. علاوه بر این ، فایروال در حال اجرا می تواند با دستور firewall-cmd –runtime-to-permanent در پیکربندی دائمی ذخیره شود.
این تفکیک زمان اجرا در مقابل پیکربندی دائم بدان معنی است که می توانید با اطمینان قوانین موجود در فایروال فعال خود را تست کنید ، سپس در صورت بروز مشکل لود مجدد کنید.
نصب و فعال سازی firewalld
firewalld بطور پیش فرض در برخی توزیع های لینوکس نصب شده است ، از جمله بسیاری از تصاویر CentOS 8. با این وجود ، ممکن است لازم باشد Firewalld را خودتان نصب کنید:
$ sudo dnf install firewalld

بعد از نصب Firewalld ، می توانید سرویس را فعال کرده و سرور مجازی خود را دوباره راه اندازی کنید. به خاطر داشته باشید که فعال کردن فایروال باعث ایجاد بوت مجدد سرویس می شود. بهترین کار این است که قوانین فایروال خود را ایجاد کنید و از این فرصت استفاده کنید که قبل از پیکربندی این رفتار ، آنها را آزمایش کنید تا از مشکلات احتمالی خودداری کنید.
$ sudo systemctl enable firewalld

$ sudo systemctl start firewalld

هنگام شروع مجدد سرور مجازی ، باید فایروال شما فراهم شود ، رابط های شبکه شما باید در مناطقی که پیکربندی کرده اید قرار گیرند (یا به منطقه پیش فرض پیکربندی شده برگردند) ، و کلیه قوانین مرتبط با منطقه (ها) به رابط های مربوط اعمال می شود.
با تایپ کردن دستور زیر می توانیم تأیید کنیم که سرویس در حال اجرا و قابل دستیابی است:
$ sudo firewall-cmd –state

Output
running

این نشان میدهد که فایروال ما با تنظیمات پیش فرض به روز و در حال اجراست.
آشنایی با قوانین فعلی فایروال
قبل از شروع به ایجاد تغییرات ، باید با محیط پیش فرض و قوانین ارائه شده توسط firewalld آشنا شویم.
جستجوی پیش فرض ها
با تایپ این دستور می توانیم ببینیم کدام منطقه در حال حاضر به عنوان پیش فرض انتخاب شده است:
$ firewall-cmd –get-default-zone

Output
public

از آنجا که ما هیچ فرمانی را برای انحراف از منطقه پیش فرض صادر نکرده ایم و هیچ یک از رابط های ما پیکربندی نشده اند که به منطقه دیگری متصل شوند ، آن منطقه نیز تنها منطقه فعال است (منطقه ای که کنترل ترافیک رابط های ما را تنظیم می کند) . می توانیم با تایپ کردن این دستور آن را تأیید کنیم:
$ firewall-cmd –get-active-zones

Output
public
interfaces: eth0 eth1

در اینجا ، می بینیم که سرور مجازی مثال ما دارای دو رابط شبکه است که توسط فایروال کنترل می شوند ( eth0 و eth1). در حال حاضر هر دو مطابق قوانینی که برای منطقه عمومی تعیین شده است ، اداره می شوند.
چگونه می دانیم که چه قوانینی به منطقه عمومی مرتبط است؟ می توانیم پیکربندی منطقه پیش فرض را با تایپ کردن دستور زیر چاپ کنیم:
$ sudo firewall-cmd –list-all

Output
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0 eth1
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

از خروجی می توانیم بگوییم که این منطقه هم پیش فرض و هم فعال است و رابط های eth0 و eth1 با این منطقه در ارتباط هستند (ما همه اینها را از جستارهای قبلی خود می دانستیم). با این حال ، همچنین می بینیم که این منطقه امکان ترافیک را برای مشتری DHCP (برای تعیین آدرس IP) ، SSH (برای مدیریت از راه دور) و Cockpit (یک کنسول مبتنی بر وب) فراهم می کند.
جستجو در مناطق جایگزین
اکنون ما در مورد پیکربندی منطقه پیش فرض و فعال اطلاعات خوبی داریم. می توانیم در مورد مناطق دیگر نیز اطلاعات کسب کنیم.
برای دریافت لیستی از مناطق موجود ، تایپ کنید:
$ firewall-cmd –get-zones

Output
block dmz drop external home internal public trusted work

با درج پارامتر –zone = در فرمان –list-all می توانیم پیکربندی خاص مرتبط با یک منطقه را مشاهده کنیم:
$ sudo firewall-cmd –zone=home –list-all

Output
home
target: default
icmp-block-inversion: no
interfaces:
sources:
services: cockpit dhcpv6-client mdns samba-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

شما می توانید با استفاده از گزینه –list-all-zones ، تعاریف منطقه را به دست آورید. برای مشاهده راحت تر احتمالاً می خواهید خروجی را به یک پیجر متصل کنید:
$ sudo firewall-cmd –list-all-zones | less

در مرحله بعدی در مورد اختصاص مناطق به واسط های شبکه، اطلاعاتی کسب خواهیم کرد.
انتخاب مناطق برای رابط های خود
با شروع فایروال ، هر رابط در منطقه پیش فرض قرار می گیرد، مگر اینکه رابط های شبکه خود را پیکربندی کرده باشید.
تغییر منطقه یک رابط
می توانید در طول یک بخش با استفاده از پارامتر –zone = در ترکیب با پارامتر –change-interface= بین منطقه ها حرکت کنید. مانند سایر دستوراتی که فایروال را اصلاح می کند ، باید از sudo استفاده کنید.
به عنوان مثال ، می توانیم با تایپ کردن این دستور، رابط eth0 خود را به منطقه هوم منتقل کنیم:
$ sudo firewall-cmd –zone=home –change-interface=eth0

Output
success

توجه: هر زمان که می خواهید یک رابط کاربری را به منطقه جدید منتقل کنید ، توجه داشته باشید که در حال تغییر دادن کدام سرویس های عملیاتی هستید. به عنوان مثال ، در اینجا ما در حال انتقال به منطقه هوم هستیم که SSH در دسترس دارد. این بدان معناست که اتصال ما قطع نمی شود. برخی مناطق دیگر به طور پیش فرض SSH را فعال نمی کنند و تغییر مکان به یکی از این مناطق می تواند باعث شود قطع اتصال شما شود و از ورود دوباره به سرور مجازی شما جلوگیری کند.

با درخواست دوباره مناطق فعال ، می توانیم تأیید کنیم که این امر موفقیت آمیز بوده است:
$ firewall-cmd –get-active-zones

Output
home
interfaces: eth0
public
interfaces: eth1

تنظیم منطقه پیش فرض
اگر همه رابط های شما توسط یک منطقه واحد به خوبی اداره شوند ، احتمالاً ساده ترین کار انتخاب بهترین منطقه به عنوان پیش فرض و سپس استفاده از آن برای پیکربندی شما میباشد.
می توانید ناحیه پیش فرض را با پارامتر –set-default-zone = تغییر دهید. با این کار بلافاصله هر رابط با استفاده از منطقه پیش فرض تغییر می یابد:
$ sudo firewall-cmd –set-default-zone=home

Output
success

تنظیم قوانین مربوط به برنامه های خود
بیایید از راهی بنیادی برای تعریف استثنائات فایروال برای خدماتی که مایل به ارائه هستید استفاده کنید.
افزودن سرویس به مناطق
سرراست ترین روش اضافه کردن خدمات یا پورت های مورد نیاز خود به مناطقی است که استفاده می کنید. می توانید لیستی از تعاریف خدمات موجود را با گزینه –get-service دریافت کنید:
$ firewall-cmd –get-services

Output
RH-Satellite-6 amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-c

توجه: می توانید با دیدن فایل .xml همراه آنها در دیرکتوری /usr/lib/firewalld/services جزئیات مربوط به هر یک از این سرویس ها اطلاعات بیشتری کسب کنید. به عنوان مثال ، سرویس SSH به شرح زیر تعریف می شود:
/usr/lib/firewalld/services/ssh.xml
<?xml version=”1.0″ encoding=”utf-8″?>
<service>
<short>SSH</short>
<description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
<port protocol=”tcp” port=”22″/>
</service>

با استفاده از پارامتر –add-service = می توانید یک سرویس را برای یک منطقه فعال کنید. این عملکرد منطقه پیش فرض یا هر منطقه را که با پارامتر –zone = مشخص می کند هدف قرار می دهد. به طور پیش فرض ، فقط بخش فعلی فایروال را تنظیم می کند. می توانید تنظیمات فایروال دائمی را با افزودن پرچم –permanent تنظیم کنید.
به عنوان مثال ، اگر ما یک سرور مجازی وب ارائه دهنده ترافیک معمولی HTTP داریم ، می توانیم با تایپ کردن دستور زیر به طور موقت این ترافیک را برای رابط های موجود در منطقه عمومی خود فراهم کنیم:
$ sudo firewall-cmd –zone=public –add-service=http

اگر می خواهید منطقه پیش فرض را تغییر دهید ، می توانید پرچم –zone = را رها کنید. با استفاده از عملکردهای –list-all یا –list-services می توانیم تأیید کنیم که این عملیات با موفقیت انجام شد:
$ sudo firewall-cmd –zone=public –list-services

Output
cockpit dhcpv6-client http ssh

هنگامی که آزمایش کردید که همه چیز همانطور که باید کار می کند ، میتوانید قوانین فایروال دائمی را تغییر دهید تا سرویس شما پس از راه اندازی مجدد دوباره در دسترس باشد. ما می توانیم با تایپ مجدد و اضافه کردن پرچم –permanent ، تغییر قبلی خود را دائمی کنیم:
$ sudo firewall-cmd –zone=public –add-service=http –permanent

Output
success

همچنین می توانید از پرچم –runtime-to-permanent برای ذخیره پیکربندی فایروال در حال اجرا در پیکربندی دائمی استفاده کنید:
$ sudo firewall-cmd –runtime-to-permanent

در انجام این کار مراقب باشید ، زیرا تمام تغییرات ایجاد شده در فایروال در حال اجرا دائمی اعمال می شوند.
هر روشی که انتخاب کردید ، می توانید با افزودن پرچم –permanent به عملیات –list-services ، این موفقیت را تأیید کنید. برای هر عملیات –permanent باید از sudo استفاده کنید:
$ sudo firewall-cmd –zone=public –list-services –permanent

Output
cockpit dhcpv6-client http ssh

در حال حاضر منطقه عمومی شما ترافیک وب HTTP را در پورت 80 امکان پذیر خواهد کرد. اگر سرور مجازی وب شما پیکربندی شده است تا از SSL / TLS استفاده کند ، بهتر است سرویس https را نیز اضافه کنید. می توانیم با تایپ کردن دستور زیر ، آن را به بخش فعلی و مجموعه قوانین دائمی اضافه کنیم:
$ sudo firewall-cmd –zone=public –add-service=https

$ sudo firewall-cmd –zone=public –add-service=https –permanent

اگر هیچ خدمات مناسبی در دسترس نباشد چه می کنیم؟
خدماتی که با نصب فایروال شامل میشوند ، نمایانگر بسیاری از رایج ترین برنامه هایی هستند که ممکن است بخواهید به آنها دسترسی داشته باشید. با این وجود ، شرایطی وجود خواهد داشت که این سرویس ها مطابق با نیاز شما نباشند.
در این شرایط ، شما دو گزینه دارید.
باز کردن پورتی برای نواحی خود
آسانترین راه برای افزودن پشتیبانی برای برنامه خاص شما ، باز کردن پورت هایی است که از آن در منطقه (های) مناسب استفاده می کند. این کار با مشخص کردن پورت یا محدوده پورت و پروتکل همراه (TCP یا UDP) برای درگاهها انجام می شود.
به عنوان مثال ، اگر برنامه ما روی پورت 5000 اجرا شود و از TCP استفاده کند ، می توانیم به طور موقت با استفاده از پارامتر –add-port = آن را به منطقه عمومی اضافه کنیم. پروتکل ها می توانند به عنوان tcp یا udp تعیین شوند:
$ sudo firewall-cmd –zone=public –add-port=5000/tcp

Output
success

می با استفاده از عملکرد –list-ports میتوانیم تأیید کنیم که این کار موفقیت آمیز بوده است:
$ sudo firewall-cmd –zone=public –list-ports

Output
5000/tcp

همچنین می توان با جدا کردن شروع و پایان پورت در محدوده با / ، محدوده متوالی پورت ها را مشخص کرد. به عنوان مثال ، اگر برنامه ما از پورت های UDP از 4990 تا 4999 استفاده می کند ، می توانیم با تایپ کردن این دستور آنها را در حالت عمومی باز کنیم:
$ sudo firewall-cmd –zone=public –add-port=4990-4999/udp

پس از آزمایش ، میتوانیم این موارد را به فایروال دائمی اضافه کنیم. برای انجام این کار از sudo firewall-cmd –runtime-to-permanent استفاده کنید ، یا دستورات را با پرچم –permanentمجدداً راه اندازی کنید:
$ sudo firewall-cmd –zone=public –permanent –add-port=5000/tcp

$ sudo firewall-cmd –zone=public –permanent –add-port=4990-4999/udp

$ sudo firewall-cmd –zone=public –permanent –list-ports

Output
success
success
5000/tcp 4990-4999/udp

تعریف یک سرویس
باز کردن پورت ها برای مناطق شما یک راه حل ساده است ، اما پیگیری کردن هدف هر یک از آنها، دشوار خواهد بود. اگر تا کنون یک سرویس را روی سرور مجازی خود حذف کرده باشید ، ممکن است به سختی به خاطر بیاورید که کدام پورت های باز شده همچنان لازم هستند. برای جلوگیری از این وضعیت می توان سرویس جدیدی را تعریف کرد.
خدمات، مجموعه ای از درگاه ها با نام و توضیحات همراه هستند. استفاده از سرویس ها برای کارهای اجرایی آسانتر از درگاه ها است ، اما به کمی کار up-front نیاز دارد. ساده ترین راه برای شروع ، کپی کردن اسکریپت موجود (در / usr / lib / firewalld / service) در دایرکتوری / etc / firewalld / service است که در آن فایروال به دنبال تعاریف غیر استاندارد است.
به عنوان مثال ، می توانیم تعریف سرویس SSH را کپی کرده و از آن برای تعریف سرویس نمونه مانند این استفاده کنیم. نام فایل منهای پسوند .xml نام سرویس را در لیست خدمات فایروال نشان می دهد:
$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/example.xml

اکنون می توانید تعریف موجود در فایلی که کپی کرده اید را تنظیم کنید. ابتدا آن را در ویرایشگر متن مورد علاقه خود باز کنید. ما اینجا از vi استفاده خواهیم کرد:
$ sudo vi /etc/firewalld/services/example.xml

برای شروع ، فایل حاوی تعریف SSH است که کپی کرده اید:
/etc/firewalld/services/example.xml
<?xml version=”1.0″ encoding=”utf-8″?>
<service>
<short>SSH</short>
<description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
<port protocol=”tcp” port=”22″/>
</service>

اکثر این تعریف در واقع ابرداده است. شما می خواهید نام کوتاه را برای سرویس در برچسب های <short> تغییر دهید. این یک نام قابل خواندن برای خدمات شما است. همچنین باید توضیحی را اضافه کنید تا در صورت نیاز به ممیزی این سرویس ، اطلاعات بیشتری کسب کنید. تنها پیکربندی مورد نیاز جهت ایجاد عملکرد در خدمات ، احتمالاً تعریف پورت است که در آن شماره پورت و پروتکل مورد نظر برای باز کردن را شناسایی می کنید. برچسب های چندگانه <port/> را می توان مشخص کرد.
برای سرویس نمونه ما ، تصور کنید که ما باید پورت 7777 را برای TCP و 8888 را برای UDP باز کنیم. ما می توانیم تعریف موجود را با چیزی شبیه به این اصلاح کنیم:
/etc/firewalld/services/example.xml
<?xml version=”1.0″ encoding=”utf-8″?>
<service>
<short>Example Service</short>
<description>This is just an example service. It probably shouldn’t be used on a real system.</description>
<port protocol=”tcp” port=”7777″/>
<port protocol=”udp” port=”8888″/>
</service>

فایل را ذخیره کنید و ببندید.
بار دیگر فایروال خود را لود کنید تا به سرویس جدید خود دسترسی پیدا کنید:
$ sudo firewall-cmd –reload

می بینید که اینک در لیست خدمات موجود قرار دارد:
$ firewall-cmd –get-services

Output
RH-Satellite-6 amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-client bb bgp bitc

اکنون می توانید طبق معمول از این سرویس در مناطق خود استفاده کنید.
ایجاد نواحی شخصی خود
در حالی که نواحی از پیش تعریف شده احتمالاً برای بیشتر کاربران کاملا کافی خواهند بود ، می توان مناطق خود را که توصیف بیشتری از عملکرد آنها دارید تعریف کنید.
به عنوان مثال ، شما ممکن است بخواهید یک منطقه به نام publicweb برای وب سرور مجازی خود ایجاد کنید. با این حال ، ممکن است بخواهید منطقه دیگری را برای سرویس DNS ارائه شده در شبکه خصوصی تنظیم کنید. ممکن است منطقه ای به نام “privateDNS” بخواهید.
$ sudo firewall-cmd –permanent –new-zone=publicweb

$ sudo firewall-cmd –permanent –new-zone=privateDNS

هنگام افزودن یک منطقه ، باید آن را به پیکربندی فایروال دائمی اضافه کنید. سپس می توانید مجدد لود کنید تا پیکربندی را به بخش در حال اجرا بیاورید. به عنوان مثال ، می توانیم با تایپ کردن این دستور دو منطقه مورد بحث را در بالا ایجاد کنیم:
با تایپ کردن این دستور می توانید تأیید کنید که این موارد در پیکربندی دائمی شما وجود دارند:
$ sudo firewall-cmd –permanent –get-zones

Output
block dmz drop external home internal privateDNS public publicweb trusted work

همانطور که قبلاً گفته شد ، اینها هنوز در فایروال زمان اجرا در دسترس نیستند:
$ firewall-cmd –get-zones

Output
block dmz drop external home internal public trusted work

بار دیگر فایروال را لود کنید تا این مناطق جدید به پیکربندی فعال زمان اجرا اضافه شوند:
$ sudo firewall-cmd –reload

$ firewall-cmd –get-zones

Output
block dmz drop external home internal privateDNS public publicweb trusted work

اکنون می توانید خدمات و پورت های مناسب را به مناطق خود اختصاص دهید. معمولاً ایده خوبی است که فایروال زمان اجرا را تنظیم کرده و پس از آزمایش آن را در پیکربندی دائمی ذخیره کنید. به عنوان مثال ، برای منطقه publicweb ، ممکن است بخواهید خدمات SSH ، HTTP و HTTPS را اضافه کنید:
$ sudo firewall-cmd –zone=publicweb –add-service=ssh

$ sudo firewall-cmd –zone=publicweb –add-service=http

$ sudo firewall-cmd –zone=publicweb –add-service=https

$ sudo firewall-cmd –zone=publicweb –list-all

Output
publicweb
target: default
icmp-block-inversion: no
interfaces:
sources:
services: http https ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

به همین ترتیب ، می توانیم سرویس DNS را به منطقه privateDNS خود اضافه کنیم:
$ sudo firewall-cmd –zone=privateDNS –add-service=dns

$ sudo firewall-cmd –zone=privateDNS –list-all

Output
privateDNS
target: default
icmp-block-inversion: no
interfaces:
sources:
services: dns
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

سپس می توانستیم رابطهای خود را به این نواحی جدید تغییر دهیم تا آنها را تست کنیم.
$ sudo firewall-cmd –zone=publicweb –change-interface=eth0

$ sudo firewall-cmd –zone=privateDNS –change-interface=eth1

در این مرحله ، می توانید پیکربندی خود را آزمایش کنید. اگر این مقادیر برای شما کار کنند ، می توانید این قوانین را به پیکربندی دائمی اضافه کنید. شما می توانید این کار را با اجرای دوباره تمام دستورات با پرچم –permanent ، انجام دهید ، اما در این حالت ما از پرچم –runtime-to-permanent استفاده خواهیم کرد تا کل تنظیمات زمان اجرا را برای همیشه ذخیره کنیم:
$ sudo firewall-cmd –runtime-to-permanent

پس از بکارگیری دائم این قوانین ، فایروال را لود مجدد کنید تا ثابت شود که تغییرات همچنان باقی مانده اند:
$ sudo firewall-cmd –reload

تأیید کنید که مناطق صحیح اختصاص داده شده است:
$ firewall-cmd –get-active-zones

Output
privateDNS
interfaces: eth1
publicweb
interfaces: eth0

و تأیید کنید که خدمات مناسب برای هر دو منطقه در دسترس است:
$ sudo firewall-cmd –zone=publicweb –list-services

Output
http https ssh
$ sudo firewall-cmd –zone=privateDNS –list-services

Output
dns

با موفقیت مناطق خود را تنظیم کرده اید! اگر می خواهید یکی از این مناطق را به صورت پیش فرض برای واسط های دیگر بسازید ، بیاد داشته باشید که آن رفتار را با پارامتر –set-default-zone = پیکربندی کنید:
نتیجه
حال باید درک نسبتاً کاملی از نحوه اجرای سرویس firewalld در سیستم CentOS برای استفاده روزانه داشته باشید.
سرویس firewalld به شما امکان می دهد قوانین و مجموعه های قابل نگهداری را تنظیم کنید که محیط شبکه شما را مورد توجه قرار می دهد. این امکان را به شما می دهد تا از طریق استفاده از مناطق به صورت یکپارچه بین رویکردهای مختلف فایروال تغییر مسیر دهید و به مدیران این امکان را می دهد تا مدیریت پورت را برای تعاریف خدمات منعطف تر انتزاع کنند. به دست آوردن دانش کار در این سیستم به شما امکان می دهد از انعطاف پذیری و قدرتی که این ابزار در اختیار شما قرار می دهد استفاده کنید.
برای اطلاعات بیشتر در مورد firewalld ، لطفاً به مطالب رسمی Firewalld مراجعه کنید

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

وقتی برای اولین بار استفاده از سرور مجازی لینوکس را شروع می کنید ، اضافه کردن و حذف کردن کاربران اغلب اولین کاری است که باید انجام دهید. در این راهنما نحوه ایجاد حساب کاربری ، اختصاص امتیازات sudo و حذف کاربران در سرور CentOS 8 را پوشش خواهیم داد.
پیش نیازها
این آموزش فرض می کند که شما با یک کاربر غیر ریشه فعال با sudo وارد یک سرور مجازی CentOS 8 شده اید. اگر به جای آن به عنوان root وارد شوید ، می توانید بخش sudo تمام دستورات زیر را حذف کنید ، اما آنها به هر صورت کار خواهند کرد.
اضافه کردن کاربران
در طول این آموزش با کاربر Sammy کار خواهیم کرد. لطفاً با نام کاربری مورد نظر خود جایگزین کنید.
با تایپ کردن دستور زیر می توانید یک کاربر جدید اضافه کنید:
$ sudo adduser sammy

در مرحله بعد ، باید گذرواژه خود را به کاربر بدهید تا بتواند وارد سیستم شود. برای این کار ، از دستور passwd استفاده کنید:
$ sudo passwd sammy

از شما خواسته می شود که رمز را دو بار تایپ کنید تا آن را تأیید کنید. اکنون کاربر جدید شما تنظیم و آماده استفاده است!
توجه: اگر سرور مجازی SSH شما تأیید هویت مبتنی بر گذرواژه را مجاز نمی داند ، همچنان نمی توانید با نام کاربری جدید خود ارتباط برقرار کنید. جزئیات مربوط به تنظیم اعتبار سنجی مبتنی بر کلید SSH برای کاربر جدید را می توان در مرحله 5 تنظیم اولیه سرور مجازی با CentOS 8 یافت.

اعطای امتیازات sudo به یک کاربر
اگر کاربر جدید شما باید توانایی اجرای دستورات دارای امتیازات root (ادمین) را داشته باشد ، باید به آنها دسترسی پیدا کنید.
ما می توانیم این کار را با اضافه کردن کاربر به گروه wheels انجام دهیم (که به طور پیش فرض به همه اعضای آن دسترسی sudo می دهد)
برای اضافه کردن کاربر خود به گروه wheels از فرمان usermod استفاده کنید:
$ sudo usermod -aG wheel sammy wheel

اکنون کاربر جدید شما قادر به اجرای دستورات با امتیازات ادمین است. برای انجام این کار ، sudo را به دستوری که می خواهید به عنوان ادمین اجرا کنید اضافه نمایید:
$ sudo some_command

از شما خواسته می شود رمزعبور حساب کاربری خود را وارد کنید (نه رمز root). پس از ارسال رمز عبور صحیح ، فرمانی که وارد کردید با امتیازات root اجرا می شود.
مدیریت کاربران با امتیازات sudo
در حالی که می توانید کاربران را با استفاده از usermod اضافه و حذف کنید ، این دستور راهی برای نشان دادن این که کدام کاربران عضو گروه هستند ندارد.
برای دیدن اینکه کدام کاربران عضو گروه wheel هستند (و از این رو امتیازات sudo دارند) ، می توانید از دستور lid استفاده کنید. lid معمولاً برای نشان دادن گروه هایی که کاربر در آن ها قرار دارد استفاده میشود اما با استفاده از پرچم -g می توانید آن را معکوس کرده و نشان دهید که اعضای متعلق به یک گروه کدام کاربران هستند:
$ sudo lid -g wheel

Output
centos(uid=1000)
sammy(uid=1001)

خروجی، نام کاربری و UID های مرتبط با گروه را به شما نشان می دهد. این یک روش خوب برای تأیید موفقیت آمیز بودن دستورات قبلی شماست و اینکه کاربر از امتیازات مورد نیاز خود برخوردار است.
حذف کاربران
اگر یک حساب کاربری دارید که دیگر نیازی به آن ندارید ، بهتر است آن را حذف کنید.
برای حذف کاربر بدون حذف هیچ یک از فایل های خود ، از دستور userdel استفاده کنید:
$ sudo userdel sammy

اگر می خواهید دیرکتوری هوم کاربر به همراه حساب آنها حذف شود ، پرچم -r را به userdel اضافه کنید:
$ sudo userdel -r sammy

با هر یک از دستورات ، کاربر به طور خودکار از هر گروهی که به آنها اضافه شده ، از جمله گروه wheel در صورت لزوم ، خارج خواهد شد. اگر بعداً کاربر دیگری با همین نام اضافه کنید ، برای دستیابی به sudo باید دوباره به گروه wheel اضافه شوند.
نتیجه
اکنون باید درباره نحوه افزودن و حذف کاربران از سرور مجازی CentOS 8 خود اطلاعات خوبی داشته باشید. مدیریت کارآمد کاربر به شما امکان می دهد تا کاربران را از هم جدا کنید و فقط به آنها میزان دسترسی بدهید که برای انجام کارشان لازم باشد.
اکنون می توانید پیکربندی سرور مجازی CentOS 8 خود را برای هر نرم افزاری که نیاز دارید ، مانند یک پشته وب LAMP یا LEMP ، انجام دهید.

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

سیستم های مدیریت پایگاه داده رابطه ای عنصر اصلی بسیاری از وب سایت ها و برنامه ها هستند. این سیستم ها روشی ساختاری برای ذخیره ، سازماندهی و دسترسی به اطلاعات را ارائه می دهند.
PostgreSQL ، که به Postgres نیز شناخته می شود ، یک سیستم مدیریت پایگاه داده رابطه ای است که پیاده سازی یک زبان جستجوی ساختاری را ارائه می دهد ، که بیشتر با عنوان SQL شناخته می شود. توسط بسیاری از پروژه های محبوب ، اعم از بزرگ و کوچک استفاده می شود ، مطابق با استاندارد است و دارای بسیاری از ویژگی های پیشرفته مانند تراکنش های قابل اعتماد و همزمانی بدون قفل های خواندن است.
با دنبال کردن این راهنما ، آخرین نسخه PostgreSQL را روی یک سرور مجازی CentOS 8 نصب خواهید کرد.
پیش نیازها
برای تکمیل این آموزش ، به سرور مجازی دارای CentOS 8 نیاز خواهید داشت. این سرور مجازی باید دارای کاربرغیر ریشه با امتیازات ادمین و فایروال تنظیم شده با firewalld باشد. برای انجام این کار، به راهنمای تنظیم اولیه سرور مجازی ما برای CentOS 8 مراجعه کنید.
مرحله 1 – نصب PostgreSQL
PostgreSQL از مخزن پیش فرض نرم افزار AppStream CentOS 8 در دسترس است ، و نسخه های مختلفی وجود دارد که می توانید آنها را نصب کنید. با فعال کردن مجموعه مناسب بسته ها و متعلقاتی که با نسخه ای که می خواهید نصب کنید مطابق است و هر مجموعه یک module stream گفته می شود ، می توانید یکی از این نسخه ها انتخاب کنید.
در DNF ، مدیر بسته پیش فرض CentOS 8 ، ماژول ها مجموعه های ویژه بسته های RPM هستند که در کنار هم یک برنامه بزرگتر را تشکیل می دهند. انتظار میرود نصب بسته ها و متعلقات آنها برای کاربران بصری تر نمایند.
با استفاده از دستور dnf ، جریانهای موجود برای ماژول postgresql را لیست کنید:
$ dnf module list postgresql

Output
postgresql 9.6 client, server [d] PostgreSQL server and client module
postgresql 10 [d] client, server [d] PostgreSQL server and client module
postgresql 12 client, server

در این خروجی مشاهده می کنید که سه نسخه PostgreSQL از مخزن AppStream موجود است: 9.6 ، 10 و 12. جریانی که Postgres نسخه 10 را ارائه می دهد پیش فرض است ، همانطور که توسط [d] در زیر آن نشان داده شده است. اگر می خواهید آن نسخه را نصب کنید ، می توانید sudo dnf install postgresql-server را نصب کنید و به مرحله بعد بروید. با این وجود ، حتی اگر نسخه 10 همچنان حفظ شود ، این آموزش Postgres نسخه 12 را ، که آخرین نسخه در زمان نوشتن این مقاله است ، نصب می کند.
برای نصب PostgreSQL نسخه 12 ، باید جریان ماژول آن نسخه را فعال کنید. وقتی یک جریان ماژول را فعال می کنید ، جریان پیش فرض را لغو می کنید و تمام بسته های مربوط به جریان فعال شده را روی سیستم در دسترس می کنید. توجه داشته باشید که فقط یک جریان از هر ماژول معین می تواند همزمان در یک سیستم فعال شود.
برای فعال کردن جریان ماژول برای Postgres نسخه 12 ، دستور زیر را اجرا کنید:
$ sudo dnf module enable postgresql:12

وقتی از شما خواسته شد ، y و سپس ENTER را بزنید تا تأیید کنید که می خواهید جریان را فعال کنید ،:
Output
====================================================================
Package Architecture Version Repository Size
====================================================================
Enabling module streams:
postgresql 12

Transaction Summary
====================================================================

Is this ok [y/N]: y

بعد از فعال کردن جریان ماژول نسخه 12 ، می توانید بسته postgresql-server را نصب کنید تا PostgreSQL 12 و تمام وابستگی های آن را نصب کنید:
$ sudo dnf install postgresql-server

به محض دیدن اعلان ، نصب را با فشار دادن y و سپس enter تایید کنید:
Output
. . .
Install 4 Packages

Total download size: 16 M
Installed size: 62 M
Is this ok [y/N]: y

اکنون که نرم افزار نصب شده است ، برای تهیه خوشه پایگاه داده جدید برای PostgreSQL مراحل ابتدایی را انجام می دهید.
مرحله 2 – ایجاد یک خوشه پایگاه داده PostgreSQ جدید
قبل از شروع ایجاد جدول ها و لود آنها با داده ها ، باید یک پایگاه داده جدید PostgreSQL ایجاد کنید. یک خوشه بانک اطلاعاتی مجموعه ای از بانکهای داده است که توسط یک سرور مجازی واحد مدیریت می شود. ایجاد یک خوشه دیتابیس شامل ایجاد دایرکتوری هایی است که داده های پایگاه داده در آنها قرار می گیرند ، و جداول کاتولوگ اشتراکی و پایگاه داده های template1 و postgres تولید میکند.
بانک اطلاعاتی template1 الگویی از انواع استفاده شده برای ایجاد پایگاه داده های جدید است. همه مواردی که در template1 ذخیره می شوند ، حتی اشیایی که خودتان اضافه می کنید ، هنگام ایجاد در پایگاه داده های جدید قرار می گیرند. بانک اطلاعاتی postgres یک پایگاه داده پیش فرض است که برای استفاده کاربران ، برنامه های کاربردی و برنامه های شخص ثالث طراحی شده است.
بسته Postgres که در مرحله قبل نصب کردیم همراه با یک اسکریپت مفید به نام postgresql-setup است که به مدیریت خوشه پایگاه داده سطح پایین کمک می کند. برای ایجاد یک خوشه پایگاه داده ، اسکریپت را با استفاده از sudo و با گزینه –initdb اجرا کنید:
$ sudo postgresql-setup –initdb

خروجی زیر را مشاهده خواهید کرد:
Output
* Initializing database in ‘/var/lib/pgsql/data’
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

اکنون سرویس PostgreSQL را با استفاده از systemctl شروع کنید:
$ sudo systemctl start postgresql

سپس ، یک بار دیگر از systemctl استفاده کنید تا با بوت شدن سرور این سرویس را فعال کنید:
$ sudo systemctl enable postgresql

این کار خروجی زیر را خواهد داد:
Output
Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service.

اکنون که PostgreSQL به روز و در حال اجرا است، با استفاده از نقش ها یاد خواهیم گرفت که Postgres چگونه کار می کند و تفاوت آن با سیستم های مدیریت پایگاه داده مشابه شما که ممکن است در گذشته استفاده کرده باشید، چیست.
مرحله 3 – استفاده از نقشها و بانکهای اطلاعاتی PostgreSQL
PostgreSQL از مفهومی به نام نقشها (roles) برای مدیریت احراز هویت و مجوزهای کلاینت استفاده می کند. اینها به نوعی شبیه به حسابهای معمولی به سبک یونیکس هستند ، اما Postgres بین کاربران و گروه ها فرق نمی گذارد و در عوض نقش انعطاف پذیر تر را ترجیح می دهد.
پس از نصب ، Postgres برای استفاده از احراز هویت تنظیم میشود ، به این معنی که نقش های Postgres را با یک حساب کاربری سیستم Unix / Linux مرتبط می کند. اگر نقشی در Postgres وجود داشته باشد ، یک نام کاربری یونیکس / لینوکس با همین نام قادر به ورود به عنوان آن نقش است.
روش نصب یک حساب کاربری به نام postgres ایجاد کرده است که با نقش Postgres پیش فرض در ارتباط است. به منظور استفاده از PostgreSQL ، می توانید وارد آن حساب شوید.
چند روش برای استفاده از این حساب برای دسترسی به اعلان PostgreSQL وجود دارد.
انتقال به حساب Postgres
با تایپ کردن دستور زیر به حساب Postgres در سرور مجازی خود سوییچ کنید:
$ sudo -i -u postgres

اکنون می توانید با تایپ این دستور سریعا به اعلان (عکس العمل) Postgres دسترسی پیدا کنید:
[postgres@server ~$] psql

با این کار شما وارد اعلان PostgreSQL می شوید و از اینجا می توانید بلافاصله با سیستم مدیریت بانک اطلاعاتی ارتباط برقرار کنید.
با تایپ کردن دستور زیر از اعلان PostgreSQL خارج شوید:
Postgres=# \q

این دستور شما را به اعلان (prompt) فرمان Linux در حساب postgres برمیگرداند. اکنون با دستور زیر به حساب اصلی خود برگردید:
[postgres@server ~$] exit

دسترسی به یک اعلان Postgres بدون تعویض حساب
همچنین می توانید با استفاده از sudo دستوراتی را با حساب postgres به طور مستقیم اجرا کنید.
به عنوان مثال ، در مثال قبلی ، به شما اعلان شد که ابتدا با سوییچ کردن به کاربر postgres و سپس اجرای psql برای باز کردن سریع Postgres ، به اعلان Postgres دسترسی پیدا کنید. راه دیگر اینکه، می توانید این کار را در یک مرحله با اجرای تک فرمان psql به عنوان کاربر postgres با sudo انجام دهید ، مانند این:
$ sudo -u postgres psql

با این کار شما مستقیماً بدون پوسته واسطه bash وارد Postgres می شوید.
دوباره می توانید با تایپ کردن دستور زیر از بخش Postgres تعاملی خارج شوید:
Postgres=# \q

در این مرحله از حساب Postgres برای دستیابی به اعلان psql استفاده کردید. اما بسیاری از موارد استفاده به بیش از یک نقش Postgres نیاز دارد. برای یادگیری چگونگی پیکربندی نقشهای جدید ، ادامه مطلب را بخوانید.
مرحله 4 – ایجاد نقش جدید
در حال حاضر ، شما فقط نقش Postgres را در پایگاه داده پیکربندی کرده اید. می توانید با استفاده از دستور Createrole نقش های جدیدی را از خط فرمان ایجاد کنید. پرچم –interactive، نام نقش جدید را از شما میخواهد و همچنین میپرسد که آیا مجوزهای superuser دارد یا خیر.
اگر به عنوان حساب postgres وارد شوید ، می توانید با تایپ کردن این دستور کاربر جدیدی ایجاد کنید:
[postgres@server ~$] createuser –interactive

اگر ترجیح می دهید بدون تغییر حساب کاربری خود از sudo برای هر دستور استفاده کنید ، این دستور را تایپ کنید:
$ sudo -u postgres createuser –interactive

این اسکریپت با انتخاب های مختلف اعلان هایی را به شما نشان میدهد و بر اساس پاسخ های شما ، دستورات Postgres لازم را برای ایجاد یک کاربر به مشخصات شما را اجرا می کند. برای این آموزش ، نقشی به نام sammy ایجاد کنید و با وارد کردن y در هنگام درخواست ، امتیازات فوق کاربری به آن بدهید:
Output
Enter name of role to add: sammy
Shall the new role be a superuser? (y/n) y

با وارد کردن برخی پرچم های اضافی می توانید کنترل بیشتری به دست آورید. گزینه ها را با مراجعه به صفحه man برای createuser بررسی کنید:
$ man createuser

نصب شما در Postgres اکنون نقش جدیدی دارد ، اما شما هنوز هیچ پایگاه داده ای اضافه نکرده اید. در بخش بعدی این روند توضیح داده شده است.
مرحله 5 – ایجاد یک پایگاه داده جدید
فرض دیگری که سیستم تأیید اعتبار Postgres بصورت پیش فرض انجام می دهد این است که برای هر نقشی که برای ورود به سیستم استفاده می شود ، آن نقش یک بانک اطلاعاتی با همان نام دارد که می تواند به آن دسترسی داشته باشد.
این بدان معنی است که اگر کاربری که در آخرین بخش ایجاد کرده اید ، Sammy نامیده شود ، آن نقش سعی خواهد کرد به بانک اطلاعاتی وصل شود که به طور پیش فرض نیز sammy نامیده می شود. می توانید با استفاده از دستور createdb چنین بانک اطلاعاتی را ایجاد کنید.
اگر به عنوان حساب postgres وارد شوید ، می توانید چیزی مانند این دستور را تایپ کنید:
[postgres@server ~$] createdb sammy

و اگر ترجیح می دهید بدون تغییر از حساب عادی خود ، از sudo برای هر فرمان استفاده کنید ، تایپ کنید:
$ sudo -u postgres createdb sammy

این انعطاف پذیری در صورت نیاز چندین دیتابیس ایجاد می کند.
اکنون که یک پایگاه داده جدید ایجاد کرده اید ، با نقش جدید خود وارد آن خواهید شد.
مرحله ششم – باز کردن یک اعلان Postgres با نقش جدید
برای ورود به تأیید هویت مبتنی بر شناسایی ، به یک کاربر لینوکس با همان نام و نقش بانک اطلاعاتی Postgres خود نیاز دارید.
اگر یک کاربر مطابق لینوکس در دسترس ندارید ، می توانید با دستور adduser آن را ایجاد کنید. باید این کار را از حساب غیر ریشه خود با امتیازات sudo انجام دهید (به این معنی که به عنوان کاربر postgres وارد نشوید):
$ sudo adduser sammy

به محض در دسترس بودن این حساب جدید ، می توانید با تایپ کردن دستور زیر به دیتابیس وصل شوید:
$ sudo -i -u sammy

psql
یا می توانید این کار را بصورت درون خطی انجام دهید:
$ sudo -u sammy psql

این دستور شما را به طور خودکار وارد می کند.
اگر می خواهید کاربر شما به یک پایگاه داده دیگر متصل شود ، می توانید با قرار دادن پرچم -d و مشخص کردن بانک اطلاعاتی ، این کار را انجام دهید:
[sammy@server ~$] psql -d postgres

پس از ورود به سیستم ، می توانید اطلاعات مربوط به اتصال فعلی خود را با تایپ کردن دستور زیر بررسی کنید:
Sammy=# \conninfo

این کار خروجی زیر را نشان می دهد:
Output
You are connected to database “sammy” as user “sammy” via socket in “/var/run/postgresql” at port “5432”.

این امر در صورت اتصال به پایگاه داده های غیر پیش فرض یا با کاربران غیر پیش فرض مفید است.
با اتصال به پایگاه داده خود ، اکنون می توانید جداول ایجاد و حذف را امتحان کنید.
مرحله 7 – ایجاد و حذف جداول
اکنون که می دانید چگونه به سیستم پایگاه داده PostgreSQL وصل شوید ، می توانید برخی از وظایف اساسی مدیریت Postgres را یاد بگیرید.
ابتدا یک جدول برای ذخیره برخی داده ها ایجاد کنید. به عنوان نمونه ، جدولی را تهیه خواهید کرد که برخی از تجهیزات زمین بازی را شرح می دهد.
ترکیب اصلی این دستور به شرح زیر است:
CREATE TABLE table_name (
column_name1 col_type (field_length) column_constraints,
column_name2 col_type (field_length),
column_name3 col_type (field_length)
);

این دستورات به جدول اسمی می دهند و سپس ستون ها و همچنین نوع ستون و حداکثر طول داده های فیلد را مشخص می کنند. همچنین می توانید محدودیت های جدول را برای هر ستون به صورت اختیاری اضافه کنید.
برای اهداف نمایشی ، یک جدول ساده مانند این ایجاد کنید:
Sammy=# CREATE TABLE playground (

Sammy=# equip_id serial PRIMARY KEY,

Sammy=# type varchar (50) NOT NULL,

Sammy=# color varchar (25) NOT NULL,

Sammy=# location varchar(25) check (location in (‘north’, ‘south’, ‘west’, ‘east’, ‘northeast’, ‘southeast’, ‘southwest’, ‘northwest’)),

Sammy=# install_date date

Sammy=# );

این دستور جدولی تشکیل می دهد که تجهیزات زمین بازی را لیست میکند. با شناسه وسایل شروع میشود که از نوع سریال است. این نوع داده عدد صحیح افزایشی میباشد که به صورت خودکار بالا میرود. همچنین به این ستون همکاری قید فرضی PRIMARY KEY را داده اید، به این معنی که مقادیر باید منحصر به فرد باشند و تهی نباشند.
برای دو ستون (equip_id و install_date) ، دستور طول فیلد را مشخص نمی کند. این امر به این دلیل است که برخی از انواع ستونها به طول مشخص نیاز ندارند زیرا طول با نوع داده مشخص میشود.
دو خط بعدی به ترتیب ستون نوع و رنگ تجهیزات را ایجاد می کنند که هر یک از آنها نمی تواند خالی باشد. خط بعد از اینها یک ستون موقعیت مکانی و محدودیتی ایجاد می کند که نیاز دارد این مقدار یکی از هشت مقدار ممکن باشد. خط آخر یک ستون تاریخ ایجاد می کند که تاریخ نصب تجهیزات را ثبت می نماید.
می توانید جدول جدید خود را با تایپ کردن این دستور مشاهده کنید:
Sammy=# \d

خروجی زیر را نشان می دهد:
Output
List of relations
Schema | Name | Type | Owner
——–+————————-+———-+——-
public | playground | table | sammy
public | playground_equip_id_seq | sequence | sammy
(2 rows)

جدول زمین بازی شما آماده است ، اما چیزی به نام playground_equip_id_seq نیز وجود دارد که از نوع sequence است. در واقع نمایشی از نوع سریال است که شما به ستون equip_id خود داده اید. این متغیر شماره بعدی را در توالی دنبال می کند و به طور خودکار برای ستون های این نوع ایجاد می شود.
اگر می خواهید فقط جدول بدون ترتیب را ببینید ، می توانید تایپ کنید:
Sammy=# \dt

خروجی به شرح زیر است:
Output
List of relations
Schema | Name | Type | Owner
——–+————+——-+——-
public | playground | table | sammy
(1 row)

در این مرحله یک جدول نمونه ایجاد کرده اید. در مرحله بعد ، اضافه کردن ، جستجو و حذف مطالب در آن جدول را امتحان خواهید کرد.
مرحله 8 – افزودن ، جستجو و حذف داده ها در یک جدول
اکنون که جدولی دارید ، می توانید برخی از داده ها را در آن وارد کنید.
به عنوان نمونه ، با فراخوانی جدول مورد نظر برای افزودن داده، نامگذاری ستون ها ، و سپس تهیه داده برای هر ستون ، یک اسلاید و چرخش را اضافه کنید:
Sammy=# INSERT INTO playground (type, color, location, install_date) VALUES (‘slide’, ‘blue’, ‘south’, ‘2017-04-28’);

Sammy=# INSERT INTO playground (type, color, location, install_date) VALUES (‘swing’, ‘yellow’, ‘northwest’, ‘2018-08-16’);

باید هنگام وارد کردن داده ها مراقب باشید تا از چند مشکل معمول خودداری کنید. اولا نام ستون ها را در علامت نقل قول قرار ندهید، اما مقادیر ستونی که وارد می کنید به نقل قول نیاز دارند.
نکته دیگری که باید در نظر داشته باشید این است که برای ستون equip_id مقداری وارد نمی کنید. به این دلیل است که هر زمان که یک ردیف جدید در جدول ایجاد شود ، بطور خودکار تولید می شود.
با تایپ کردن دستور زیر، اطلاعاتی که اضافه کرده اید بازیابی کنید:
Sammy=# SELECT * FROM playground;

خروجی زیر را مشاهده خواهید کرد:
Output
equip_id | type | color | location | install_date
———-+——-+——–+———–+————–
1 | slide | blue | south | 2017-04-28
2 | swing | yellow | northwest | 2018-08-16
(2 rows)

در اینجا ، می بینید که equip_id شما با موفقیت پر شده است و تمام داده های دیگر شما به درستی سازماندهی شده اند.
اگر اسلاید روی زمین بازی متوقف شد و مجبور شدید آن را حذف کنید ، می توانید با تایپ کردن دستور زیر، آن سطر را از جدول خود حذف کنید:
Sammy=# DELETE FROM playground WHERE type = ‘slide’;

جدول را دوباره جستجو کنید:
Sammy=# SELECT * FROM playground;

خروجی زیر را مشاهده خواهید کرد:
Output
equip_id | type | color | location | install_date
———-+——-+——–+———–+————–
2 | swing | yellow | northwest | 2018-08-16
(1 row)

توجه کنید که اسلاید شما دیگر جزئی از جدول نیست.
اکنون که مطالب موجود در جدول خود را اضافه و حذف کرده اید ، می توانید ستون ها را اضافه و حذف کنید.
مرحله 9 – اضافه کردن و حذف ستون ها از یک جدول
پس از ایجاد جدول ، می توانید آن را تغییر دهید تا ستون هایی اضافه یا حذف شوند. برای نمایش آخرین بازدید از هر قطعه تجهیزات ، یک ستون اضافه کنید:
Sammy=# ALTER TABLE playground ADD last_maint date;

اگر اطلاعات جدول خود را دوباره مشاهده کنید ، می بینید که ستون جدید اضافه شده است (اما هیچ داده ای وارد نشده است):
Sammy=# SELECT * FROM playground;

خروجی زیر را مشاهده خواهید کرد:
Output
equip_id | type | color | location | install_date | last_maint
———-+——-+——–+———–+————–+————
2 | swing | yellow | northwest | 2018-08-16 |
(1 row)

حذف ستون به همین سادگی است. اگر متوجه شدید که خدمه کاری شما از یک ابزار جداگانه برای پیگیری تاریخچه نگهداری استفاده می کنند ، می توانید ستون را با تایپ کردن این دستور حذف کنید:
Sammy=# ALTER TABLE playground DROP last_maint;

این ستون last_maint و مقادیر موجود در آن را حذف می کند ، اما تمام داده های دیگر را دست نخورده نگه میدارد.
با افزودن ستونهای اضافه و حذف شده ، می توانید داده های موجود را در مرحله آخر به روز کنید.
مرحله 10 – به روزرسانی داده ها در یک جدول
تاکنون یاد گرفته اید که چگونه می توانید سوابق را به یک جدول اضافه کنید و چگونه آنها را حذف کنید ، اما این آموزش هنوز نحوه تغییر ورودی های موجود را پوشش نداده است.
می توانید مقادیر ورودی موجود را با جستجوی رکورد مورد نظر خود به روز کنید و ستون را روی مقدار مورد نظر خود تنظیم کنید. می توانید سوابق swing  (که مطابق هر نوسان در جدول است) را جستجو کنید و رنگ آن را به قرمز تغییر دهید:
Sammy=# UPDATE playground SET color = ‘red’ WHERE type = ‘swing’;

با جستار دوباره داده ها ، می توانید تأیید کنید که این عملیات با موفقیت انجام شد:
Sammy=# SELECT * FROM playground;

خروجی زیر را مشاهده خواهید کرد:
Output
equip_id | type | color | location | install_date
———-+——-+——-+———–+————–
2 | swing | red | northwest | 2010-08-16
(1 row)

همانطور که می بینید ، اسلاید شما اکنون به رنگ قرمز ثبت شده است.
نتیجه
اکنون PostgreSQL را در سرور مجازی CentOS 8 خود تنظیم کرده اید. با این حال ، هنوز هم موارد بیشتری برای یادگیری در مورد Postgres وجود دارد. در اینجا چند راهنمای دیگر که نحوه استفاده از Postgres را پوشش می دهند آورده شده است:
• مقایسه سیستم های مدیریت پایگاه داده رابطه ای
• جزییات اجرای جستارها در PostgreSQL

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

نصب MariaDB در CentOS 8

MariaDB یک سیستم مدیریت پایگاه داده منبع باز است که معمولاً به عنوان جایگزینی برای بخش MySQL محبوب ترین LAMP (Linux ، Apache ، MySQL ، PHP / Python / Perl) استفاده می شود. در واقع به عنوان جایگزینی برای MySQL در نظر گرفته شده است.
در این آموزش ، نحوه نصب آخرین نسخه MariaDB در سرور مجازی CentOS 8 را توضیح خواهیم داد. اگر میخواهید تفاوت MySQL با MariaDB را بدانید ، MariaDB بسته ارجح است و به جای MySQL یکپارچه عمل میکند. اگر به طور خاص به MySQL احتیاج دارید ، به راهنمای نحوه نصب MySQL در CentOS 8 مراجعه کنید.
پیش نیازها
برای پیروی از این آموزش ، به یک سرور مجازی CentOS 8 با یک کاربر غیر ریشه فعال sudo نیاز دارید. می توانید در مورد راه اندازی یک کاربر با این امتیازات در راهنمای اولیه راه اندازی سرور مجازی در CentOS 8 اطلاعات بیشتری کسب کنید.
مرحله 1 – نصب MariaDB
ابتدا ، از dnf برای نصب بسته MariaDB استفاده کنید:
$ sudo dnf install mariadb-server

از شما خواسته می شود تا این اقدام را تأیید کنید. برای ادامه ، y را فشار داده و enter بزنید.
پس از اتمام نصب ، خدمات را با systemctl شروع کنید:
$ sudo systemctl start mariadb

سپس وضعیت سرویس را بررسی کنید:
$ sudo systemctl status mariadb

Output
● mariadb.service – MariaDB 10.3 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2020-04-03 17:32:46 UTC; 52min ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 4567 (mysqld)
Status: “Taking your SQL requests now…”
Tasks: 30 (limit: 5059)
Memory: 77.1M
CGroup: /system.slice/mariadb.service
└─4567 /usr/libexec/mysqld –basedir=/usr

. . .

Apr 03 17:32:46 centos8-mariadb systemd[1]: Started MariaDB 10.3 database server.

اگر MariaDB با موفقیت شروع شده است ، خروجی باید active (running) را نشان دهد و خط آخر باید چیزی شبیه به این باشد:
Output
Apr 03 17:32:46 centos8-mariadb systemd[1]: Started MariaDB 10.3 database server..

سپس ، بیایید چند لحظه وقت بگذاریم و اطمینان حاصل کنیم که MariaDB از بوت شروع می شود ، با استفاده از دستور systemctl enable:
$ sudo systemctl enable mariadb

Output
Created symlink /etc/systemd/system/mysql.service → /usr/lib/systemd/system/mariadb.service.
Created symlink /etc/systemd/system/mysqld.service → /usr/lib/systemd/system/mariadb.service.
Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariad

اکنون MariaDB داریم که پیاده سازی و پیکربندی شده است. در مرحله بعد ، توجه خود را به ایمنی نصب معطوف خواهیم کرد.
مرحله 2 – ایمن سازی سرور مجازی MariaDB
MariaDB شامل یک اسکریپت امنیتی برای تغییر برخی از گزینه های پیش فرض با ایمنی کمتر برای مواردی مانند ورود به سیستم ریشه از راه دور و کاربران مثال است. برای اجرای اسکریپت امنیتی از این دستور استفاده کنید:
$ sudo mysql_secure_installation

اسکریپت توضیحات مفصلی را برای هر مرحله ارائه می دهد. اولین قدم رمز عبور اصلی را درخواست می کند ، که تنظیم نشده است ، بنابراین ما ENTER را طبق توصیه فشار خواهیم داد. در مرحله بعد ، از شما خواسته می شود که رمزعبور اصلی را تنظیم کنیم. در نظر داشته باشید که این مربوط به کاربر ریشه داده است ، نه کاربر اصلی برای سرور مجازی CentOS شما.

Y را وارد کرده و Enter را وارد کنید تا یک رمز عبور برای کاربر پایگاه داده ریشه وارد کنید ، سپس دستورالعمل ها را دنبال کنید.
پس از به روزرسانی کلمه عبور ، تمام پیشنهادات امنیتی که با فشار دادن y و سپس ENTER دنبال می شوند را می پذیریم. با این کار کاربران ناشناس حذف می شوند ، ورود به سیستم از راه دور غیرمجاز شمرده میشود، پایگاه داده آزمایش حذف میشود و جداول امتیازات مجدد لود میگردد.
اکنون که نصب را ایمن کردیم ، با اتصال به پایگاه داده ، آن را تأیید خواهیم کرد.
مرحله 3 – تست نصب
ما می توانیم با اتصال به ابزار mysqladmin ، یعنی کلاینتی که به شما امکان اجرای دستورات ادمین را می دهد ، نصب خود را تأیید کنیم و در مورد آن اطلاعات کسب کنیم. از دستور زیر برای اتصال به MariaDB به عنوان root (-u root) استفاده کنید، اعلان رمزعبور (-p) ظاهر میشود و نسخه برگردانده میشود.
$ mysqladmin -u root -p version

شما باید خروجی مشابه زیر را ببینید:
Output
mysqladmin Ver 9.1 Distrib 10.3.17-MariaDB, for Linux on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Server version 10.3.17-MariaDB
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 6 min 5 sec

Threads: 7 Questions: 16 Slow queries: 0 Opens: 17 Flush tables: 1 Open tables: 11 Queries per second avg: 0.043
این نشان می دهد که نصب موفقیت آمیز بوده است.
نتیجه
در این راهنما شما MariaDB را برای فعالیت به عنوان یک سرور مجازی SQL نصب کرده اید. در طی مراحل نصب ، سرور مجازی را نیز ایمن می کنید. به صورت اختیاری ، همچنین یک کاربر ادمین معتبر با رمز عبور جداگانه ایجاد کردید.
اکنون که سرور مجازی MariaDB در حال اجرا و ایمن دارید ، در اینجا چند نمونه از مراحل بعدی که می توانید برای کار با سرور مجازی انجام دهید ، آورده شده است:
ممکن است بخواهید بانک اطلاعاتی را وارد و صادر کنید
می توانید MariaDB را در یک نرم افزار بزرگتر مانند Lack Stack قرار دهید: نحوه نصب Linux ، Apache ، MariaDB ، PHP (LAMP stack) در CentOS 7
برای اجازه ترافیک پایگاه داده خارجی ممکن است لازم باشد فایروال firewalld خود را به روز کنید

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

Virtual Network Computing یا VNC یک سیستم اتصال است که به شما امکان می دهد از صفحه کلید و ماوس خود برای تعامل با یک محیط دسکتاپ گرافیکی روی یک سرور مجازی از راه دور استفاده کنید. این امر باعث می شود مدیریت فایل ها ، نرم افزارها و تنظیمات روی یک سرور مجازی از راه دور برای کاربرانی که هنوز از خط فرمان راحت نیستند ، آسان شود.
در این راهنما ، سرور مجازی VNC را روی یک سرور مجازی Debian 10 تنظیم می کنید و از طریق یک تونل SSH با ایمنی به آن وصل می شوید. شما از TightVNC ، یک بسته کنترل از راه دور سریع و سبک استفاده می کنید. این انتخاب اطمینان حاصل خواهد کرد که اتصال VNC ما حتی در اتصالات اینترنت کندتر هموار و پایدار خواهد بود.
پیش نیازها
برای تکمیل این آموزش ، به موارد زیر نیاز دارید:
⦁ یک سرور مجازی Debian 10 که طبق راهنمای تنظیم اولیه سرور مجازی Debian 10 نصب شده، و شامل یک کاربر غیر ریشه با دسترسی sudo و فایروال باشد.
⦁ یک کامپیوتر محلی با یک کلاینت VNC نصب شده که اتصالات VNC را از طریق تونل های SSH پشتیبانی می کند.
o در ویندوز ، می توانید از TightVNC ،RealVNC یا UltraVNC استفاده کنید.
o در macOS ، می توانید از برنامه Screen Sharing داخلی استفاده کنید ، یا می توانید از یک برنامه بین پلتفرمی مانند RealVNC استفاده نمایید.
o در لینوکس ، می توانید گزینه های بسیاری از جمله vinagre ، krdc ، RealVNC یا TightVNC را انتخاب کنید.
مرحله 1 – نصب محیط دسکتاپ و سرور مجازی VNC
به طور پیش فرض ، سرور مجازی Debian 10 با یک محیط دسکتاپ گرافیکی یا سرور مجازی VNC نصب شده همراه نیست ، بنابراین ما با نصب آن ها شروع خواهیم کرد. به طور خاص ، بسته ها را برای جدیدترین محیط دسکتاپ Xfce و بسته TightVNC موجود در مخزن رسمی Debian نصب خواهیم کرد.
در سرور مجازی خود لیست بسته های خود را به روز کنید:
⦁ $ sudo apt update

اکنون محیط دسکتاپ Xfce را روی سرور مجازی خود نصب کنید:
⦁ $ sudo apt install xfce4 xfce4-goodies

در حین نصب از شما خواسته می شود طرح صفحه کلید خود را از لیست گزینه های ممکن انتخاب کنید. موردی را انتخاب کنید که برای زبان شما مناسب باشد و Enter را فشار دهید. نصب ادامه خواهد یافت.
پس از اتمام نصب ، سرور مجازی TightVNC را نصب کنید:
⦁ $ sudo apt install tightvncserver

برای تکمیل پیکربندی اولیه سرور مجازی VNC پس از نصب ، از دستور vncserver برای تنظیم گذرواژه ایمن و ایجاد فایل های پیکربندی اولیه استفاده کنید:
⦁ $ vncserver

از شما خواسته می شود یک رمز ورود را برای دسترسی از راه دور به دستگاه خود وارد کرده و تأیید کنید:
Output
You will require a password to access your desktops.

Password:
Verify:
رمز عبور باید بین شش تا هشت کاراکتر باشد. گذرواژه‌های بیش از 8 کاراکتر به صورت خودکار کوتاه خواهند شد.
پس از تأیید گذرواژه ، می توانید یک گذرواژه view-only ایجاد کنید. کاربرانی که با این رمز ورود به سیستم وارد می شوند ، قادر به کنترل نمونه VNC با ماوس یا صفحه کلید خود نخواهند بود. اگر می خواهید چیزی را با استفاده از سرور مجازی VNC خود به دیگران نشان دهید ، این گزینه مفید است ، اما ضروری نیست.
سپس این فرآیند فایلهای پیکربندی پیش فرض لازم و اطلاعات اتصال را برای سرور مجازی ایجاد می کند:
Output
Would you like to enter a view-only password (y/n)? n
xauth: file /home/sammy/.Xauthority does not exist

New ‘X’ desktop is your_hostname:1

Creating default startup script /home/sammy/.vnc/xstartup
Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log

اکنون بگذارید سرور مجازی VNC را پیکربندی کنیم.
مرحله 2 – پیکربندی سرور مجازی VNC
سرور مجازی VNC باید بداند که در هنگام راه اندازی چه دستوراتی را اجرا می کند. به طور خاص ، VNC باید بداند که به کدام دسکتاپ گرافیکی وصل شود.
این دستورات در یک فایل پیکربندی به نام xstartup در پوشه .vnc تحت دیرکتوری هوم شما قرار دارند. اسکریپت راه اندازی زمانی ایجاد شد که شما در مرحله قبل دستور vncserver را اجرا کردید ، اما ما برای راه اندازی دسکتاپ Xfce ، اسکریپت خودمان را ایجاد خواهیم کرد.
هنگامی که VNC برای اولین بار تنظیم شد ، یک نمونه سرور مجازی پیش فرض را در پورت 5901 راه اندازی می کند. این پورت به عنوان پورت نمایشگر نامیده می شود و توسط VNC به عنوان :1 ارجاع داده می شود. VNC می تواند چندین نمونه در پورت های نمایشگر دیگر مانند: :2 و :3 و غیره راه اندازی کند.
از آنجا که می خواهیم نحوه پیکربندی سرور مجازی VNC را تغییر دهیم ، ابتدا نمونه سرور مجازی VNC را که با استفاده از پورت 5901 در حال اجرا است با دستور زیر متوقف کنید:
⦁ $ vncserver -kill :1

خروجی باید به این شکل باشد ، اگرچه یک PID متفاوت را مشاهده خواهید کرد:
Output
Killing Xtightvnc process ID 17648
قبل از تغییر فایل xstartup ، از فایل اصلی نسخه پشتیبان تهیه کنید:
⦁ $ mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

اکنون یک فایل xstartup جدید ایجاد کرده و آن را در ویرایشگر متن خود باز کنید:
⦁ $ nano ~/.vnc/xstartup

هر زمان که سرور مجازی VNC را شروع یا مجدداً راه اندازی کنید، دستورات موجود در این فایل بطور خودکار اجرا میشوند. برای شروع محیط دسکتاپ خود در صورتی که از قبل شروع نشده است ، به VNC احتیاج داریم. این دستورات را به فایل اضافه کنید:
~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

اولین دستورالعمل موجود در فایل ، xrdb $ HOME / .Xresource ، به چارچوب رابط کاربری گرافیکی VNC میگوید که فایل .Xresource را بخواند. .Xresource جایی است که یک کاربر می تواند تنظیمات خاصی برای دسکتاپ گرافیکی ، مانند رنگ ترمینال ، تم های مکان نما و ارائه فونت ، تغییراتی ایجاد کند. دستور دوم به سرور مجازی می گوید که Xfce را راه اندازی کند ، در این قسمت تمام نرم افزارهای گرافیکی مورد نیاز خود را برای مدیریت راحت سرور مجازی خود پیدا خواهید کرد.
برای اطمینان از اینکه سرور مجازی VNC قادر به استفاده صحیح از این فایل راه اندازی جدید خواهد بود ، باید آن را عملیاتی کنیم.
⦁ $ sudo chmod +x ~/.vnc/xstartup

اکنون ، سرور مجازی VNC را مجدداً راه اندازی کنید.
⦁ $ vncserver

خروجی مشابه این را مشاهده خواهید کرد:
Output
New ‘X’ desktop is your_hostname:1

Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log

با پیکربندی موجود ، بیایید از دستگاه محلی خود به سرور مجازی وصل شویم.
مرحله 3 – اتصال ایمن به دسکتاپ VNC
VNC در هنگام اتصال از پروتکل های ایمن استفاده نمی کند. ما برای اتصال ایمن به سرور مجازی خود از یک تونل SSH استفاده خواهیم کرد و سپس به کلاینت VNC میگوییم که به جای برقراری ارتباط مستقیم از آن تونل استفاده کند.
یک اتصال SSH را در رایانه محلی خود ایجاد کنید که به طور ایمن به اتصال محلی برای VNC منتقل می شود. شما می توانید این کار را از طریق ترمینال در لینوکس یا با دستور زیر در macOS انجام دهید:
⦁ $ ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip

سوئیچ -L اتصالات پورت را مشخص می کند. در این حالت ما پورت 5901 اتصال از راه دور را به پورت 5901 در دستگاه محلی شما وصل می کنیم. سوئیچ -C امکان فشرده سازی را فراهم می سازد ، در حالی که سوئیچ -N به ssh می گوید که ما نمی خواهیم یک دستور از راه دور را اجرا کنیم. سوئیچ -l نام ورود از راه دور را مشخص می کند.
به یاد داشته باشید که sammy و your_server_ip را با نام کاربری غیر ریشه و آدرس IP سرور مجازی خود جایگزین کنید.
اگر از یک سرویس دهنده گرافیکی SSH استفاده می کنید ، مانند PuTTY ، از your_server_ip به عنوان IP اتصال استفاده کنید و localhost: 5901 را به عنوان پورت جدید ارسال شده در تنظیمات تونل SSH برنامه تنظیم کنید.
پس از راه اندازی تونل ، از یک سرویس دهنده VNC برای اتصال به localhost:5901 استفاده کنید. از شما خواسته می شود با استفاده از رمزعبور تنظیم شده در مرحله 1 ، تأیید اعتبار کنید.
پس از اتصال ، دسکتاپ پیش فرض Xfce را مشاهده خواهید کرد.

برای پیکربندی سریع دسکتاپ ، گزینه Use default config را انتخاب کنید.
همانطور که در اینجا مشاهده می شود ، می توانید با file manager یا از خط فرمان به فایلهای دیرکتوری هوم خود دسترسی پیدا کنید:

بر روی دستگاه محلی خود ، CTRL + C را در ترمینال خود فشار دهید تا تونل SSH را متوقف کرده و به اعلان خود بازگردید. این کار بخش VNC شما را نیز قطع می کند.
سپس بیایید سرور مجازی VNC را به عنوان یک سرویس تنظیم کنیم.
مرحله 4 – راه اندازی VNC به عنوان یک سرویس سیستمی
در مرحله بعد ، سرور مجازی VNC را به عنوان یک سرویس سیستمی تنظیم خواهیم کرد تا بتوانیم مانند هر سرویس دیگر ، آن را بنا به نیاز ، راه اندازی ، متوقف و مجدداً راه اندازی کنیم. این کار همچنین تضمین می کند که با ریبوت سرور مجازی شما VNC راه اندازی میشود.
ابتدا با استفاده از ویرایشگر متن مورد علاقه خود ، یک فایل واحد جدید با نام /etc/systemd/system/vncserver@.service ایجاد کنید:
⦁ $ sudo nano /etc/systemd/system/vncserver@.service

نماد @ در انتهای نام به ما اجازه می دهد تا آرگومانی را که می توانیم در پیکربندی سرویس استفاده کنیم ، وارد کنیم. آن را برای مشخص کردن پورت نمایشگر VNC که می خواهیم هنگام مدیریت سرویس استفاده کنیم ، به کار میگیریم.
خطوط زیر را به فایل اضافه کنید. حتماً مقدار User ، Group ، WorkingDirectory و نام کاربری را در مقدار PIDFILE  را تغییر دهید تا با نام کاربری شما مطابقت داشته باشد:
/etc/systemd/system/vncserver@.service
[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=sammy
Group=sammy
WorkingDirectory=/home/sammy

PIDFile=/home/sammy/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

اگر VNC در حال اجرا باشد، فرمان ExecStartPre آن را متوقف می کند. دستور ExecStart ، VNC را شروع می کند و عمق رنگ را روی رنگ 24 بیتی با رزولوشن 1280×800 تنظیم می کند. برای رفع نیازهای خود می توانید این گزینه های راه اندازی را تغییر دهید.
فایل را ذخیره کنید و ببندید.
سپس ، سیستم را از فایل واحد جدید آگاه کنید.
⦁ $ sudo systemctl daemon-reload

فایل واحد را فعال کنید.
⦁ $ sudo systemctl enable vncserver@1.service

1 بعد از علامت @ نشان می دهد که کدام شماره نمایش سرویس باید روی آن ظاهر شود ، همانطور که در مرحله 2 گفته شده، در این حالت پیش فرض: 1 است.
اگر هنوز در حال اجرا است ، نمونه فعلی سرور مجازی VNC را متوقف کنید.
⦁ $ vncserver -kill :1

سپس آن را همانند هر سرویس سیستمی دیگری راه اندازی کنید.
⦁ $ sudo systemctl start vncserver@1

می توانید تأیید کنید که با این دستور شروع شده است:
⦁ $ sudo systemctl status vncserver@1

اگر به درستی شروع شده باشد ، خروجی باید به این شکل باشد:
Output
● vncserver@1.service – Start TightVNC server at startup
Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-10-10 17:56:17 UTC; 5s ago
Process: 935 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
Process: 940 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 :1 (code=exited, status=0/SUCCESS)
Main PID: 948 (Xtightvnc)
. . .

سرور مجازی VNC شما هنگام راه اندازی مجدد دستگاه ، اکنون در دسترس خواهد بود.
دوباره تونل SSH خود را شروع کنید:
⦁ $ ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip

سپس با استفاده از نرم افزار کلاینت VNC خود به localhost: 5901 اتصال جدیدی برقرار کنید تا به دستگاه خود متصل شوید.
نتیجه
اکنون یک سرور مجازی VNC امن در سرور مجازی Debian 10 خود به روز و اجرا کرده اید. اکنون می توانید فایلها ، نرم افزارها و تنظیمات خود را با یک رابط گرافیکی آسان و کاربردی مدیریت کنید و قادر خواهید بود نرم افزارهای گرافیکی مانند مرورگرهای وب را از راه دور اجرا نمایید.

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi
  • ۰
  • ۰

Grafana یک ابزار تجسم و نظارت بر داده های منبع باز است که با داده های پیچیده از منابعی مانند Prometheus ، InfluxDB ، Graphite و ElasticSearch ادغام می شود. Grafana به شما امکان می دهد تا هشدارها ، اعلان ها و فیلترهای موقت را برای داده های خود ایجاد کنید و در عین حال با هم تیمی های خود را از طریق مشخصه های به اشتراک گذاری داخلی آسانتر همکاری کنید.
در این آموزش Grafana را نصب کرده و با یک گواهی SSL و یک پروکسی معکوس Nginx آن را ایمن خواهید کرد. پس از راه اندازی Grafana ، می توانید گزینه احراز هویت کاربر را از طریق GitHub پیکربندی کنید ، که به شما امکان می دهد مجوزهای تیم خود را بهتر سازماندهی کنید.
پیش نیازها
برای دنبال کردن این آموزش ، به موارد زیر نیاز دارید:
⦁ یک سرور مجازی Ubuntu 18.04 با دنبال کردن راهنمای اولیه تنظیم سرور مجازی Ubuntu 18.04 نصب شده باشد، و شامل یک کاربر غیر ریشه با امتیازات sudo و فایروال تنظیم شده با ufw باشد.
⦁ نام دامنه کاملاً ثبت شده. در کل این آموزش از your_domain استفاده می شود. می توانید نام دامنه را در Namecheap خریداری کنید ، به صورت رایگان در Freenom دریافت کنید ، یا از ثبت دامنه مورد نظر خود استفاده کنید.
⦁ سوابق DNS زیر برای سرور مجازی شما تنظیم شده باشد. برای جزئیات بیشتر در مورد چگونگی افزودن آنها می توانید نحوه تنظیم نام میزبان با vpsgol را دنبال کنید.
⦁ یک رکورد A با your_domain که به آدرس IP عمومی سرور مجازی شما نشان می دهد.
⦁ یک رکورد A با www.your_domain که به آدرس IP عمومی سرور مجازی شما اشاره کند.
⦁ Nginx که با پیروی از آموزش نحوه نصب Nginx در اوبونتو 18.04 نصب شده باشد، شامل بلوک سرور مجازی برای دامنه شما.
⦁ بلوک سرور مجازی Nginx که با Let’S Encrypt پیکربندی شده باشد ، که می توانید با دنبال کردن چگونگی ایمن سازی Nginx با Let’s Encrypt در Ubuntu 18.04 تنظیم کنید.
⦁ به صورت اختیاری ، برای تنظیم تأیید هویت GitHub ، به یک حساب GitHub مرتبط با یک سازمان نیاز دارید.
مرحله 1 – نصب Grafana
در این مرحله اول ، Grafana را روی سرور مجازی Ubuntu 18.04 خود نصب خواهید کرد. شما می توانید Grafana را با دانلود مستقیم آن از وب سایت رسمی آن یا از طریق مخزن APT ، نصب کنید. از آنجا که یک مخزن APT نصب و مدیریت به روزرسانی های Grafana را آسان تر می کند ، از این روش در این آموزش استفاده خواهید کرد.
اگرچه Grafana در مخزن رسمی بسته های اوبونتو 18.04 موجود است ، اما نسخه Grafana ممکن است آخرین نسخه نباشد ، بنابراین از مخزن رسمی Grafana استفاده کنید.
کلید Grafana GPG را با wget دانلود کنید ، سپس خروجی را به سمت کلید apt روانه کنید. با این کار کلید به لیست نصب کلیدهای قابل اعتماد APT شما اضافه خواهد شد که به شما امکان می دهد بسته Grafana امضا شده توسط GPG را دانلود و تأیید کنید.
⦁ $ wget -q -O – https://packages.grafana.com/gpg.key | sudo apt-key add –

در این دستور ، گزینه -q پیام به روزرسانی وضعیت را برای wget خاموش می کند ، و -O فایلی را که دانلود کرده اید به ترمینال خروجی می فرستد. این دو گزینه اطمینان حاصل می کنند که فقط محتویات فایل دانلود شده به کلید apt-key اتصال یافته است.
سپس ، مخزن Grafana را به منابع APT خود اضافه کنید:
⦁ $ sudo add-apt-repository “deb https://packages.grafana.com/oss/deb stable main”

حافظه نهانگاه APT خود را برای به روزرسانی لیست های بسته بندی ریفرش کنید:
⦁ $ sudo apt update

سپس ، مطمئن شوید که Grafana از مخزن Grafana نصب خواهد شد:
⦁ $ apt-cache policy grafana

خروجی دستور قبلی به شما می گوید نسخه Grafana را که می خواهید نصب کنید چیست و بسته را از کجا بازیابی خواهید کرد. تأیید کنید که کاندیدای نصب در بالای لیست از مخزن رسمی Grafana در https://packages.grafana.com/oss/deb آمده است.
Output of apt-cache policy grafana
grafana:
Installed: (none)
Candidate: 6.3.3
Version table:
6.3.3 500
500 https://packages.grafana.com/oss/deb stable/main amd64 Packages

اکنون می توانید مراحل نصب را ادامه دهید:
⦁ $ sudo apt install grafana

پس از نصب Grafana ، از systemctl برای راه اندازی سرور مجازی Grafana استفاده کنید:
⦁ $ sudo systemctl start grafana-server

سپس ، با بررسی وضعیت سرویس ، تأیید کنید که Grafana در حال اجرا است:
⦁ $ sudo systemctl status grafana-server

خروجی مشابه این دریافت خواهید کرد:
Output of grafana-server status
● grafana-server.service – Grafana instance
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2019-08-13 08:22:30 UTC; 11s ago
Docs: http://docs.grafana.org
Main PID: 13630 (grafana-server)
Tasks: 7 (limit: 1152)

این خروجی شامل اطلاعاتی در مورد فرآیند Grafana ، از جمله وضعیت آن ، شناسه اصلی فرآیند (PID) و موارد دیگر می باشد. active (running) نشان می دهد که روند صحیح در حال اجرا است.
در آخر ، سرویس را فعال کنید تا به طور خودکار Grafana را از بوت شروع کند:
⦁ $ sudo systemctl enable grafana-server

خروجی زیر را دریافت خواهید کرد:
Output of systemctl enable grafana-server
Synchronizing state of grafana-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable grafana-server
Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /usr/lib/systemd/system/grafana-server.service.

این امر تأیید می کند که systemd  ، پیوندهای سمبولیک لازم را به autostart Grafana ایجاد کرده است.
Grafana هم اکنون نصب و آماده استفاده است. در مرحله بعد ، اتصال خود را با Grafana با یک پروکسی معکوس و گواهی SSL ایمن خواهید کرد.
مرحله 2 – تنظیم پروکسی معکوس
استفاده از گواهینامه SSL اطمینان حاصل می کند که داده های شما با رمزگذاری اتصال به و از Grafana ایمن هستند. اما برای استفاده از این ارتباط ، ابتدا لازم است Nginx را به عنوان یک پروکسی معکوس برای Grafana پیکربندی کنید.
پیکربندی Nginx که هنگام ستاپ بلوک سرور مجازی Nginx با Let’s Encrypt در پیش نیازها ایجاد کردید را باز کنید. می توانید از هر ویرایشگر متنی استفاده کنید ، اما برای این آموزش از nano استفاده خواهیم کرد:
⦁ $ sudo nano /etc/nginx/sites-available/your_domain

بلوک زیر را جای دهید:
/etc/nginx/sites-available/your_domain

location / {
try_files $uri $uri/ =404;
}

از آنجا که قبلاً Nginx را تنظیم کرده اید تا از طریق SSL ارتباط برقرار کند و از آنجا که تمام ترافیک وب به سرور مجازی شما از طریق Nginx عبور می کند ، فقط باید به Nginx بگویید که کلیه درخواست ها را به Grafana ارسال کند ، که بصورت پیش فرض در پورت 3000 اجرا می شود.
خط try_files موجود را در این location block را حذف کرده و آن را با گزینه proxy_pass زیر جایگزین کنید.
/etc/nginx/sites-available/your_domain

location / {
proxy_pass http://localhost:3000;
}

با این کار پروکسی به پورت مناسب نگاشت می شود. پس از اتمام کار ، فایل را با فشار دادن CTRL + X ذخیره کرده و آن را ببندید ، اگر از nano استفاده می کنید ، Y و سپس enter را بزنید.
اکنون ، تنظیمات جدید را آزمایش کنید تا مطمئن شوید همه چیز c است
⦁ $ sudo nginx -t

خروجی زیر را دریافت خواهید کرد:
Output
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

در آخر ، تغییرات را با بارگذاری مجدد Nginx فعال کنید:
⦁ $ sudo systemctl reload nginx

اکنون با نشان دادن مرورگر وب خود به https: // your_domain می توانید به صفحه پیش فرض ورود به سیستم Grafana دسترسی پیدا کنید. اگر نمی توانید به Grafana برسید ، بررسی کنید که فایروال به گونه ای تنظیم شده که در پورت 443 امکان عبور و مرور را فراهم کند و دستورالعمل های قبلی را دوباره ردیابی کنید.
با اتصال به Grafana رمزگذاری شده ، اکنون می توانید اقدامات امنیتی دیگری را با شروع تغییر اعتبارنامه ادمین پیش فرض Grafana ، انجام دهید.
مرحله 3 – به روزرسانی اعتبارات
از آنجا که هر نصب Grafana بصورت پیش فرض از یک مدل اعتبارنامه های اجرایی استفاده می کند ، بهتر است هرچه سریعتر اطلاعات ورود به سیستم را تغییر دهید. در این مرحله ، اعتبارنامه ها را برای بهبود امنیت به روز می کنید.
با رفتن به https: // your_domain از مرورگر وب خود شروع کنید. این صفحه پیش فرض ورود به سیستم را ایجاد می کند که در آن آرم Grafana را مشاهده می کنید ، فرمی که از شما خواسته می شود یک ایمیل یا نام کاربری و رمز عبور وارد کنید، دکمه ورود به سیستم و لینک آیا رمز ورود خود را فراموش کنید؟ را نشان میدهد.

ادمین را در هر دو قسمت User و Password وارد کرده و بر روی دکمه Log (ورود به سیستم) کلیک کنید.
در صفحه بعدی از شما خواسته می شود با تغییر رمز پیش فرض ، حساب خود را ایمن تر کنید:

گذرواژه‌ای را که مایل به استفاده از آن هستید ، در گذرواژه جدید وارد کرده و قسمتهای رمز عبور جدید را تأیید کنید.

از اینجا ، می توانید برای ذخیره اطلاعات جدید روی save کلیک کرده یا skip را فشار دهید تا از این مرحله رد شوید. در صورت skip (پرش)، دفعه بعدی که وارد شوید از شما خواسته می شود گذرواژه را تغییر دهید.
برای افزایش امنیت راه اندازی Grafana ، روی ذخیره کلیک کنید. به صفحه  Home Dashboard باز خواهید گشت:

اکنون با تغییر اعتبارنامه پیش فرض ، حساب خود را ایمن کرده اید. در مرحله بعد ، تغییراتی در پیکربندی Grafana ایجاد خواهید کرد تا هیچ کس نتواند بدون اجازه شما یک حساب Grafana جدید ایجاد کند.
مرحله 4 – غیرفعال کردن ثبت نام های Grafana و دسترسی ناشناس
Grafana گزینه هایی را فراهم می کند که به بازدید کنندگان امکان می دهد برای خود حساب کاربری ایجاد کنند و داشبورد پیش نمایش را بدون ثبت نام مشاهده کنند. وقتی Grafana از طریق اینترنت قابل دسترسی نیست یا وقتی با داده های عمومی مانند وضعیت خدمات کار می کند ، ممکن است بخواهید این ویژگی ها را مجاز کنید. با این حال ، هنگام استفاده از Grafana آنلاین برای کار با داده های حساس ، دسترسی ناشناس می تواند یک مشکل امنیتی باشد. برای برطرف کردن این مشکل ، در پیکربندی Grafana خود تغییراتی ایجاد کنید.
با باز کردن فایل اصلی پیکربندی Grafana برای ویرایش شروع کنید:
⦁ $ sudo nano /etc/grafana/grafana.ini

دستورالعمل allow_sign_up را تحت عنوان [users] قرار دهید:
/etc/grafana/grafana.ini

[users]
# disable user signup / registration
;allow_sign_up = true

با فعال کردن این دستورالعمل ، یک دکمه sign up به صفحه ورود اضافه می شود و به کاربران امکان می دهد ثبت نام کنند و به Grafana دسترسی پیدا کنند.
غیرفعال کردن این ویژگی با false ، دکمه ثبت نام را حذف کرده و امنیت و حریم خصوصی Grafana را تقویت می کند.
با حذف ; در ابتدای خط و سپس تنظیم گزینه روی false، این امکان را لغو کنید.
/etc/grafana/grafana.ini

[users]
# disable user signup / registration
allow_sign_up = false

در مرحله بعد ، دستورالعمل enabled  زیر را تحت عنوان [auth.annam] قرار دهید:
/etc/grafana/grafana.ini

[auth.anonymous]
# enable anonymous access
;enabled = false

تبدیل enabled به true به کاربران غیر ثبت شده دسترسی به داشبورد شما را می دهد. تنظیم این گزینه روی false دسترسی به داشبورد را فقط محدود به کاربران ثبت نام شده میکند.
با حذف ; در ابتدای خط و سپس تنظیم گزینه روی false، این امکان را لغو کنید.
/etc/grafana/grafana.ini

[auth.anonymous]
enabled = false

فایل را ذخیره کنید و از ویرایشگر متن خود خارج شوید.
برای فعال سازی تغییرات ، Grafana را مجدداً راه اندازی کنید:
⦁ $ sudo systemctl restart grafana-server

با بررسی وضعیت سرویس Grafana تأیید کنید که همه چیز کار می کند:
⦁ $ sudo systemctl status grafana-server

مانند گذشته ، خروجی گزارش خواهد داد که Grafana فعال (در حال اجرا( است.
اکنون ، در مرورگر وب خود https: // your_domain را وارد کنید. برای بازگشت به صفحه ورود به سیستم ، نشانگر خود را روی قسمت پایین سمت چپ صفحه نمایشگر در آواتار خود آورده و بر روی گزینه Sign out که ظاهر می شود کلیک کنید.
پس از ورود به سیستم ، مطمئن شوید که هیچ دکمه sign up وجود ندارد و بدون وارد کردن اعتبارات ورود نمی توانید وارد سیستم شوید.
در این مرحله ، Grafana کاملاً پیکربندی شده و آماده استفاده است. در مرحله بعد ، می توانید فرآیند ورود به سیستم خود را با تأیید اعتبار از طریق GitHub ساده کنید.
(اختیاری) مرحله 5 – تنظیم یک برنامه GitHub OAuth
به عنوان یک روش جایگزین برای ورود به سیستم ، می توانید Grafana را برای تأیید اعتبار از طریق GitHub پیکربندی کنید ، که دسترسی به تمام اعضای سازمان های مجاز GitHub را فراهم می کند. این مسئله می تواند به ویژه هنگامی مفید باشد که بخواهید به چندین توسعه دهنده اجازه دهید با متریک ها کار کنند و دسترسی داشته باشند بدون آنکه احتیاج به اعتبار ویژه Grafana داشته باشید.
با ورود به یک حساب GitHub مرتبط با سازمان خود شروع کنید و سپس به صفحه نمایه GitHub خود در https://github.com/settings/profile بروید.
بر روی نام سازمان خود در زیر Organization settings در منوی پیمایش در سمت چپ صفحه کلیک کنید.

در صفحه بعدی ، نمایه سازمان خود را مشاهده خواهید کرد که می توانید تنظیماتی مانند نام صفحه نمایش سازمان ، ایمیل سازمان و URL سازمان خود را تغییر دهید.
از آنجا که Grafana از OAuth – یک استاندارد باز برای دسترسی به اشخاص ثالث از راه دور به منابع محلی – برای تأیید اعتبار کاربران از طریق GitHub استفاده می کند ، باید یک برنامه OAuth جدید در GitHub ایجاد کنید.
روی پیوند OAuth Apps در زیر تنظیمات توسعه (Developer settings) در پایین سمت چپ صفحه نمایش کلیک کنید.
اگر قبلاً هیچ برنامه OAuth مربوط به سازمان خود را در GitHub ندارید ، به شما گفته می شود هیچ برنامه متعلق به سازمان وجود ندارد. در غیر این صورت لیستی از برنامه های OAuth را که قبلاً به حساب شما متصل شده اند ، خواهید دید.
برای ادامه بر روی دکمه Register an application کلیک کنید.
در صفحه بعدی ، جزئیات زیر در مورد نصب Grafana خود را پر کنید:
⦁ Application name – به شما کمک می کند تا برنامه های مختلف OAuth خود را از یکدیگر متمایز کنید.
⦁ Homepage URL – به GitHub می گوید کجا می توانید Grafana را پیدا کنید.https: // your_domain را در این قسمت تایپ کنید و your_domain را جایگزین دامنه خود کنید.
⦁ Application Description – توضیحی را برای هدف برنامه OAuth شما ارائه می دهد.
⦁ Application callback URL – آدرسی است که پس از تأیید اعتبار با موفقیت برای کاربران ارسال می شود. برای Grafana ، این قسمت باید روی https://your_domain/login/github تنظیم شود.
به خاطر داشته باشید که کاربران Grafana که از طریق GitHub وارد سیستم می شوند مقادیری را که در سه قسمت قبلی وارد کرده اید ، مشاهده می کنند ، بنابراین حتماً چیزی معنی دار و مناسب را وارد کنید.
پس از اتمام کار ، فرم چیزی شبیه به این خواهد شد:

روی دکمه سبز ، ثبت نام برنامه کلیک کنید.
اکنون به صفحه ای حاوی Client ID و Client Secret مرتبط با برنامه جدید OAuth خود هدایت می شوید. هر دو مقدار را یادداشت کنید ، زیرا برای تکمیل تنظیمات باید آنها را به فایل اصلی پیکربندی Grafana اضافه کنید.
اخطار: مطمئن شوید که Client ID و Client Secret خود را در یک مکان امن و غیر عمومی نگه دارید ، زیرا می توانند به عنوان پایه حمله قرار بگیرند.

با ایجاد برنامه GitHub OAuth خود ، اکنون پیکربندی مجدد Grafana برای استفاده از GitHub جهت تأیید اعتبار هستید.
(اختیاری) مرحله 6 – پیکربندی Grafana به عنوان یک برنامه GitHub OAuth
برای تکمیل تأیید اعتبار GitHub برای تنظیم Grafana ، اکنون تغییراتی در فایل های پیکربندی Grafana خود اعمال خواهید کرد.
برای شروع ، فایل اصلی پیکربندی Grafana را باز کنید.
⦁ $ sudo nano /etc/grafana/grafana.ini

عنوان [auth.github] را بیابید و با حذف ; در ابتدای هر خط به جز ;team_ids= که در این آموزش تغییر نخواهد کرد ، این بخش را لغو کنید.
در مرحله بعدی ، Grafana را پیکربندی کنید تا از GitHub با مقادیر client_id و client_secret برنامه OAuth شما استفاده کند.
⦁ گزینه enabled و allow_sign_up را روی true تنظیم کنید. این امر تأیید هویت GitHub را انجام می دهد و به اعضای مجاز سازمان اجازه می دهد تا خودشان حساب ایجاد کنند. توجه داشته باشید که این تنظیمات با ویژگی allow_sign_up تحت [users] که در مرحله 4 تغییر کرده اید متفاوت است.
⦁ client_id و client_secret را روی مقادیری که هنگام ایجاد برنامه GitHub OAuth خود قرار داده اید تنظیم کنید.
⦁ •allow _organizations را روی نام سازمان خود تنظیم کنید تا اطمینان حاصل شود که فقط اعضای سازمان شما می توانند عضو و وارد Grafana شوند.
پیکربندی کامل اینگونه به نظر می رسد:
/etc/grafana/grafana.ini

[auth.github]
enabled = true
allow_sign_up = true
client_id = your_client_id_from_github
client_secret = your_client_secret_from_github
scopes = user:email,read:org
auth_url = https://github.com/login/oauth/authorize
token_url = https://github.com/login/oauth/access_token
api_url = https://api.github.com/user
;team_ids =
allowed_organizations = your_organization_name

اکنون به Grafana که همه چیز لازم در مورد GitHub را گفته اید. برای تکمیل ستاپ ، باید تغییر مسیرها را در پشت پروکسی معکوس فعال کنید. این کار با تنظیم یک مقدار root_url تحت عنوان [server] انجام می شود.
/etc/grafana/grafana.ini

[server]
root_url = https://your_domain

پیکربندی خود را ذخیره کرده و فایل را ببندید.
سپس Grafana را مجدداً راه اندازی کنید تا تغییرات فعال شود:
⦁ $ sudo systemctl restart grafana-server

در آخر ، تأیید کنید که سرویس در حال اجرا است.
⦁ $ sudo systemctl status grafana-server

خروجی نشان می دهد که سرویس فعال (در حال اجرا) است.
اکنون با رفتن به https: // your_domain ، سیستم تأیید اعتبار جدید خود را آزمایش کنید. اگر قبلاً وارد Grafana شده اید ، موس خود را روی نماد آواتار در گوشه سمت چپ پایین صفحه حرکت دهید و روی منوی ثانویه که در کنار نام شما ظاهر می شود ، روی Sign Out کلیک کنید.
در صفحه ورود ، زیر دکمه اصلی ورود به سیستم یک بخش جدید مشاهده خواهید کرد که شامل دکمه ورود به سیستم با GitHub با آرم GitHub است.

بر روی دکمه ورود به سیستم با GitHub کلیک کنید تا به GitHub هدایت شوید ، در آنجا وارد حساب GitHub خود شوید و هدف خود را برای تأیید مجوز Grafana را تأیید کنید.
بر روی دکمه سبز ، Authorize your_github_organization کلیک کنید.
توجه: اطمینان حاصل کنید که حساب GitHub شما عضو سازمان تأیید شده شماست و آدرس ایمیل Grafana با آدرس ایمیل GitHub شما مطابقت دارد. اگر سعی کنید با یک حساب GitHub که عضو سازمان تأیید شده شما نیست ، تأیید اعتبار کنید ، یک پیام Login Failed دریافت خواهید کرد و به شما می گوید ، کاربر عضو یکی از سازمان های مورد نیاز نیست.
اکنون با حساب Grafana موجود خود وارد سیستم خواهید شد. اگر برای کاربری که با آن وارد سیستم شده اید قبلا حساب Grafana ایجاد نشده باشد ، Grafana یک حساب کاربری جدید با مجوز Viewer ایجاد می کند ، و اطمینان می دهد که کاربران جدید فقط می توانند از داشبوردهای موجود استفاده کنند.
برای تغییر مجوزهای پیش فرض برای کاربران جدید ، فایل اصلی پیکربندی Grafana را برای ویرایش باز کنید.
⦁ $ sudo nano /etc/grafana/grafana.ini

دستورالعمل auto_assign_org_role را تحت عنوان [users] بیابید و با حذف کردن ; در ابتدای خط آن را لغو کنید.
دستورالعمل را روی یکی از مقادیر زیر تنظیم کنید:
•Viewer  – فقط می تواند از داشبورد موجود استفاده کند
•Editor  – می تواند داشبوردها را استفاده کند، تغییر دهد و اضافه کند
•Admin  – اجازه انجام همه کارها را دارد
این آموزش اختصاص خودکار را به Viewer انجام میدهد:
/etc/grafana/grafana.ini

[users]

auto_assign_org_role = Viewer

پس از ذخیره تغییرات ، فایل را ببندید و مجدداً Grafana را راه اندازی کنید:
⦁ $ sudo systemctl restart grafana-server

وضعیت سرویس را بررسی کنید:
⦁ $ sudo systemctl status grafana-server

مانند گذشته ، وضعیت فعال (در حال اجرا) خواهد بود.
در این مرحله ، شما Grafana را کاملاً پیکربندی کرده اید تا به اعضای سازمان GitHub خود اجازه دهید ثبت نام و استفاده از نصب Grafana را انجام دهند.
نتیجه
در این آموزش Grafana را نصب ، پیکربندی و ایمن سازی کرده اید و همچنین آموخته اید که چگونه به اعضای سازمان خود اجازه دهید تا از طریق GitHub احراز هویت کنند.
برای بسط نصب فعلی Grafana ، به لیست داشبوردهای رسمی و ساخته شده در انجمن مراجعه کنید. برای کسب اطلاعات بیشتر در مورد استفاده از Grafana به طور کلی ، به مطالب رسمی Grafana مراجعه کنید ، یا سایر آموزش های مانیتورینگ ما را مطالعه نمایید.

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

پارامترهای پیش فرض در جاوا اسکریپت  –  اجرای چندین نسخه PHP بر روی یک سرور Debian 10

نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18

پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8  –  تنظیم برنامه Node.js برای تولید در CentOS 7

نصب MariaDB در اوبونتو 18.04  –  ایمن کردن Apache با Let’s Encrypt در Debian 10

نحوه نصب Node.js در CentOS 8  –  بازنویسی URL را با mod_rewrite برای Apache در Debian 10

راه اندازی فایروال با استفاده از firewalld در CentOS 8  –  نصب وب سرور Apache در Debian 10

اضافه کردن و حذف کاربران در CentOS 8 –  نصب Apache Tomcat 9 در Debian 10

نصب و استفاده از PostgreSQL در CentOS 8  –  راه اندازی سرور اولیه با Debian 10

نصب MariaDB در CentOS 8  –  چگونه با JSX عناصر واقعی ایجاد کنیم

نصب و پیکربندی VNC در Debian 10  –  استفاده از سرور از راه دور Docker

نصب و ایمن سازی Grafana در اوبونتو 18  –  نحوه نصب Git در CentOS 8

نصب Git در Debian 10 –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای

نحوه نصب Node.js در Debian 10  –  نصب وب سرور Apache در CentOS 7

نحوه نصب Webmin در Debian 10  –  نصب و پیکربندی Zabbix برای ردیابی ایمن سرور

نصب وردپرس با بانک اطلاعاتی در اوبونتو  – ساخت و استقرار سرور GraphQL با Node.js و MongoDB

نصب پایتون 3 و تنظیم نویسی محلی macOS  – نصب و ایمن سازی phpMyAdmin با Nginx در سرور

نصب Nagios 4 و نظارت بر سرور اوبونتو 18  –  نصب Python 3 و تنظیم یک محیط برنامه نویسی

نحوه نصب R بر روی Debian 10  –  راه اندازی سرور Prisma روی اوبونتو 18.04

نصب و پیکربندی Laravel با LEMP در اوبونتو 18  –  نصب و پیکربندی pgAdmin 4 در Server Mode

نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان – 

 

برچسب‌ها:

  • behnam gol mohamadi