آموزش تنظیم کلیدهای SSH

آموزش تنظیم کلیدهای SSH

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

در صورتی که قصد خرید سرور مجازی یا سرور اختصاصی را دارید می توانید از روناک هاست بهترین سرور اختصاصی را خریداری کنید.

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

قبل از شروع این آموزش شما به موارد زیر نیاز دارید:

  • دسترسی به یک دستگاه سرور مجازی
  • دسترسی به یک ریموت سرور
  • ترمینال مناسب برای اتصال SSH

مرحله 1 – ساخت و تولید کلیدهای SSH

شما می توانید کلیدهای RSA را در هر دو سیستم ویندوز و لینوکس/یونیکس با استفاده از هر نوع محیط ترمینالی که سرور مجازی شما همراه است، تولید و تنظیم کنید.

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

آموزش تنظیم کلیدهای SSH
آموزش تنظیم کلیدهای SSH

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

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

ssh-keygen -t rsa

پس از وارد کردن این دستور، چند سوال جدید ظاهر می شود:

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

به طور کلی توصیه می شود آن را به سادگی رها کنید و بدون تایپ چیزی ENTER را فشار دهید ، تا مولد کلید بتواند جفت کلید را در مکان پیش فرض ایجاد کند (در این آموزش من یک نام دیگر tut_id وارد کردم تا از کلیدهای تکراری جلوگیری شود، زیرا سرور مجازی من قبلاً یک کلید id_rsa تولید کرده بود). دو سوال که ظاهر می شود:

Enter passphrase (empty for no passphrase):

به دنبال:

Enter same passphrase again:

برای راحتی کار می توانید این دو گزینه را خالی بگذارید و کلید اینتر را فشار دهید. به این ترتیب، پس از تنظیم کلیدها با سرور ریموت، نیازی به استفاده از هیچ نوع رمز عبوری برای ورود به آن نخواهید داشت. شما به سادگی دستور ssh user@serverip را وارد می‌کنید و تا زمانی که کلیدها هستند، شما می توانید وارد سرور شوید. اما اگر حتی به امنیت بیشتری نیاز دارید، می توانید یک عبارت عبور را در این قسمت وارد کنید. اگر این گزینه را انتخاب کنید، هر بار که به دستگاه از راه دور متصل می شوید، باید رمز عبور را وارد کنید.

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

آموزش تنظیم کلیدهای SSH
آموزش تنظیم کلیدهای SSH

قطعا محیط ترمنیال و همچنین اثر انگشت کلید شما با این تصویر متفاوت است.

نکته مهم! دو کلید در اینجا ایجاد شده است (خصوصی و عمومی): tut_id و tut_id.pub (در سیستم شما باید id_rsa و id_rsa.pub باشد). از فایلی با نام id_rsa (این کلید خصوصی است) بسیار مراقب کنید، آن را فقط در سرور مجازی خود داشته باشید و به کسی ندهید.

فایل دیگر، id_rsa.pub باید در سرور ریموت شما آپلود شود. برای مثال، اگر شما و دوستتان روی یک پروژه در یک سرور ریموت کار می کنید، هر دو می توانید کلیدهای عمومی خود را در آن سرور راه دور قرار دهید. در مرحله بعدی نحوه انجام این کار را خواهیم آموخت.

مرحله 2 – کپی کردن کلید عمومی در سرور ریموت

پس از تولید جفت کلید RSA، باید کلید عمومی خود را در سرور مجازی ریموت قرار دهیم.

یک دستور ساده وجود دارد که کلید عمومی شما را مستقیماً در فایل authorized_keys سرور مجازی قرار می دهد (این فایل تمام کلیدهای عمومی را نگه می دارد:

ssh-copy-id user@serverip

در اینجا به جای serverip، باید آدرس IP سرور مجازی خود را وارد کنید و به جای user، نام کاربری سروری را که به آن متصل هستید وارد کنید.

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

The authenticity of host ‘Server’s IP address’ can’t be established.

RSA key fingerprint is …

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

Yes را در خط فرمان تایپ کنید و ENTER را بزنید. این پیام فقط اولین باری که این عمل را انجام می دهید ظاهر می شود.

پیام دیگری ظاهر می شود:

Warning: Permanently added ‘SERVER IP’ (RSA) to the list of known hosts.

user@serverip’s password:

در اینجا باید رمز عبور کاربر سرور مجازی خود را وارد کنید (در اکثر موارد نام کاربری root است). پس از وارد کردن رمز عبور، اساساً باید همین باشد. با پیام دیگری از شما استقبال می شود:

Now try logging into the machine, with “ssh ‘user@serverip'”, and check in:

~/.ssh/authorized_keys*

to make sure we haven’t added extra keys that you weren’t expecting.

چون کلید عمومی جدید به سرور مجازی شما اضافه شده است. اکنون هر بار که وارد سرور خود می‌شوید، رمز عبور از شما درخواست نمی‌شود (مگر اینکه یک عبارت عبور برای کلید RSA خود در فرآیند تولید تنظیم کنید).

نتیجه گیری

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

 

 

 

 

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *