راه اندازی سرورهای ماشین مجازی سریع و آسان است. اما آیا راهی برای دسترسی از راه دور به ماشین های مجازی با استفاده از SSH وجود دارد؟
ماشینهای مجازی بستر مناسبی برای تست نرمافزار، راهاندازی محیطهای فناوری اطلاعات و به حداکثر رساندن استفاده از منابع سختافزار سرور در اختیار مهندسان و مدیران قرار میدهند.
VirtualBox یکی از محبوب ترین نرم افزارهای مجازی سازی موجود در بازار است. این منبع باز است و دارای بسیاری از ویژگی های خوب است. بیایید نگاهی به نحوه SSH به سرور اوبونتو یا دسکتاپ در حال اجرا در VirtualBox بیندازیم.
مرحله 1: نصب SSH در ماشین مجازی
SSH یکی از راه های اصلی مدیریت و تعامل با سرورهای لینوکس است که دارای رابط کاربری گرافیکی نیستند. البته، می توانید از SSH در محیط های دسکتاپ کامل نیز استفاده کنید.
برای اینکه بتوانید SSH را به کامپیوتر دیگری منتقل کنید، سیستم باید یک سرور SSH را اجرا کند و سرویس آن باید فعال باشد. همچنین، رایانهای که اتصال SSH را از آن آغاز میکنید، باید یک کلاینت SSH داشته باشد.
این راهنما فرآیند را با دسکتاپ اوبونتو به عنوان سیستم عامل میزبان و سرور اوبونتو به عنوان سیستم عامل مهمان در VirtualBox نشان می دهد، اما این روش اساساً بدون توجه به سیستم عاملی که استفاده می کنید یکسان است. در صورتی که سیستم عامل مهمان ندارید، در اینجا نحوه نصب اوبونتو به عنوان سیستم عامل مهمان در VirtualBox آورده شده است.
VirtualBox را راه اندازی کنید و سپس ماشین مجازی اوبونتو خود را از رابط کاربری گرافیکی راه اندازی کنید.
در ماشین مجازی، SSH را با استفاده از دستور زیر نصب کنید:
sudo apt install openssh-server
سرور SSH شما به طور خودکار راه اندازی می شود. با استفاده از دستور زیر می توانید وضعیت آن را بررسی کنید:
sudo systemctl status ssh
اگر پورت SSH در فایروال شما فعال نیست، از ابزار UFW برای فعال کردن پورت SSH استفاده کنید.
مرحله 2: پیکربندی شبکه VirtualBox
به طور پیش فرض، VirtualBox یک آداپتور ترجمه آدرس شبکه (NAT) برای ماشین های مجازی شما ایجاد می کند. این به ماشین مجازی شما اجازه می دهد تا به اینترنت دسترسی داشته باشد اما از دسترسی سایر دستگاه ها به آن از طریق SSH جلوگیری می کند.
برای پیکربندی شبکه، باید از انتقال پورت VirtualBox و آداپتور پیشفرض NAT استفاده کنید که ماشین مجازی شما به آن متصل است. توجه داشته باشید که VirtualBox بسیاری از گزینههای پیکربندی شبکه مانند یک آداپتور پل را ارائه میکند که میتوانید از آن برای SSH در سیستمعاملهای مهمان استفاده کنید، اما این موضوع برای یک روز دیگر است.
بر روی ماشین مجازی که می خواهید SSH را در آن قرار دهید کلیک راست کرده و روی Setting cog کلیک کنید تا پنجره تنظیمات باز شود. همچنین می توانید از میانبر صفحه کلید استفاده کنید: Ctrl + S. سپس روی گزینه Network کلیک کنید.
روی گزینه Advanced کلیک کرده و Port Forwarding را انتخاب کنید. VirtualBox صفحه ای را برای پیکربندی قوانین حمل و نقل پورت به شما ارائه می دهد.
یک قانون حمل و نقل پورت اضافه کنید
روی نماد Plus (+) زیر صفحه قوانین حمل و نقل پورت کلیک کنید.
به قانون خود یک نام معنادار بدهید (به عنوان مثال “SSH port forwarding”). از پروتکل پیش فرض یعنی TCP استفاده کنید. IP میزبان 127.0.0.1 یا به سادگی localhost خواهد بود و از 2222 به عنوان پورت میزبان استفاده می کند.
آدرس IP سرور اوبونتو خود را که در VirtualBox اجرا می شود دریافت کنید و آن را در کادر ورودی IP مهمان وارد کنید. در این مورد، آدرس IP سیستم عامل مهمان من 10.0.2.13 است. از 22 به عنوان پورت مهمان استفاده کنید.
در نهایت دکمه Ok را فشار دهید.
ممکن است لازم باشد ماشین مجازی خود را مجددا راه اندازی کنید تا تغییرات اعمال شوند.
مرحله 3: جلسه SSH خود را شروع کنید
از ترمینال سیستم عامل اصلی خود، دستور SSH را با فرمت زیر اجرا کنید: ssh -p 2222 guest_os_username@127.0.0.1. مثلا:
ssh -p 2222 mwizak@127.0.0.1
لطفاً توجه داشته باشید که mwizak، در این مورد، نام کاربری ورود به سیستم برای ماشین مجازی است. در نهایت، هنگامی که از شما خواسته شد تا اتصال را راه اندازی کند، رمز عبور کاربر سیستم عامل مهمان را وارد کنید.
فراموش نکنید که اتصال SSH را ایمن کنید!
SSH یک راه آسان برای اتصال به سرورها یا رایانه های راه دور است و اکنون می توانید از آن برای دسترسی به سیستم عامل های مهمان VirtualBox خود استفاده کنید.
همانطور که SSH امن است، یک هدف اصلی برای هکرهایی است که می خواهند به سیستم شما دسترسی پیدا کنند. بنابراین هنگام استفاده از SSH مطمئن شوید که بهترین شیوه های امنیتی را دنبال می کنید.