Проблемы монтирования CIFS у клиентов при обновлении samba на сервере

от автора


Серверная samba

Домашний файловый сервер (GNU/Linux) работал на второй Самбе. Доступ к файлам был сделан полностью публичный анонимный, поскольку посторонних пользователей нет принципиально и защищаться не от кого.

Пришла пора менять сервер на более мощный (появились новые задачи). При настройке возникла проблема: на новом сервере Самба уже третьей версии, и у неё довольно много изменений. Самое важное:

  • нет режима security=share


Скопировал /etc/samba/smb.conf на новый сервер, закомментировал security=share (по умолчанию используется security=user) и запустил nmbd и smbd.

Клиенты на Linux

Подключение к ресурсу «files» старого сервера в /etc/fstab:

//srv/files /srv/files cifs rw,guest,ip=192.0.2.2,uid=1001,gid=users 

При попытке подключить ресурс files нового сервера с теми же опциями получаем ошибку:

# mount -t cifs -o rw,ip=192.0.2.17,uid=1001,gid=users,guest //host-17/files /srv/host17files mount: block device //host-7/files is write-protected, mounting read-only mount: cannot mount block device //host-7/files read-only 

Попытки найти правильные параметры окончились неудачей, пришлось гуглить.
Оказалось, что cкомпилированная в /sbin/mount подддержка cifs не поддерживает новые версии самбы, и нужно использовать /sbin/mount.cifs (по умолчанию не установлен). И в Ubuntu, и в Altlinux этот файл содержится в пакете cifs-utils (версии программы 6.0 и 5.7 соответственно). После установки пакета монтирование стало проходить без ошибок.

Клиенты на Windows

При подключении к старому серверу работал анонимный вход.
При попытке подключиться к новому серверу получаем запрос логина-пароля.

Причина такого поведения в том, что Windows сначала пытается залогиниться на сервер с учётными данными пользователя Windows, и только при неудаче использует гостевой вход, в то же время в третьей самбе по умолчанию сделано так, что при попытке входа с неизвестным пользователем она не переключается на гостевой вход. (Простите за корявое описание.)

Решение простое: нужно указать «map to guest = Bad User» в глобальной секции smb.conf (значение по умолчанию — «Never»).

ссылка на оригинал статьи http://habrahabr.ru/post/260237/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *