سرور ساعتی ایران و خارج + تست رایگان

ایجاد SSH Key در Ubuntu

در مرکز محتوای سرور دات آی آر

ایجاد یک اتصال SSH (Secure Shell) برای ورود به سرور و مدیریت موثر یک سرور راه دور امری ضروری است. کلیدهای رمزگذاری‌شده یا به عبارتی (Encrypted Keys)مجموعه‌ای از مجوزهای دسترسی هستند که برای ایجاد یک اتصال Secure استفاده می‌شوند که در این مقاله به شما توضیح می‌دهیم که چگونه SSH key را در اوبونتو تولید کنید. ما همچنین در توضیحات تنظیم احراز هویت مبتنی بر SSH Key را برای اتصال به سرور بدون نیاز به رمز عبور پوشش خواهیم داد.

create ssh key to ububntu

 

برای ایجاد SSH Key نیاز است موارد زیر را با هم مرور کنیم:

  • یک سرور با سیستم عامل ابونتو داشته باشید.
  • ایجاد یک یوزر با دسترسی Sudo
  • دسترسی SSH یا ترمینال

 

ایجاد SSH Key در Ubuntu

 
قدم اول: Pair را در SSH key ایجاد کنید.

در سیستم کلاینت خود -سیستمی که برای اتصال به سرور استفاده می‌کنید- باید یک Pair یا جفت SSH Key ایجاد کنید.

برای ایجاد Pair در  کد  SSH Key ، دستورات زیر را وارد کنید:

mkdir –p $HOME/.ssh

chmod 0700 $HOME/.ssh

ssh-keygen

این دستور یک دایرکتوری مخفی برای ذخیره کلیدهای SSH شما و تغییر مجوزهای آن دایرکتوری ایجاد می‌کند. دستور SSH-Keygen یک جفت کلید 4096 بیتی RSA ایجاد می‌کند.

بهتره برای امنیت بیشتر از  RSA4096 استفاده کنید:

ssh –keygen –t rsa 4096

اگر قبلاً یک Key Pair ایجاد کرده‌اید، از شما خواسته می‌شود که آن‌ها را بازنویسی کنید و آن کلیدهای قدیمی دیگر کار نخواهند کرد. از این رو سیستم از شما می‌خواهد که Password به عنوان یک لایه امنیتی اضافی ایجاد کنید. یک Password به یادماندنی وارد کنید و Enter را فشار دهید.

 

قدم دوم: Public Key را در سرور ابونتوی خود کپی کنید.

در ابتدا آدرس IP سرور اوبونتو را که می‌خواهید به آن متصل شوید، دریافت کنید.

کامند زیر را نیز در محیط SSH اجرا کنید.

ip a

ip a command

در سیستم کلاینت از دستور ssh-copy-idبرای کپی‌کردن اطلاعات هویتی در سرور اوبونتو استفاده کنید.

 

server_IP را با آدرس IP واقعی سرور خود جایگزین کنید و اگر این اولین باری است که به سرور متصل می‌شوید، ممکن است پیامی مبنی بر این که صحت هاست ثابت نمی‌شود را مشاهده کنید:

The authenticity of host '192.168.0.15 (192.168.0.15)' can't be established.


ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.


?Are you sure you want to continue connecting (yes/no)

Yes را تایپ کنید و سپس Enter بزنید.

در این سیستم، کلاینت شما را برای کلید id_rsa.pub که قبلا تولید شده بود، بررسی می‌کند. سپس از شما می‌خواهد که رمز عبور حساب کاربری سرور را وارد کنید. آن را تایپ کنید (سیستم رمز عبور را نمایش نمی دهد) و Enter را فشار دهید.

سیستم محتویات  ~/.ssh/id_rsa.pub را از سیستم کلاینت در دایرکتوری ~/.ssh/authorized_keys سیستم سرور کپی می‌کند.

سیستم شما باید عبارت زیر را نمایش دهد:

Number of key(s) added: 1

روش جایگزین برای کپی دستی SSH Key

اگر سیستم شما دستور ssh-copy-id را ندارد، می‌توانید کلید را به صورت دستی روی SSH کپی کنید و از دستور زیر استفاده کنید.

cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

 
قدم سوم: Log In To The Remote Server

برای ورود به سرور، دستور زیر را وارد کنید.

ssh username@server_IP

سیستم نباید رمز عبور بخواهد، زیرا در حال مذاکره با یک اتصال امن با استفاده ازSSH Key است. اگر از یک Password امنیتی استفاده کرده‌اید، از شما خواسته می‌شود که آن را وارد کنید. پس از انجام این کار، وارد سیستم می‌شوید

نکته:اگر این اولین باری است که وارد سرور می‌شوید، ممکن است پیامی مشابه پیام قسمت دوم مشاهده کنید. از شما می‌پرسد که آیا مطمئن هستید که می‌خواهید وصل شوید - Yes را تایپ کرده و Enter را فشار دهید.
 
قدم چهارم:Disable Password Authentication

فایل sshd_config را Edit کنید:

sudo nano /etc/ssh/sshd_config

فایل را جستجو کنید و گزینه PasswordAuthentication را پیدا کنید.

آن را ویرایش کنید و مقدار آن را به No تغییر دهید.

PasswordAuthentication no

فایل را ذخیره کرده و خارج شوید، سپس سرویس SSH را مجددا راه‌اندازی کنید.

sudo systemctl restart ssh

قبل از اینکه Session را ببندید، اطمینان حاصل کنید که SSH هنوز کار می‌کند:

ssh username@server_IP

اگر همه چیز درست شد، می‌توانید به آن خاتمه دهید و به طور عادی کار را از سر بگیرید.

اشتراک گذاری در linkedin

به تیم متخصص ما اعتماد کنید!

تخفیف مخاطبین مرکز محتوا: Blog01

از کد Blog01 می‌تونید برای خرید اشتراک خدمات سرور مجازی و هاست استفاده کنید و از %10 تخفیف تو سفارش این خدمات بهره‌مند بشید!

محتوای مقاله مفید بود؟

0 0 رای ها
این مقاله چطور بود؟
اشتراک در
اطلاع از

0 دیدگاه
بازخوردهای آنلاین
مشاهده همه دیدگاه ها

به تیم متخصص ما اعتماد کنید!

تخفیف مخاطبین مرکز محتوا: Blog01

از کد Blog01 می‌تونید برای خرید اشتراک خدمات سرور مجازی و هاست استفاده کنید و از %10 تخفیف تو سفارش این خدمات بهره‌مند بشید!