Назад | Перейти на главную страницу

Доступ Samba работает только с IP-адресом

Я добавил хост Debian etch (имя хоста: веб-сервер, IP-адрес: 192.168.101.2), на котором запущена Samba, в сеть Windows с Windows 2003 PDC (IP-адрес 192.168.101.3). Сервер Samba экспортирует общедоступный гостевой ресурс, называемый «Интранет». Сервер нормально отображается в сети, но при попытке щелкнуть по нему появляется диалоговое окно с ошибкой, в котором говорится, что у меня нет необходимых разрешений. Точно так же ввод \ webserver вручную и использование \ webserver \ internet указывает, что путь не существует. Интересно, что доступ к общему ресурсу по IP-адресу (\ 192.168.101.2 или \ 192.168.101.2 \ intranet) работает нормально. DNS настроен правильно, и "smbclient // webserver / intranet" на другом клиенте Linux работает нормально.

Одна из сложных проблем заключается в том, что веб-сервер - это всего лишь виртуальная машина VMware, работающая на сервере PDC.

Вот наш smb.conf:

[global]
    workgroup = Foobar
    server string = Webserver
    wins support = yes                 ; commenting out these
    wins server = 192.168.101.3 ; two lines has no effect
    dns proxy = no
    guest account = nobody
    [... snipped some unrelated bits, like logging ...]
    security = share
    [... snipped some password-related things ...]
    domain master = no

[intranet]
    comment = Intranet
    path = /srv/webserver/contents
    browseable = yes
    guest ok = yes
    guest only = yes
    read only = yes
    create mask = 0775
    directory mask = 0775

Если ваш клиент может получить доступ к общему ресурсу с помощью \\ <IP-ADDRESS> \ <SHARE-NAME>, то это определенно указывает на разрешение имени.

Поэтому я бы дважды проверил сторону DNS, поскольку \\ <FQDN> \ <SHARE-NAME> фактически то же самое, что и выше. Если вы не предоставляете полное доменное имя, а указываете только имя хоста, а клиент [Windows] по-прежнему поддерживает устаревшую версию NBT, он также попытается разрешить имя WINS.

Наконец, если клиент Windows работает в Windows 7 или Windows Server 2008 R2 (не уверен в Vista / Server 2008 R1), клиент по умолчанию хочет использовать NTLMv2. Старые дистрибутивы SAMBA поддерживают только LAN Manager и NTLMv1, что делает невозможным подключение. Однако вам удалось подключиться, так что это, вероятно, не имеет значения. Вы можете изменить способ работы клиента с помощью локальной политики безопасности или GPO.

Короче говоря, убедитесь, что ваш дистрибутив SAMBA обновлен. И я бы серьезно подумал об отказе от NBT-стороны вашего файла SMB.CONF (записи WINS).

Удачи!

Мое первое предположение - брандмауэр. Вам необходимо, чтобы порты 137, 138, 139 были открыты как для tcp, так и для udp для Windows, чтобы нормально работать с сервером Linux Samba.

Вы уверены, что оба smbd и nmbd процессы запущены на сервере?

Пытаться:

ps aux | grep mbd