خط فرمان یک سرور دورافتاده
SSH (Secure Shell) پروتکلی است که امکان اتصال امن و رمزنگاریشده به خط فرمان یک سرور راه دور را فراهم میکند. تقریباً تمام مدیریت سرورهای لینوکسی در دنیای واقعی از طریق SSH انجام میشود:
ssh ali@203.0.113.10
ssh ali@203.0.113.10 -p 2222
دستور اول با نام کاربری ali به سرور با آدرس IP مشخص متصل میشود و رمز عبور آن کاربر را میپرسد. فلگ -p پورت اتصال را مشخص میکند، اگر سرور روی پورت غیرپیشفرض (که پیشفرض ۲۲ است) پیکربندی شده باشد.
یک نکتهی امنیتی مهم دربارهی اولین اتصال
در اولین اتصال به یک سرور جدید، پیامی دربارهی «اثر انگشت» (fingerprint) کلید سرور نمایش داده میشود و از شما میپرسد آیا مطمئن هستید میخواهید ادامه دهید. این مکانیزم برای جلوگیری از حملات «مرد میانی» (Man-in-the-Middle) طراحی شده است؛ در محیطهای حساس، باید این اثر انگشت را از یک منبع قابلاعتماد (مثلاً ارائهدهندهی سرور) تأیید کنید. پس از تأیید، این اطلاعات در فایل ~/.ssh/known_hosts ذخیره میشود تا در اتصالات بعدی دوباره پرسیده نشود.
میتوانید یک دستور را هم مستقیماً بدون ورود کامل به سشن اجرا کنید:
ssh ali@203.0.113.10 "df -h"
این قابلیت برای اسکریپتهای اتوماسیون که نیاز به اجرای یک دستور روی چند سرور دارند بسیار کاربردی است.