منو سایت

  • خانه
  • وبلاگ
  • با نحوه تنظیم کلیدهای SSH در اوبونتو آشنا شوید

با نحوه تنظیم کلیدهای SSH در اوبونتو آشنا شوید

 تاریخ انتشار :
/
  وبلاگ
با نحوه تنظیم کلیدهای SSH در اوبونتو آشنا شوید

Secure Shell یا SSH یک پروتکل رمزگذاری شده است که به کاربران اجازه می دهد به طور ایمن به یک کامپیوتر راه دور از طریق یک شبکه ناامن دسترسی داشته باشند. اگرچه SSH از احراز هویت مبتنی بر رمز عبور پشتیبانی می کند، معمولاً توصیه می شود به جای آن از کلیدهای “SSH” استفاده کنید. کلیدهای SSH راه امن تری برای دسترسی به سرور “SSH” هستند. زیرا آنها در برابر حملات متداول هک رمز عبور آسیب پذیر نیستند.

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

تنظیم کلیدهای SSH مرحله 1. جفت کلید ایجاد کنید

اولین مرحله ایجاد یک جفت کلید در ماشین کاربر (کلاینت) است. دستور زیر را در خط فرمان محلی خود وارد کنید:

ssh-keygen -t ed25519
Output
Generating public/private ed25519 key pair.

سپس تأیید می‌کنید که فرآیند تولید کلید آغاز شده است و اطلاعاتی از شما خواسته می‌شود که بعداً درباره آن صحبت خواهیم کرد.

برای آشنایی کامل با سرویس SSH، مقاله زیر را از دست ندهید.

سرویس SSH و برخی تنظیمات امنیتی را در آن وارد کنید

توجه: اگر در سیستم قدیمی‌تری هستید که از ایجاد جفت کلید ed25519 پشتیبانی نمی‌کند یا سروری که به آن متصل می‌شوید از آن پشتیبانی نمی‌کند، باید یک جفت کلید rsa قوی ایجاد کنید:

ssh-keygen -t rsa -b 4096

این دستور -t پرچم “type” را به rsa تغییر می دهد و پرچم -b 4096 “bit” را برای ایجاد یک کلید 4096 بیتی اضافه می کند.

کلید ssh چیست؟

با ایجاد جفت کلید، کلیدهای SSH را پیکربندی کنید

کلیدهای SSH را تنظیم کنید مرحله 2. کلیدها را پیدا کنید

اولین دستور دستور “ssh-keygen” از شما می‌پرسد که کلیدها را کجا ذخیره کنید:

Output
Enter file in which to save the key (/home/sammy/.ssh/id_ed25519):

در اینجا می توانید “Enter” را فشار دهید تا فایل ها در محل پیش فرض دایرکتوری SSH در فهرست اصلی خود ذخیره شوند. همچنین می توانید با تایپ آن پس از درخواست و فشردن «Enter» نام یا مکان دیگری را برای فایل انتخاب کنید.

کلیدهای SSH را تنظیم کنید مرحله 3. یک رمز عبور ایجاد کنید

این دومین و آخرین درخواست از ssh-keygen است که از شما می خواهد رمز عبور را وارد کنید:

Output
Enter passphrase (empty for no passphrase):

این شما هستید که تصمیم می گیرید از Passphrase استفاده کنید یا نه، که ما به شدت توصیه می کنیم. امنیت یک جفت کلید، صرف نظر از روش رمزگذاری، همچنان به این واقعیت بستگی دارد که برای دیگران در دسترس نباشد. اگر یک کلید خصوصی بدون رمز عبور به کاربران غیرمجاز ارائه شود، آنها می توانند به هر سروری که با کلید عمومی پیکربندی می کنید وارد شوند.

مشکل اصلی داشتن رمز عبور (نوشتن) را می توان با کمک سرویس ssh-keygen برطرف کرد که به طور موقت کلید قفل نشده شما را ذخیره می کند و آن را در دسترس مشتری SSH قرار می دهد. بسیاری از این عوامل با زنجیره کلید اصلی سیستم عامل شما سازگار است، که باز کردن قفل را آسان تر می کند.

برای آموزش نصب SSH در اوبونتو از طریق LAN و همچنین غیرفعال کردن آن، مقاله زیر را مطالعه کنید.

آموزش نصب و غیرفعال کردن SSH در اوبونتو

به طور خلاصه، کل فرآیند تولید کلید به شرح زیر است:

ssh-keygen -t ed25519
Output
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/sammy/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/sammy/.ssh/id_ed25519
Your public key has been saved in /home/sammy/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:EGx5HEXz7EqKigIxHHWKpCZItSj1Dy9Dqc5cYae+1zc [email protected]
The key's randomart image is:
+--[ED25519 256]--+
| o+o o.o.++      |
|=oo.+.+.o  +     |
|*+.oB.o.    o    |
|*. + B .   .     |
| o. = o S . .    |
|.+ o o . o .     |
|. + . ... .      |
|.  . o. . E      |
| .. o.   . .     |
+----[SHA256]-----+

کلید عمومی اکنون در /home/sammy/.ssh/id_ed25519.pub و کلید خصوصی در /home/sammy/.ssh/id_ed25519 است.

کلیدهای SSH را تنظیم کنید مرحله 4. کلید عمومی را در سرور خود کپی کنید

