وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

روش تنظیم کلیدهای SSH روی CentOS 8

0 5
زمان لازم برای مطالعه: 3 دقیقه



Secure Shell (SSH) یک پروتکل شبکه رمزنگاری است که برای اتصال ایمن بین مشتری و سرور طراحی شده است.

دو مکانیسم محبوب احراز هویت SSH عبارتند از احراز هویت مبتنی بر رمز عبور و احراز هویت مبتنی بر کلید عمومی. استفاده از کلیدهای SSH به طور کلی امن تر و راحت تر از احراز هویت رمز عبور سنتی است.

این مقاله روش تولید کلیدهای SSH را شرح می دهد روی CentOS 8 سیستم ما همچنین به شما نشان خواهیم داد که چگونه یک احراز هویت مبتنی بر کلید SSH را تنظیم کنید و بدون وارد کردن رمز عبور به سرورهای لینوکس راه دور متصل شوید.

ایجاد کلیدهای SSH روی CentOS

این احتمال وجود دارد که شما قبلاً یک جفت کلید SSH داشته باشید روی شما CentOS ماشین مشتری اگر در حال ایجاد یک جفت کلید جدید هستید، کلید قدیمی بازنویسی می شود.

زیر را اجرا کنید ls
دستور برای بررسی وجود فایل های کلیدی:

ls -l ~/.ssh/id_*.pub

اگر خروجی دستور چیزی شبیه به No such file or directory، یا no matches found یعنی کاربر کلیدهای SSH را ندارد و شما می توانید مرحله بعدی را ادامه دهید و جفت کلید SSH ایجاد کنید.

در غیر این صورت، اگر یک جفت کلید SSH دارید، می توانید از آن یا استفاده کنید backup کلیدهای قدیمی را بالا ببرید و کلیدهای جدید تولید کنید.

برای ایجاد یک جفت کلید جدید 4096 بیتی SSH با آدرس ایمیل خود به عنوان نظر، اجرا کنید:

ssh-keygen -t rsa -b 4096 -C "your_email@domain.com"

از شما خواسته می شود نام فایل را مشخص کنید:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

مطبوعات Enter برای پذیرش محل فایل پیش فرض و نام فایل.

پیشنهاد می‌کنیم بخوانید:  روش نصب آپاچی روی CentOS 7

در مرحله بعد، از شما خواسته می شود که یک عبارت عبور امن را تایپ کنید. اینکه آیا می خواهید از عبارت عبور استفاده کنید، این به شما بستگی دارد. یک عبارت عبور یک لایه امنیتی اضافی اضافه می کند. اگر نمی خواهید از عبارت عبور استفاده کنید، کافی است فشار دهید Enter.

Enter passphrase (empty for no passphrase):

کل تعامل به این صورت است:

یک جفت کلید SSH جدید ایجاد کنید

برای تأیید اینکه جفت کلید SSH جدید شما ایجاد شده است، تایپ کنید:

ls ~/.ssh/id_*
/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

خودشه. شما با موفقیت یک جفت کلید SSH ایجاد کردید روی شما CentOS ماشین مشتری

کلید عمومی را در سرور کپی کنید

اکنون که جفت کلید SSH ایجاد شده است، گام بعدی این است که کلید عمومی را در سروری که می خواهید مدیریت کنید کپی کنید.

ساده ترین و توصیه شده ترین راه برای کپی کردن کلید عمومی در سرور راه دور استفاده از آن است ssh-copy-id سودمندی در ماشین محلی شما terminal نوع:

ssh-copy-id remote_username@server_ip_address

دستور از شما می خواهد که وارد شوید remote_username کلمه عبور:

remote_username@server_ip_address's password:

پس از احراز هویت کاربر، محتوای فایل کلید عمومی (~/.ssh/id_rsa.pub) به کاربر راه دور اضافه می شود ~/.ssh/authorized_keys فایل، و اتصال بسته خواهد شد.

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'username@server_ip_address'"
and check to make sure that only the key(s) you wanted were added.

اگر ssh-copy-id در دسترس نیست روی کامپیوتر محلی خود، از دستور زیر برای کپی کردن کلید عمومی استفاده کنید:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

با استفاده از کلیدهای SSH وارد سرور خود شوید

پس از انجام مراحل بالا، باید بتوانید بدون درخواست رمز عبور وارد سرور راه دور شوید.

برای تأیید آن، سعی کنید از طریق SSH به سرور خود وارد شوید:

ssh remote_username@server_ip_address

اگر رمز عبور برای کلید خصوصی تنظیم نکرده اید، بلافاصله وارد سیستم خواهید شد. در غیر این صورت از شما خواسته می شود که عبارت عبور را وارد کنید.

پیشنهاد می‌کنیم بخوانید:  روش نصب Anaconda در CentOS 8

غیرفعال کردن احراز هویت رمز عبور SSH

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

قبل از ادامه، مطمئن شوید که می‌توانید بدون رمز عبور به عنوان کاربر وارد سرور خود شوید sudo امتیازات .

برای غیرفعال کردن احراز هویت رمز عبور SSH مراحل زیر را دنبال کنید:

  1. وارد سرور راه دور خود شوید:

    ssh sudo_user@server_ip_address
  2. فایل پیکربندی SSH را باز کنید /etc/ssh/sshd_config با ویرایشگر متن خود:

    sudo nano /etc/ssh/sshd_config
  3. دستورالعمل های زیر را جستجو کنید و به صورت زیر اصلاح کنید:

    /etc/ssh/sshd_config
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    UsePAM no
  4. پس از اتمام کار فایل را ذخیره کنید و سرویس SSH را با تایپ کردن مجدد راه اندازی کنید:

    sudo systemctl restart ssh

در این مرحله، احراز هویت مبتنی بر رمز عبور غیرفعال است.

نتیجه

ما به شما نشان دادیم که چگونه یک جفت کلید SSH جدید ایجاد کنید و یک احراز هویت مبتنی بر کلید SSH را تنظیم کنید. می توانید از یک کلید برای مدیریت چندین سرور راه دور استفاده کنید. شما همچنین یاد گرفته اید که چگونه احراز هویت رمز عبور SSH را غیرفعال کنید و یک لایه امنیتی اضافی به سرور خود اضافه کنید.

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

اگر سوال یا بازخوردی دارید، در کامنت بگذارید.

امنیت centos ssh
برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-31 22:28:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید