آموزش تنظیم SSH Keys در اوبونتو 20.04
Secure Shell (SSH) یک پروتکل رمزنگاری شبکه است که برای اتصال ایمن بین مشتری و سرور مورد استفاده قرار می گیرد و از مکانیسم های مختلف تأیید اعتبار پشتیبانی می کند.
دو مکانیسم مشهور عبارتند از تأیید اعتبار کلمه عبور و تأیید اعتبار عمومی مبتنی بر کلید. استفاده از کلیدهای SSH نسبت به احراز هویت سنتی رمز عبور ایمن تر و راحت تر است.
در این آموزش ، نحوه تولید کلیدهای SSH در دستگاه های اوبونتو 20.04 را مرور خواهیم کرد. ما همچنین به شما روش تنظیم احراز هویت مبتنی بر کلید SSH را نشان می دهیم و بدون وارد کردن رمز عبور به سرورهای راه دور لینوکس خود متصل می شوید.
ایجاد کلیدهای SSH در اوبونتو
قبل از ایجاد یک جفت کلید جدید SSH ، ابتدا کلیدهای SSH موجود را در دستگاه buntu client خود بررسی کنید. می توانید این کار را با اجرای دستور ls زیر انجام دهید:
ls -l ~/.ssh/id_*.pub
اگر دستور فوق چیزی را چاپ کند مانند No such file or directory
و یا no matches found
، به این معنی است که شما کلید SSH در دستگاه مشتری ندارید و می توانید مرحله بعدی را انجام داده و یک جفت کلید SSH تولید کنید.
اگر کلیدهای موجود وجود دارد ، می توانید از آن ها استفاده کنید و مرحله بعدی را پشت سر بگذارید یا از کلیدهای قدیمی نسخه پشتیبان تهیه کنید و کلیدهای جدید تولید کنید.
با تایپ کردن دستور زیر ، یک جفت کلید جدید 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
فشار دهید تا مکان پیش فرض فایل و نام پرونده را بپذیرید.
در مرحله بعد ، از شما خواسته می شود یک کلمه عبور ایمن تایپ کنید. این که آیا شما می خواهید از کلمه عبور استفاده کنید ، بستگی به شما دارد. اگر استفاده از عبارت عبور انتخاب کنید، یک لایه امنیتی اضافی دریافت خواهید کرد.
Enter passphrase (empty for no passphrase):
اگر نمی خواهید از عبارت عبور استفاده Enter
فشار دهید.
برای تأیید ایجاد SSH key جدید ، تایپ کنید:
ls ~/.ssh/id_*
/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub
یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.
وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.
کلید عمومی را در سرور اوبونتو کپی کنید
اکنون که جفت کلید SSH خود را ایجاد کردید ، مرحله بعدی کپی کردن کلید عمومی روی سرور مورد نظر برای مدیریت است.
ساده ترین و توصیه شده ترین روش برای کپی کردن کلید عمومی خود بر روی سرور ، استفاده از ابزاری به نام ssh-copy-id
. در ترمینال دستگاه لوکال شماست:
ssh-copy-id remote_username@server_ip_address
از شما خواسته می شود رمز ورود نام کاربری را وارد کنید:
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
اگر یک عبارت عبور برای کلید خصوصی تنظیم نکرده اید ، بلافاصله وارد سیستم می شوید. در غیر اینصورت از شما خواسته می شود که عبارت عبور را وارد کنید.
غیرفعال کردن تأیید هویت رمزعبور SSH
غیرفعال کردن احراز هویت رمز عبور ، یک لایه امنیتی بیشتر به سرور شما اضافه می کند.
قبل از غیرفعال کردن احراز هویت رمزعبور SSH ، مطمئن شوید که می توانید بدون رمز ورود به سرور خود وارد شوید و کاربری که با آن وارد شده اید دارای امتیازات sudo است .
وارد سرور راه دور خود شوید:
ssh sudo_user@server_ip_address
پرونده پیکربندی SSH /etc/ssh/sshd_config
با ویرایشگر متن خود باز کنید :
sudo nano /etc/ssh/sshd_config
موارد زیر را جستجو کنید و به شرح زیر اصلاح کنید:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
پس از اتمام کار ، پرونده را ذخیره کرده و سرویس SSH را دوباره راه اندازی کنید:
sudo systemctl restart ssh
در این مرحله ، تأیید هویت مبتنی بر رمز عبور غیرفعال است.
نتیجه گیری
در این آموزش ، شما یاد گرفتید که چگونه یک جفت کلید جدید SSH تولید کنید و احراز هویت مبتنی بر کلید SSH را تنظیم کنید. می توانید همان کلید را به چندین سرور از راه دور اضافه کنید. ما همچنین به شما نشان داده ایم كه چگونه رمز عبور SSH را غیرفعال كنید و یک لایه امنیتی بیشتر به سرور خود اضافه كنید.
به طور پیش فرض ، SSH از پورت 22 استفاده میکند. تغییر درگاه پیش فرض SSH خطر حملات را کاهش می دهد.
اگر به طور مرتب به چندین سیستم وصل می شوید ، می توانید با تعیین کلیه اتصالات خود در پرونده پیکربندی SSH ، جریان کاری خود را ساده کنید.
لطفا جهت بهبهود کیفیت آموزش های ارسالی، نظرات خود را از طریق کامنت و درج ستاره ارسال کنید
اولین نفر باشید که نظر ارسال میکنید