پس از ایجاد جفت کلید، کلید عمومی را روی سروری که می خواهید به آن متصل شوید قرار دهید. می توانید کلید عمومی را با دستور ssh-copy-id در فایل authorized_keys روی سرور کپی کنید. حتماً نام کاربری و آدرس نمونه را جایگزین کنید:

ssh-copy-id [email protected]_server_address

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

در اینجا یک آموزش کامل در مورد نحوه استفاده از SSH در PowerShell آورده شده است.

از SSH در PowerShell استفاده کنید

مرحله 5. غیرفعال کردن احراز هویت SSH بر اساس رمز عبور (اختیاری)

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

برای غیرفعال کردن احراز هویت مبتنی بر رمز عبور SSH، فایل پیکربندی SSH را باز کنید که معمولاً در آدرس زیر قرار دارد:

sudo nano /etc/ssh/sshd_config

این دستور فایل را در ویرایشگر متن نانو باز می کند. خطی را از فایل حاوی PasswordAuthentication بیابید (اگر خطی وجود ندارد، آن را ایجاد کنید). مطمئن شوید که “#” در ابتدای خط نظر وجود ندارد و آن را به “no” تغییر دهید:

PasswordAuthentication no

پس از اتمام، فایل را ذخیره و ببندید. در ویرایشگر نانو، از “CTRL + O” برای ذخیره استفاده کنید. “Enter” را برای تایید نام فایل و سپس “CTRL + X” را برای خروج فشار دهید. برای اعمال این تغییرات، سرویس SSH را دوباره بارگیری کنید:

sudo systemctl reload sshd

قبل از ترک جلسه SSH فعلی خود، یک اتصال آزمایشی به ترمینال دیگری برقرار کنید تا مطمئن شوید که متصل هستید.

کلیدهای SSH را در اوبونتو تنظیم کنید

چگونه کلیدهای SSH را در اوبونتو پیکربندی کنم؟

برای افزایش امنیت سرور CentOS خود می توانید پورت SSH روی آن را تغییر دهید. مقاله زیر یک درس کامل در این مورد است.

پورت SSH را در CentOS Linux تغییر دهید

نتایجی که اظهار شده

در آموزش تنظیم کلید SSH، ما یک جفت کلید SSH ایجاد کردیم و کلید عمومی خود را در یک سرور کپی کردیم و (در صورت لزوم) احراز هویت مبتنی بر رمز عبور را کاملاً غیرفعال کردیم.

سوالات متداول

1. کلید عمومی و خصوصی SSH چگونه کار می کند؟

  • یک جفت کلید ایجاد کنید.
  • کلید عمومی را به سرور بدهید.
  • برای احراز هویت، سرور از شما می خواهد که ثابت کنید یک کلید خصوصی دارید که با کلید عمومی مطابقت دارد.
  • با ارائه آن، شما ثابت می کنید که مالک کلید خصوصی هستید.

2. کلیدهای SSH در کجا ذخیره می شوند؟

به طور پیش فرض، کلیدها در دایرکتوری ~ / هستند. ssh در فهرست اصلی کاربر ذخیره می شود. کلید خصوصی id_rsa با کلید عمومی مرتبط با آن به نام id_rsa. میخانه حضور دارد.

3. چگونه کلید SSH را کپی کنیم؟

  • در پنجره ترمینال، دستور معکوس را وارد کنید: ssh-keygen –t rsa.
  • برای تولید کلید، دستورات را دنبال کنید. اکنون باید یک نام فایل و رمز عبور ایجاد کنید. سپس کلیدهای عمومی و خصوصی تولید می شوند.

با استفاده از دستور معکوس کلید عمومی را در تمام 90 کامپیوتر کپی کنید:

ssh-copy-id username @ node_name

{“@context”: “https://schema.org”، “@type”: “FAQPage”، “mainEntity”: [{
“@type”: “Question”,
“name”: “کلید عمومی و خصوصی SSH چطور کار می‌کند؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “یک جفت کلید ایجاد کنید.
کلید عمومی را به سرور بدهید.
برای احراز هویت، سرور از شما می‌خواهد که ثابت کنید کلید خصوصی مطابق با کلید عمومی را دارید.
با ارائه آن، ثابت می‌کنید که کلید خصوصی را دارید.”
}
},{
“@type”: “Question”,
“name”: “کلیدهای SSH کجا ذخیره می‌شوند؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “به‌طور پیش‌فرض، کلیدها در دایرکتوری ~/. ssh در دایرکتور هوم کاربر ذخیره می‌شوند. کلید خصوصی id_rsa با کلید عمومی وابسته به آن با نام id_rsa. Pub حضور دارد.”
}
},{
“@type”: “Question”,
“name”: “چگونه SSH key را کپی کنم؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “در پنجره ترمینال، کامند مقابل را وارد کنید: ssh-keygen –t rsa.
promptها را دنبال کنید تا کلید ساخته شود. حال باید File Name و Passphrase تهیه کنید. درادامه، کلیدهای Public‌ و Private ساخته می‌شوند.

با استفاده از دستور مقابل، کلید عمومی را در تمامی کامپیوترهای نود کپی کنید:

ssh-copy-id username @ node_name”
}
}]
}

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