Crittografia del traffico SMB con Samba


11

Usiamo Samba su Ubuntu 14.04 LTS come PDC (controller di dominio primario) con profili di roaming. Tutto funziona bene, tranne se proviamo ad applicare la crittografia tramite l'impostazione:

    server signing = mandatory
    smb encrypt = mandatory

nella [global]sezione di /etc/samba/smb.conf. Dopo averlo fatto, vinci 8.0 e vinci 8.1 clienti (non ne ho provato nessun altro) lamentati: Die Vertrauensstellung zwischen dieser Arbeitsstation und der primären Domäne konnte nicht hergestellt werden.traduzione inglese di questo testo:The trust relationship between this workstation and the primary domain could not be established.

Se aggiungiamo le due opzioni server signinge smb encryptsolo alla [profiles]sezione di smb.conf, allora tcpdumpmostra che il traffico effettivo non è crittografato!

L'intero smb.conf:

[global]
    workgroup = DOMAIN
    server string = %h PDC
    netbios name = HOSTNAME
    wins support = true
    dns proxy = no
    allow dns updates = False
    dns forwarder = IP

    deadtime = 15

    log level = 2
    log file = /var/log/samba/log.%m
    max log size = 5000
    debug pid = yes
    debug uid = yes
    syslog = yes
    utmp = yes

    security = user
    domain logons = yes
    domain master = yes
    os level = 64
    logon path = \\%N\profiles\%U
    logon home = \\%N\%U
    logon drive = H:
    logon script =

    passdb backend = ldapsam:ldap://localhost
    ldap ssl = start tls
    ldap admin dn = cn=admin,dc=DOMAIN,dc=de
    ldap delete dn = no

    encrypt passwords = yes
    server signing = mandatory
    smb encrypt = mandatory

    ## Sync UNIX password with Samba password
    ldap password sync = yes

    ldap suffix = dc=intra,dc=DOMAIN,dc=de
    ldap user suffix = ou=People
    ldap group suffix = ou=Groups
    ldap machine suffix = ou=Computers
    ldap idmap suffix = ou=Idmap

    add user script = /usr/sbin/smbldap-useradd -m '%u' -t 1
    rename user script = /usr/sbin/smbldap-usermod -r '%unew' '%uold'
    delete user script = /usr/sbin/smbldap-userdel '%u'
    set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
    add group script = /usr/sbin/smbldap-groupadd -p '%g'
    delete group script = /usr/sbin/smbldap-groupdel '%g'
    add user to group script = /usr/sbin/smbldap-groupmod -m '%u' '%g'
    delete user from group script = /usr/sbin/smbldap-groupmod -x '%u' '%g'
    add machine script = /usr/sbin/smbldap-useradd -W '%m' -t 1

[homes]
    comment = Home Directories
    valid users = %S
    read only = No
    browseable = No

[netlogon]
    comment = Network Logon Service
    path = /var/lib/samba/netlogon
    admin users = root
    guest ok = Yes
    browseable = No

[profiles]
    comment = Roaming Profile Share
    path = /var/lib/samba/profiles
    read only = No
    profile acls = Yes
    browsable = No
    valid users = %U
    create mode = 0600
    directory mode = 0700

Qualsiasi aiuto?


Riesci a riconnetterti a un computer al dominio per vedere se risolve questo problema?
integratore IT

Spiacenti, ricollegarsi al client win 8 o win 8.1 al dominio non risolve il problema. Ci abbiamo provato più volte.
Kai Petzke,

Risposte:


12

La pagina del manuale smb.conf deve essere aggiornata! Si riferisce al vecchio meccanismo di crittografia specifico di Samba che si applica solo a SMB1 e viene eseguito tramite estensioni unix. Questo può essere usato da smbclient.

Al giorno d'oggi, le smb encryptopzioni " " controllano anche la crittografia a livello di SMB che fa parte della versione 3.0 e successive di SMB. I client Windows 8 (e più recenti) dovrebbero crittografare il traffico con queste impostazioni.

Hai provato a utilizzare le stesse impostazioni ( smb encrypt = mandatorynella [global]sezione) su un membro del dominio Samba o un server autonomo?

Assicurati di impostare smb encrypt = autonella [global]sezione (non nella [profiles]sezione). Quindi la disponibilità generale della crittografia è ancora annunciata.



È molto probabile che questo sia un bug in Samba. Quindi questo dovrebbe probabilmente essere discusso sulla mailing list di samba o sulla bugzilla di samba . Se stai usando la versione Ubuntu di Samba, potresti anche voler controllare la pagina del pacchetto . Sospetto che questo sia un vero problema a monte di Samba.


7
Ho aggiornato la pagina di manuale nel repository principale di Samba per spiegare il diverso significato di smb encryptper SMB2 e SMB3: ( git.samba.org/… )
Michael Adam,

4

Questa è una nuova funzionalità introdotta con Samba 3.2 e versioni successive. È un'estensione del protocollo SMB / CIFS negoziato come parte delle estensioni UNIX. La crittografia SMB utilizza la capacità GSSAPI (SSPI su Windows) per crittografare e firmare ogni richiesta / risposta in un flusso di protocollo SMB. Se abilitato, fornisce un metodo sicuro di comunicazione SMB / CIFS, simile a una sessione protetta ssh, ma utilizzando l'autenticazione SMB / CIFS per negoziare chiavi di crittografia e firma. Attualmente questo è supportato solo da Samba 3.2 smbclient e, si spera, presto dai client Linux CIFSFS e MacOS / X.Windows clients do not support this feature.

Controlla se il client remoto è autorizzato o tenuto a utilizzare la crittografia SMB. I valori possibili sono auto, obbligatorio e disabilitato. Questo può essere impostato su una base per condivisione, ma i clienti possono scegliere di crittografare l'intera sessione, non solo il traffico verso una condivisione specifica. Se impostato su obbligatorio, tutto il traffico verso una condivisione deve essere crittografato dopo aver effettuato la connessione alla condivisione. Il server restituirebbe "Accesso negato" a tutte le richieste non crittografate su tale condivisione. La selezione del traffico crittografato riduce il throughput in quanto devono essere utilizzate dimensioni di pacchetti più piccole (non sono consentite letture / scritture in stile UNIX) e il sovraccarico di crittografia e firma di tutti i dati.

Se si seleziona la crittografia SMB, la firma SMB in stile Windows (vedere l'opzione di firma del server) non è più necessaria, poiché i flag GSSAPI utilizzano selezionare sia la firma che il sigillo dei dati.

Se impostato su auto, viene offerta la crittografia SMB, ma non imposta. Se impostato su obbligatorio, è richiesta la crittografia SMB e se impostata su disabilitato, la crittografia SMB non può essere negoziata.

Predefinito: smb encrypt = auto

Fonte: https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html


Mi dispiace, posso leggere da solo la pagina man. A proposito della citazione, che hai evidenziato: Alcune pagine, come blogs.technet.com/b/filecab/archive/2012/05/03/… , indicano che Win 8 può anche eseguire la crittografia SMB. Come scritto nella parte superiore di quella pagina: "Tutto qui vale anche per Windows 8". Quelle informazioni sono sicuramente sbagliate?
Kai Petzke,

In alternativa puoi utilizzare Windows Server 2012 che supporta il traffico smb crittografato
integratorIT

Ma ciò non richiederebbe l'edizione di Windows Server su tutti i client?
Kai Petzke,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.