اتصال به سرور به صورت ssh بدون استفاده از نرم افزار
2024-09-10
برای وصل شدن به سرور با استفاده از ترمینال سیستم همیشه به خاطر کامند (دستور) بلند و استفاده از رمز عبور دردسر خاصی داشت و مجبور به نصب نرم افزار بودم که برای راحت تر شدن الان از روش زیر استفاده میکنم.
به صورت نرمال اگر بخواهید به سرور خود ssh بزنید باید از دستور زیر استفاده کنید:
ssh [user]@[ip] -p [port]
(راهنما و متغییرهای دستور بالا به شکل زیر است)
[user] = Host Username
[ip] = Host IP
[port] = SSH Port
و بعدا رمز عبور از شما پرسیده می شود و باید رمز عبور رو وارد کنید.
اما راه های ساده تری هم هست که همیشه نیاز نیست این دستور و رمز رو بنویسید. در زیر یکی از این راه ها رو توضیح میدم، ابتدا می خواهیم به جای دستور بالا مثلا این دستور رو بنویسیم ssh my-server پس یکی یکی دستور های زیر رو اجرا کنید:
nano ~/.ssh/config
۲- وارد کردن موارد زیر در این فایل باز شده، فقط توجه کنید که متغییرهای داخل متن زیر رو با توجه اطلاعات سرور خود پر کنید و همچنین مقدار host_name هم یک مقدار دلخواهی هست که با اون کامند رو اجرا کنیم مثلا my-server
Host [host_name ex: my-server]
HostName [Host IP ex: 182.0.0.0]
User [Host Username ex: root]
Port [SSH Port ex: 22]
به همین سادگی کارمورن تموم شد و الان میتونید با اجرای دستور ssh my-server در ترمینال سیستم خود بدون نیاز به نوشتن کامند طولانی بالا به سرور خود ssh بزنید.
حالا می خواهیم تغییراتی بدیم که در هر بار وصل شدن از ما رمز عبور پرسیده نشه، پس باید به شکل زیر جلو بریم:
۱- در مرحله اول نیاز هست یک public key در سیستم لوکال خود ایجاد کرده باشیم که ایجاد یکبار اون توسط کامند زیر کافی است، همچنین توجه کنین که در هنگام اجرای این دستور هر سوالی که از شما پرسیده شد رو با زدن enter میتونید ادامه بدید.
ssh-keygen -t rsa -b 4096
۲- سپس با استفاده از دستور زیر این public key شما با سرور همگام سازی خواهد شد.
ssh-copy-id -p [SSH Port] [Host Username]@[Host IP]
بعد از اجرای دستور بالا از شما یکبار رمز عبور خواسته میشه و بعدا کارمون تموم شده است.
بعد از طی کردن مراحل بالا کارمون تموم شده و از این به بعد هرموقع لازم شد صرفا با نوشتن دستور ssh my-server به راحتی در سرور خود لاگ خواهید شد.
Welcome to my blog, where I share what I’ve learned in backend development and I’d love to read your comments to improve my knowledge and learn from you ...