Доступ к общему ресурсу Samba в VirtualBox с гостевой системы Alpine Linux с хоста Windows 10 в домене
718
Soham Dasgupta
Я пытаюсь запустить сервер Samba, установленный в Alpine Linux 3.7.0 (Vanilla), внутри VirtualBox и пытаюсь получить доступ к нему с моего хоста Windows 10, который является частью домена. Вот ссылки, которые я пытался использовать, чтобы смягчить проблему, но ни одна из них не сработала, поэтому я вынужден снова задать этот вопрос.
adduser SuperCoolUser а потом smbpasswd -a SuperCoolUser
Оба не работают.
/etc/samba/smb.conf
[global] log file = /var/log/samba/log.%m max log size = 50 workgroup = XX server string = Samba Server %v netbios name = dev-1 security = user map to guest = bad user dns proxy = no username map = /etc/samba/smbusers [storage] path = /media/storage browsable = yes writeable = yes guest ok = yes
Когда я бегу, smbclient -L localhost -U%то это вывод
Sharename Type Comment --------- ---- ------- storage Disk IPC$ IPC IPC Service (Samba Server 4.7.3) Reconnecting with SMB1 for workgroup listing. Server Comment --------- ------- Workgroup Master --------- ------- XX DEV-1
Моя виртуальная машина имеет два адаптера
Мостовой (DHCP) для интернета
Только для хоста (статический) для SSH и общего доступа к файлам (Samba)
Примечание: я могу sshвойти в компьютер и запустить команды, поэтому его сеть видна.
редактировать
Если я запускаю команду, smbclient -L 192.168.56.131 -U samba@sambaгде sambaнаходится fooпользователь.
Я получаю следующий вывод
Enter samba@samba's password: Sharename Type Comment --------- ---- ------- storage Disk IPC$ IPC IPC Service (Samba Server 4.8.2) Reconnecting with SMB1 for workgroup listing. Server Comment --------- ------- Workgroup Master --------- ------- XX DEV-1
Обратите внимание, что раздел сервера пуст. Означает ли это, что мой сервис не работает?
1 ответ на вопрос
1
alzaj
Используя заданную вами структуру, но немного измененную:
в smbusers я не использую root для отображения пользователей, а просто локальный пользователь foo :
foo = SuperCoolUser
в smb.confguest ok = no (для предотвращения доступа к общему ресурсу недопустимых пользователей).
Я могу получить доступ к общему ресурсу с хоста Windows, выполнив следующие действия:
на гостевой Linux создайте пользователя foo (если он еще не создан)
adduser foo (т.е. пароль "бар")
в гостевой системе Linux создайте пользователя samba с тем же именем и паролем, что и у пользователя Linux:
smbpasswd -a foo (пароль "бар")
pdbedit -L (проверка, был ли foo успешно создан)
на хосте Windows откройте cmd и запустите:
net use Z: \\192.168.56.200\storage /user:SuperCoolUser /persistent:no
как ввод пароля "бар"
сообщение: «Команда выполнена успешно»
Теперь вы можете перечислить файлы в вашей папке с dir Z:
Когда вы говорите `foo = SuperCoolUser`, вы имеете в виду пользователя, которого я использую для входа в Windows?
Soham Dasgupta 6 лет назад
0
К сожалению, я получаю эту ошибку из windows `Произошла системная ошибка 53. Сетевой путь не найден.
Soham Dasgupta 6 лет назад
0
Вы заменили мой IP-адрес на адрес вашего гостя Linux?
alzaj 6 лет назад
0
Да, я сделал. Лол.
Soham Dasgupta 6 лет назад
0
ошибка 53 не связана с самбой. Вы сказали, что с TCP-соединением от хоста к гостю все в порядке. Чтобы убедиться в этом, вы можете попробовать протестировать его с помощью команды Powershell: `Test-NetConnection -ComputerName 192.168.56.200 -Port 445 -InformationLevel" Details "`
alzaj 6 лет назад
1
Вы правы. Порты `445, 139` заблокированы администраторами домена. Есть ли способ использовать другой порт?
Soham Dasgupta 6 лет назад
0
В гостевой системе Linux вы можете выбрать, какой порт использует сервер samba, но не можете заставить Windows обращаться к общим ресурсам samba на портах, отличных от 445 или 139.
alzaj 6 лет назад
1
Большое спасибо. По крайней мере, вы позволили мне определить актуальную проблему.
Soham Dasgupta 6 лет назад
0