Samba ile SMB trafiğini şifreleme


11

Ubuntu 14.04 LTS'de Samba'yı, dolaşım profillerine sahip bir PDC (birincil etki alanı denetleyicisi) olarak kullanıyoruz. Şifrelemeyi ayarlayarak zorunlu kılmaya çalışmamız haricinde her şey iyi çalışır:

    server signing = mandatory
    smb encrypt = mandatory

içinde [global]/etc/samba/smb.conf kesit. Bunu yaptıktan sonra 8.0 kazanın ve 8.1 istemciyi kazanın (başka birini denemedim) şikayet: Die Vertrauensstellung zwischen dieser Arbeitsstation und der primären Domäne konnte nicht hergestellt werden.Bu metnin İngilizce çevirisi:The trust relationship between this workstation and the primary domain could not be established.

İki seçeneği ekler server signingve smb encryptyalnızca [profiles]smb.conf bölümüne eklersek, tcpdumpgerçek trafiğin şifrelenmediğini gösterir!

Tam 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

Herhangi bir yardım?


Bu sorunu çözüp çözmediğini görmek için bir bilgisayara etki alanına yeniden katılabilir misiniz?
IntegratorIT

Maalesef bir win 8 veya win 8.1 istemcisini alan adıyla birleştirmek sorunu çözmez. Bunu birkaç kez denedik.
Kai Petzke

Yanıtlar:


12

Smb.conf kılavuz sayfasının güncellenmesi gerekiyor! Yalnızca SMB1 için geçerli olan ve unix uzantıları ile yapılan eski Samba'ya özgü şifreleme mekanizmasını ifade eder. Bu tarafından kullanılabilir smbclient.

Günümüzde " smb encrypt" seçenekleri, SMB sürüm 3.0 ve daha yeni sürümlerin bir parçası olan SMB düzeyi şifrelemeyi de denetlemektedir. Windows 8 (ve daha yeni) istemciler trafiği bu ayarlarla şifrelemelidir .

Eğer (aynı ayarları kullanmak denediniz smb encrypt = mandatoryiçinde [global]bir Samba alanı üyesi veya bağımsız sunucuda bölüm)?

Sete emin olun smb encrypt = autoiçinde [global]bölüm (değil [profiles]bölüm). Daha sonra, şifrelemenin genel kullanılabilirliği hala ilan edilir.



Bunun Samba'da bir böcek olması çok olası. Bu yüzden bu muhtemelen samba'nın samba-technial posta listesinde veya samba'nın bugzilla'sında tartışılmalıdır . Samba'nın Ubuntu sürümünü kullanıyorsanız , paket sayfasını da kontrol etmek isteyebilirsiniz . Bunun gerçek bir Samba akış yukarı sorunu olduğundan şüpheleniyorum.


7
Samba'nın ana veri havuzundaki manuel sayfayı, smb encryptSMB2 ve SMB3'ün farklı anlamlarını açıklamak için güncelledim: ( git.samba.org/… )
Michael Adam

4

Bu, Samba 3.2 ve üstü ile sunulan yeni bir özelliktir. UNIX uzantılarının bir parçası olarak müzakere edilen SMB / CIFS protokolünün bir uzantısıdır. SMB şifrelemesi, bir SMB protokol akışındaki her isteği / yanıtı şifrelemek ve imzalamak için GSSAPI (Windows'ta SSPI) özelliğini kullanır. Etkinleştirildiğinde, ssh korumalı oturuma benzer, ancak şifreleme ve imzalama anahtarları üzerinde anlaşmak için SMB / CIFS kimlik doğrulaması kullanarak güvenli bir SMB / CIFS iletişimi yöntemi sağlar. Şu anda bu yalnızca Samba 3.2 smbclient tarafından desteklenmektedir ve umarım yakında Linux CIFSFS ve MacOS / X istemcileri tarafından desteklenir.Windows clients do not support this feature.

Bu, uzak istemcinin SMB şifrelemesini kullanmasına izin verilip verilmediğini denetler. Olası değerler otomatik, zorunlu ve devre dışıdır. Bu, paylaşım başına temelinde ayarlanabilir, ancak istemciler yalnızca belirli bir paylaşıma giden trafiği değil, tüm oturumu şifrelemeyi seçebilir. Bu zorunlu olarak ayarlanırsa, paylaşımla bağlantı kurulduktan sonra bir paylaşıma giden tüm trafiğin şifrelenmesi gerekir. Sunucu, böyle bir paylaşımdaki şifrelenmemiş tüm isteklere "erişim reddedildi" ifadesini döndürür. Şifrelenmiş trafiğin seçilmesi, daha küçük paket boyutları kullanılması gerektiğinden (büyük UNIX stili okuma / yazma işlemlerine izin verilmez) ve tüm verilerin şifrelenmesi ve imzalanması yükünü azalttığı için verimi azaltır.

SMB şifrelemesi seçilirse, GSSAPI bayrakları kullanıldığından Windows stili SMB imzalama (sunucu imzalama seçeneğine bakın) artık gerekli değildir.

Otomatik olarak ayarlandığında, SMB şifrelemesi sunulur, ancak zorunlu değildir. Zorunlu olarak ayarlandığında, SMB şifrelemesi gerekir ve devre dışı bırakılırsa SMB şifrelemesi üzerinde anlaşılamaz.

Varsayılan: smb encrypt = auto

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


Üzgünüm, adam sayfasını kendim okuyabilirim. Vurguladığınız teklif hakkında: blogs.technet.com/b/filecab/archive/2012/05/03/… gibi bazı sayfalar, Win 8'in SMB şifrelemesi de yapabileceğini gösteriyor. Bu sayfanın üstünde yazıldığı gibi: "Buradaki her şey Windows 8 için de geçerlidir". Bu bilgi kesinlikle yanlış mı?
Kai Petzke

Alternatif olarak, şifreli smb trafiğini destekleyen Windows Server 2012'yi kullanabilirsiniz
integratorIT

Ancak bu, tüm istemcilerde Windows Server sürümünü gerektirmez mi?
Kai Petzke
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.