بعوان دواپس، هر روز سرور های زیادی هست که داخلشون باید ssh کنم و کار های مختلفی روشون انجام بدم مثل خوندن لاگ، تغییر کانفیگ و…
من معمولا IP سرورهایی که بیشتر باهاشون کار دارم رو حفظم. اما بقدری تعداد سرورها زیاد میشن که من جزئیات کانکشن رو فراموش میکنم. مثلا اینکه یوزر لاگین چی بود! اصلا IP اش چی بود!
- ابزار های زیادی برای مدیریت سرورهای ssh وجود داره، مثلا شاید Xpipe رو دیده باشین، یک محیط GUI بهتون میده، و کلی قابلیت. مثل سینک کردن کانکشنهاتون (با استفاده از Git)، دسترسی به shell داخل کانتیر، اتصال به cloud provider های مختلف مثل aws و…

- یکی از ابزارهای دیگه termius هست، میتونیم کانکشنهامون رو با بقیه از طریق email اشتراک بگذاریم، و هرجایی که داخل اکانتمون لاگین کنیم به کل کانکشنهامون دسترسی داریم. ولی خب اینکه به یک شرکت دیگه اعتماد کنی تا IP و پسورد همهی سرورهات رو داشته باشه شاید یکم ریسک باشه (شاید دیتابیسشون لیک شد!)
این رو هم بگم که termius ادعا میکنه از رمزنگاری end-to-end استفاده میکنه. اما آیا کارهایی که ما میکنیم رو لاگ میکنه؟ ممکنه اونا لیک بشن یا جایی بفروش برسه!؟ اگه کلاینت Open source بود، شاید بیشتر میشد بهش اعتماد کرد.

- من شخصا ابزارهای ترمینالی رو ترجیح میدم،
خیلی سریع و راحتترم باهاشون.
ابزار
sshs
رو مدت زیادی هست که استفاده میکنم. کانفیگ
ssh
که توی مسیر
~/.ssh/ssh_configقرار داره رو میخونه و همهی سرورهاتون رو لیست میکنه.

برای این ابزار من best practice خاص خودم رو دارم.
برای مثال هر سروری که برای پروداکشن باشه، اسمش رو با
prod.
شروع میکنم.
سرورهایی که برای دولوپمنت هستند با
dev.
و سندباکس رو با
sandbox.
شوع میکنم.
از طرفی با کامنت گذاشتن داخل فایل کانفیگ بخشهای مختلف رو از هم جدا میکنم. مثلا یک بخش برای پروداکشن هست و همهی کانکشنهای پروداکشن زیر اون قرار دارند و به همین ترتیب برای بقیهی بخشها.
یک نمونهی خیلی ساده
| |
برای من و شمایی که داخل ترمینال زندگی میکنیم
ترکیب کانفیگ
ssh_config
با پلاگین
ssh
داخل
oh-my-zsh
قابلیت های
sftp
و
scp
رو برای شما راحتتر میکنه. چونکه با یک تب
آدرس و مسیر سرور وارد ترمینال شما میشه.

تنها یکار رو نیاز هست که انجام داده باشین اینکه کلید پابلیک شما داخل سرورها باشه(یا کپی کنید). خیلی ساده میتونید با این کامند اینکار رو بکنید.
| |
