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

Проблемы с доступом к общему ресурсу Samba через полное доменное имя

У меня есть новый сервер Centos 8, который я настраиваю для клиента, и он доставляет мне наихудшие проблемы с настройкой сетевых ресурсов на AD DC.

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

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

В настоящее время я могу получить доступ к своему сетевому серверу, используя 3 разных метода, каждый со своей ошибкой.

1. Открытие \\OFFICE
При подключении только к короткому имени отображаются все файлы и принтеры, которые используются совместно, но ни один из них не может подключиться.
Попытка подключиться к одному из общих ресурсов выдает ошибку

\\ OFFICE \ public недоступен. Возможно, у вас нет разрешения на использование этого сетевого ресурса. Свяжитесь с администратором этого сервера, чтобы узнать, есть ли у вас права доступа.

Был получен доступ к тому, для которого требуется драйвер файловой системы, но еще не загруженный.

2. Открытие \\office.mydomain.com Такое подключение позволяет мне получить доступ ко всем сетевым принтерам, но только sysvol и netlogon доступны приводы. Попытка подключиться к любому из других дисков дает эту ошибку

\\ office.mydomain.com \ public недоступен. Возможно, у вас нет разрешения на использование этого сетевого ресурса. Свяжитесь с администратором этого сервера, чтобы узнать, есть ли у вас права доступа.

Элемент не найден.

3. Открытие \\192.168.1.2 Попытка подключиться с использованием IP-адреса контроллера работает для всех принтеров и сетевых ресурсов. Кроме для netlogon и sysvol. При попытке открыть любой из дисков по умолчанию предлагается войти в систему, что не удается даже с OFFICE\administrator учетная запись.

Мой тезис заключался в том, что общие диски на самом деле не считаются частью домена, но при попытке доступа к местоположениям из учетной записи, не входящей в домен, запрашивается вход в домен.

Я также провел несколько часов, копаясь в DNS, думая, что это может быть проблемой, но если NETBIOS LOCALHOST не проблема, у меня нет никаких проблем с общими папками, кроме невозможности доступа к каталогам. Принтеры работают нормально, пинг сервера в порядке, nslookup возвращает правильный результат, SSH корректно работает с доменом. Я недостаточно знаком с Samba, чтобы знать, что обрабатывает отображение общих ресурсов, например. \public

Версия запуска:

$: smbd -V
Version 4.12.3

Все мои каталоги отображаются правильно

$: smbclient -L localhost -U%

    Sharename       Type      Comment
    ---------       ----      -------
    sysvol          Disk      
    netlogon        Disk      
    public          Disk      
    share1          Disk      
    share2          Disk      
    share3          Disk      
    share4          Disk      
    users           Disk      
    IPC$            IPC       IPC Service (Samba 4.12.3)
    Printer1        Printer   EPSON WF-7520 Series
    Printer2        Printer   EPSON ET-3750 Series
    Printer3        Printer   EPSON ET-3750 Series
    Printer4        Printer   Brother QL-710W
    Printer5        Printer   EPSON ET-3750 Series
SMB1 disabled -- no workgroup available

Ниже мои конфиги

smb.conf

# Global parameters
[global]
    # Realm information
    netbios name = LOCALHOST
    realm = OFFICE.MYDOMAIN.COM
    server role = active directory domain controller
    
    disable netbios = no
    smb ports = 139 445
    
    # DNS is controlled by BIND
    server services = rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbind, ntp_signd, kcc, s3fs
    
    # Work group
    workgroup = OFFICE
    idmap_ldb:use rfc2307 = yes
    
    # Log from user IPs
    log file = /var/log/samba/%m.log
    #log level = 5
    
    # Printing servers with Cups!
    printing = cups
    printcap name = cups
    load printers = yes
    cups options = raw
    
    # Mapped drive configs
    map archive = no
    map readonly = no
    
    # Home Directories
    logon drive = H:
    logon home = \\office.mydomaincom\users\%U
    
    # Winbindd
    winbind cache time = 10
    winbind nss info = rfc2307
    winbind use default domain = yes
    winbind enum users = yes
    winbind enum groups = yes
    
    template shell = /bin/bash
    template homedir = /home/%D/%U
    
    # WINS
    domain logons = yes
    preferred master = yes
    domain master = yes
    #wins support = yes
    #host msdfs = yes
    time server = yes
    
    # DNS
    dns forwarder = 192.168.1.2
    
    # Enable FreeRADIUS authorization
    ntlm auth = mschapv2-and-ntlmv2-only

# Generic system volume
[sysvol]
    path = /usr/local/samba/var/locks/sysvol
    read only = no

# Net login scripts
[netlogon]
    path = /usr/local/samba/var/locks/sysvol/office.mydomain.com/scripts
    read only = no

# Shared printers
[printers]
    comment = All Printers
    path = /var/spool/samba/
    printable = yes
    create mask = 0600
    browseable = no

# Share for all companies
[public]
    path = /srv/samba/public
    read only = no

[share1]
    path = /srv/samba/share1
    read only = no

[share2]
    path = /srv/samba/share2
    read only = no

[share3]
    path = /srv/samba/share3
    read only = no

[share4]
    path = /srv/samba/share4
    read only = no

# User home directory
[users]
    path = /srv/samba/home
    read only = no

krb5.conf

[libdefaults]
    default_realm = OFFICE.MYDOMAIN.COM
        dns_lookup_realm = true
        dns_lookup_kdc = true

[realms]
OFFICE.MYDOMAIN.COM = {
        default_domain = office.mydomain.com
}

[domain_realm]
    localhost = OFFICE.MYDOMAIN.COM

nsswitch.conf

passwd:     files winbind
group:      files winbind
netgroup:   files winbind
automount:  files winbind
services:   files winbind

# In order of likelihood of use to accelerate lookup.
shadow:     files winbind
hosts:      dns myhostname

aliases:    files
ethers:     files
gshadow:    files
# Allow initgroups to default to the setting for group.
# initgroups: files
networks:   dns
protocols:  files winbind
publickey:  files
rpc:        files

После долгих поисков и экспериментов я понял, что у меня есть две проблемы.

Во-первых, как я подключался к серверу. \\OFFICE, \\office.mydomain.com, и \\192.168.1.2 все подключиться, однако ни один из них фактически не признается полностью частью DC. Мне пришлось включить имя NETBIOS в полное доменное имя и подключиться к \\localhost.office.mydomain.com. Отсюда все принтеры, и акции (в том числе netlogon и sysvol) были признаны. Это может быть изменено где-то еще, но это работает для моих нужд.

Во-вторых, проблема с разрешением папки,

$: ls -ld sysvol/
drwxrwx---+ 9 root BUILTIN\administrators 135 Jul  9 09:24 sysvol/

$: ls -ld /srv/samba
drwxrwx---. 3 root root 22 Jul  9 09:15 /srv/samba

Я протестировал перевод моих акций в sysvol поделиться, и на тот момент у него не было проблем с подключением к ним. Итак, я проверил разрешения на sysvol поделился и увидел, что он принадлежит BUILTIN\administrators группа, которая моя акции принадлежат, однако родительская папка также нуждается в этом разрешении, иначе самба не сможет правильно читать общие ресурсы.

Как только я понял, что мои акции работали, когда я находился внутри sysvol Я применил разрешения к своему /srv/samba каталог и переместил их обратно. Я не на 100% sysvol но я считаю, что хранение дополнительных файлов в этой папке, вероятно, не лучшая идея.