SSH Повернутися до гостьової машини для домашнього офісу / VirtualBox від INTERNET
Відповіді, надані іншими користувачами тут: How to SSH to a VirtualBox guest externally through a host?
... допоміг мені виконати завдання підключення з Інтернету до гостьової машини мого домашнього комп’ютера. Ви повинні мати змогу підключатися за допомогою комп’ютерів, планшетів та смартфонів (android, IPhone тощо). Я додаю ще кілька кроків на випадок, якщо це може бути корисним комусь іншому:
Ось коротка схема мого налаштування:
Remote device ---> INTERNET --> MODEM --> ROUTER --> HOST MACHINE --> GUEST VM
Remote device (ssh client) ---> PASS THRU DEVICES ---> GUEST VM (ssh server)
Remote device (leave ssh port 3022) ---> INTERNET --> MODEM --> ROUTER (FWD frm:p3022 to:p3022)--> HOST MACHINE (FWD frm:p3022 to:p22) --> GUEST VM (arrive ssh port 22)
Для мене ключовим було усвідомлення того, що ВСІ з'єднання - це PASSING-THROUGH
посередницькі пристрої, щоб дістатися зі свого віддаленого ПК до моєї гостьової віртуальної машини вдома - звідси переадресація портів!
Примітки: * Потрібен ssh-клієнт для запиту захищеного з'єднання та запущеного ssh-сервера для обробки захищеного з'єднання.
Я перешлю порт 3022, як використовується в обраній відповіді зверху.
Введіть свої IP-адреси там, де це потрібно (домашній модем / маршрутизатор, IP-хост, IP гостя тощо), вибрані імена - лише приклади використання або зміни.
1.Створіть ssh-тунель до порту 3022 на зовнішній IP-адресі вашого модема / маршрутизатора.
ssh client/device possible commands: ssh -p 3022 user-name@home_external_IP
2.Порт вперед = ми проходимо через з'єднання від маршрутизатора до хост-машини
Також переконайтеся, що правила брандмауера / IPtable маршрутизатора дозволяють портам переадресовувати (відкрити, якщо потрібно)
Необхідні записи PFWD для маршрутизатора: AppName: SSH_Fwd, Port_from: 3022, Протокол: обидва (UDP / TCP), IP_address: hostIP_address, Port_to: 3022, все інше може бути порожнім
Ресурси програмного забезпечення маршрутизатора DD-WRT / Інформація:
3. Брандмауер найвищої машини: відкритий порт 3022 перенаправлений порт може передаватися через гостьову машину
Хост-машина: Встановіть VirtualBox, додатки для гостей та гостьову машину, якщо цього ще не зроблено
Налаштуйте гостьову машину та виконайте наведений нижче розділ Мережа
Я використовував GUI VirtualBox для налаштування мережі гостей - простіше, ніж CLI
Якщо ви хочете використовувати інші методи, зверніться до: VirtualBox/manual/ch06.html#natforward
4. Деякі пропонують використовувати адаптер Network Bridge для гостя = доступ до локальної мережі та інших машин вашої локальної мережі. Це також означає ризик для безпеки, оскільки тепер ваша гостьова машина наражається на локальні машини та, можливо, на хакери INTERNET, якщо брандмауер не налаштований належним чином. Тому я вибрав мережевий адаптер, приєднаний до NAT, для меншої дії мостових ризиків безпеки.
На гостьовій машині зробіть наступне:
- Налаштування мережі VirtualBox для гостьової машини: Адаптер 1: Додано до NAT
- Правило переадресації порту для гостьової машини: Ім'я: External_SSH, Протокол: TCP, Порт хоста: 3022, Порт для гостей 22, IP-адреси хоста та гостя: залишити порожнім
- натисніть заздалегідь у розділі «Мережа», а потім - «Переадресація порту», щоб ввести правила
- Брандмауер для гостьової машини: відкритий порт 22 #so ssh з'єднання може вступити
- Гостьова машина: Переконайтесь, що ssh-сервер встановлений, правильно налаштований та працює
- Тест LINUX, щоб перевірити, чи працює ssh-сервер w / command: статус sudo служби ssh
- Можна перевірити netstat, щоб побачити, чи встановлено з'єднання з портом 22 на машині для гостей
Також існують різні ssh-сервери та клієнти залежно від використання платформи.
wikipedia/Secure_Shell
wikipedia/Comparison_of_SSH_servers
wikipedia/Comparison_of_SSH_clients
Для користувачів Ubuntu:
ubuntu community: SSHOpenSSH/Configuring
ubuntu/community: OpenSSH/Keys
Це повинно бути. Якщо я помилився або хочу додати що-небудь, я почуваюсь вільним - це я все-таки нуб.
Сподіваюся, що це комусь допоможе. Удачі!