Samba를 사용하여 SMB 트래픽 암호화


11

로밍 프로필이있는 PDC (기본 도메인 컨트롤러)로 Ubuntu 14.04 LTS의 Samba를 사용합니다. 설정을 통해 암호화를 시행하려는 경우를 제외하고는 모든 것이 잘 작동합니다.

    server signing = mandatory
    smb encrypt = mandatory

에서 [global]/etc/samba/smb.conf를 섹션. 그렇게 한 후에 8.0에서 승리하고 8.1 클라이언트에서 승리하십시오 (다른 시도는하지 않았습니다) : Die Vertrauensstellung zwischen dieser Arbeitsstation und der primären Domäne konnte nicht hergestellt werden.이 텍스트의 영어 번역 :The trust relationship between this workstation and the primary domain could not be established.

우리는 두 가지 옵션을 추가하는 경우 server signingsmb encrypt단지에 [profiles]smb.conf 파일의 섹션, 다음 tcpdump쇼, 실제 트래픽은 암호화되지 않는다는 것을!

전체 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

어떤 도움?


이 문제가 해결되는지 확인하기 위해 컴퓨터를 도메인에 다시 가입시킬 수 있습니까?
integratorIT

도메인에 win 8 또는 win 8.1 클라이언트를 다시 가입해도 문제가 해결되지 않습니다. 우리는 여러 번 시도했습니다.
Kai Petzke

답변:


12

smb.conf 매뉴얼 페이지를 업데이트해야합니다! SMB1에만 적용되고 유닉스 확장을 통해 수행되는 이전 Samba 고유 암호화 메커니즘을 나타냅니다. 에서 사용할 수 있습니다 smbclient.

현재 " smb encrypt"옵션은 SMB 버전 3.0 이상의 일부인 SMB 수준 암호화도 제어합니다. Windows 8 이상 클라이언트는 이러한 설정으로 트래픽암호화해야합니다 .

Samba 도메인 구성원 또는 독립형 서버 smb encrypt = mandatory에서 동일한 설정 ( [global]섹션에서) 을 사용하려고 했습니까 ?

설정해야합니다 smb encrypt = auto[global]섹션 (안 [profiles]절). 그런 다음 일반적인 암호화 가용성이 발표됩니다.



Samba의 버그 일 가능성이 큽니다. 따라서 이것은 삼바의 삼바 기술 메일 링리스트삼바의 bugzilla 에서 논의되어야합니다 . 우분투 버전의 삼바를 사용하고 있다면 패키지 페이지 를 확인 하고 싶을 수도 있습니다 . 나는 이것이 진짜 삼바 업스트림 문제라고 생각합니다.


7
smb encryptSMB2와 SMB3 의 다른 의미를 설명하기 위해 Samba 핵심 저장소의 매뉴얼 페이지를 업데이트했습니다 : ( git.samba.org/… )
Michael Adam

4

이것은 Samba 3.2 이상에서 도입 된 새로운 기능입니다. UNIX 확장의 일부로 협상 된 SMB / CIFS 프로토콜의 확장입니다. SMB 암호화는 GSSAPI (Windows의 SSPI) 기능을 사용하여 SMB 프로토콜 스트림에서 모든 요청 / 응답을 암호화하고 서명합니다. 활성화되면 ssh 보호 세션과 유사하지만 SMB / CIFS 인증을 사용하여 암호화 및 서명 키를 협상하는 안전한 SMB / CIFS 통신 방법을 제공합니다. 현재 이것은 Samba 3.2 smbclient에서만 지원되며 곧 Linux CIFSFS 및 MacOS / X 클라이언트에서도 지원됩니다.Windows clients do not support this feature.

원격 클라이언트가 SMB 암호화를 사용할 수 있는지 여부를 제어합니다. 가능한 값은 자동, 필수 및 비활성화입니다. 이는 공유별로 설정 될 수 있지만 클라이언트는 특정 공유에 대한 트래픽뿐만 아니라 전체 세션을 암호화하도록 선택할 수 있습니다. 이것이 필수로 설정된 경우 공유에 대한 연결이 설정되면 공유에 대한 모든 트래픽을 암호화해야합니다. 서버는 이러한 공유에서 암호화되지 않은 모든 요청에 ​​"액세스 거부"를 반환합니다. 암호화 된 트래픽을 선택하면 더 작은 패킷 크기를 사용해야하므로 (대용량 UNIX 스타일 읽기 / 쓰기가 허용되지 않음) 모든 데이터를 암호화하고 서명하는 오버 헤드가 발생하므로 처리량이 줄어 듭니다.

SMB 암호화를 선택하면 GSSAPI 플래그가 데이터의 서명 및 봉인을 모두 사용하므로 Windows 스타일 SMB 서명 (서버 서명 옵션 참조)이 더 이상 필요하지 않습니다.

자동으로 설정하면 SMB 암호화가 제공되지만 적용되지는 않습니다. 필수로 설정하면 SMB 암호화가 필요하고 비활성화로 설정하면 SMB 암호화를 협상 할 수 없습니다.

기본값 : smb 암호화 = 자동

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


죄송합니다. 맨 페이지를 직접 읽을 수 있습니다. 인용에 대해 강조한 내용 : blogs.technet.com/b/filecab/archive/2012/05/03/… 와 같은 일부 페이지 는 Win 8이 SMB 암호화를 수행 할 수 있음을 나타냅니다. 해당 페이지 상단에 작성된 "여기의 모든 내용은 Windows 8에도 적용됩니다". 그 정보가 확실하지 않습니까?
Kai Petzke

또는 당신은 윈도우 서버 2012 느릅 나무가 지원하는 암호화 된 SMB 트래픽 사용할 수 있습니다
integratorIT

그러나 모든 클라이언트에 Windows Server 에디션이 필요하지 않습니까?
Kai Petzke
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.