
ایجاد یک اتصال SSH (Secure Shell) برای ورود به سیستم و مدیریت موثر یک سرور راه دور ضروری است. کلیدهای رمزگذاری شده مجموعه ای از مجوزهای دسترسی هستند که برای ایجاد یک اتصال امن استفاده می شوند.در این مقاله نحوه تولید کلید ssh در اوبونتو را توضیح خواهم داد. همچنین تنظیمات احراز هویت را بر اساس کلید ssh برای اتصال به سرور بدون نیاز به رمز عبور پوشش خواهیم داد.
شرح
برای ایجاد یک کلید ssh، باید عناصر زیر را با هم مرور کنیم:
- سروری داشته باشید که اوبونتو را اجرا می کند
- یک کاربر با دسترسی sudo ایجاد کنید
- دسترسی یا ترمینال Ssh
یک کلید ssh در اوبونتو ایجاد کنید
مرحله 1: یک جفت در کلید ssh ایجاد کنید
در سیستم مشتری خود – سیستمی که برای اتصال به سرور استفاده می کنید – باید یک جفت یا کلید ssh ایجاد کنید.
برای ایجاد یک جفت در کد کلید SSH، دستورات را وارد کنید:
mkdir –p $HOME/.ssh
chmod 0700 $HOME/.ssh
ssh-keygen
این یک دایرکتوری مخفی برای ذخیره کلیدهای SSH شما و تغییر مجوزهای آن دایرکتوری ایجاد می کند. دستور ssh-keygen یک جفت کلید RSA 4096 بیتی تولید می کند.
برای امنیت بیشتر بهتر است از RSA4096 استفاده کنید:
ssh –keygen –t rsa 4096
اگر قبلاً یک جفت کلید ایجاد کرده اید، از شما خواسته می شود که آنها را بازنویسی کنید و این کلیدهای قدیمی دیگر کار نمی کنند.سیستم از شما می خواهد که یک رمز عبور به عنوان یک لایه امنیتی اضافی ایجاد کنید. یک رمز عبور به یاد ماندنی وارد کنید و Enter را فشار دهید
مرحله 2: کلید عمومی را در سرور اوبونتو کپی کنید
ابتدا آدرس IP سرور اوبونتو را که می خواهید به آن متصل شوید، دریافت کنید.
دستور زیر را در محیط ssh اجرا کنید
ip a
در سیستم مشتری تیم ssh-copy-id
برای کپی اطلاعات هویت در سرور اوبونتو استفاده کنید
آی پی سرور آدرس IP واقعی سرور خود را جایگزین کنید، و اگر این اولین بار است که به سرور متصل می شوید، ممکن است پیامی مبنی بر عدم معتبر بودن احراز هویت را مشاهده کنید: yes را تایپ کرده و سپس enter را فشار دهید. در این سیستم، کلاینت شما را برای کلید id_rsa.pub ایجاد شده قبلی بررسی می کند. سپس از شما می خواهد که رمز عبور حساب سرور را وارد کنید. آن را وارد کنید (سیستم رمز عبور را نشان نمی دهد) و Enter را فشار دهید این سیستم محتویات ~ / .ssh / id_rsa.pub را از سیستم مشتری در فهرست سیستم / .ssh / autorized_keys سیستم سرور کپی می کند. سیستم شما باید عبارت زیر را نمایش دهد: اگر سیستم شما دستور ssh-copy-id را ندارد، می توانید به صورت دستی کلید را در SSH کپی کنید و از دستور زیر استفاده کنید. دستور ورود به سرور را وارد کنید این سیستم نیازی به درخواست رمز عبور ندارد زیرا با استفاده از کلید ssh در مورد یک اتصال امن مذاکره می کند. اگر از رمز عبور امنیتی استفاده کرده اید، از شما خواسته می شود که یکی را وارد کنید. پس از انجام این کار، وارد سیستم خواهید شد فایل sshd_config را ویرایش کنید: فایل را مرور کنید و گزینه PasswordAuthentication را پیدا کنید. آن را ویرایش کنید و مقدار آن را به no تغییر دهید فایل را ذخیره کرده و خارج شوید، سپس سرویس SSH را مجددا راه اندازی کنید قبل از بستن جلسه، مطمئن شوید که ssh همچنان در حال اجرا است: اگر همه چیز خوب پیش رفت، می توانید آن را متوقف کنید و به طور معمول به کار خود ادامه دهید کلید Create ssh در انتشارات ubuntu اولین بار در Server.ir پدیدار شد | نگرش جهانی، هاست ایرانی.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)Number of key(s) added: 1
روش جایگزین برای کپی دستی ssh key
cat ~/.ssh/id_rsa.pub | ssh [email protected]_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"
مرحله 3: وارد سرور راه دور شوید
ssh [email protected]_IP
نکته:اگر این اولین باری است که وارد سرور می شوید، ممکن است پیامی مشابه پیام قسمت دوم مشاهده کنید. از شما می پرسد که آیا مطمئن هستید که می خواهید وصل شوید - Yes را تایپ کرده و Enter را فشار دهید.
مرحله 4: احراز هویت رمز عبور را غیرفعال کنید
sudo nano /etc/ssh/sshd_config
PasswordAuthentication no
sudo systemctl restart ssh
ssh [email protected]_IP