Я хотел бы подключиться по SSH к моей машине (Kubuntu 12.04 64 bit) с гостевой системы VirtualBox под управлением Ubuntu 12.04 32 bit. На хосте установлена последняя версия VirtualBox из репозиториев Ubuntu (4.1.12). Гостем была предварительно сконфигурированная виртуальная машина, которую я скачал с VirtualBoxImages.com .
Проблема в том, что мой sshd_config не разрешает вход в систему, кроме как с помощью PubkeyAuthentication, и мне нужно иметь возможность использовать PasswordAuthentication от этого гостя VirtualBox (по причинам, которые, вероятно, выходят за рамки этого вопроса).
Мой файл / etc / ssh / sshd_config, вероятно, должен выглядеть следующим образом:
PasswordAuthentication no
Match Address 192.168.56.0/24
PasswordAuthentication yes
Когда я добавляю блок сопоставления в sshd_config, ssh завершается сообщением, подобным этому: init: ssh main process ( 7352) прекращено со статусом 255
Почему? Что я делаю неправильно? Я использовал блоки совпадений, почти идентичные тому, что было в прошлом, поэтому я сбит с толку.
Этот вопрос актуален, но он не помог мне: Как я могу разрешить аутентификацию по паролю SSH только с определенных IP-адресов?
Я могу предположить, что моя проблема может быть связана с Сетевой интерфейс VirtualBox ...
В VirtualBox я использую «Только хост» для Адаптера 1 (по умолчанию vboxnet0). При этом хост имеет интерфейс vboxnet0 с IP 192.168.56.1. Вот причина моего IP-адреса блока совпадений, приведенного выше.
(я также настроил Адаптер 2 как «NAT», чтобы мой гость мог иметь внешний доступ в Интернет). Для тестирования я установил режим Promiscuous «Разрешить все». Я могу пинговать в обе стороны. И я могу SSH от хоста к гостю (противоположный способ соединения, который я хочу).
Хост запускает denyhosts, но во время тестирования я остановил эту службу.
Я нашел решение в Unix & amp; Linux StackExchange в этом вопросе: https://unix.stackexchange.com/questions/67334/openssh-how-to-end-a-match-block
Ответ говорит: [ 114]
Таким образом, блоки
blockquote>Match
должны находиться в конце файлаsshd_config
.Конечно, это решило все для меня.
На самом деле, это решило и мои связанные проблемы за рамками этого вопроса. Моя связанная с этим проблема заключалась в том, чтобы запустить androVM и полностью функционировать в VirtualBox. Я просто использовал сервер Ubuntu для тестирования, чтобы сузить проблему. В androVM я хотел использовать ES File Manager в Android для доступа к файлам на компьютере Ubuntu через SFTP. Теперь это работает.
Установите сетевой адаптер в режиме моста на виртуальной коробке, что позволит вашему маршрутизатору назначить ему сетевой адрес, тогда вы можете использовать ssh с любой системой в сети
, просто используйте ifconfig
, чтобы получить адрес для сервера
Вам не нужен адаптер nat
, тогда просто используйте ssh user@192.168.100.X