Bagaimana cara memaksa protokol SMB2 di samba?

13

Untuk alasan keamanan, saya ingin menonaktifkan protokol SMB1 di samba. Apa itu mungkin? Saya menjalankan Ubuntu 14.04 LTS.

Avio
sumber

Jawaban:

9

Pengujian saya dengan Nessus telah mengindikasikan SMBv1 hanya dinonaktifkan saat pengaturan

min protocol = SMB2

di bagian [global] dari smb.conf. Core, LANMAN2 dan NT1 masih ditandai sebagai rentan.

Christian M.
sumber
1
Terima kasih, ini membantu. Hanya catatan untuk yang lain: file konfigurasi smb.confada di /etc/samba/Ubuntu 12.
ConvexMartian
4
Untuk pembaca masa depan: Ini berfungsi untuk server, karena min protocol"adalah sinonim untuk server min protocol" ( samba.org/samba/docs/man/manpages-3/… ). Ada juga client min protocol, yang membantu klien menghindari SMB1 jika server masih mendukungnya.
Jan D
1
Jangan lupa untuk me-restart layanan sesudahnya: CentOS 7 / RHEL 7 / Fedora Linux: $ sudo systemctl restart smb.service Debian 8.x / Ubuntu 16.04 LTS Linux: $ sudo systemctl restart smbd.service
Jack Wire
Saya mendapat kesalahan Mengabaikan nilai 'SMB2' yang tidak valid untuk parameter 'protokol min'. Saya menggunakan Samba 3.4.9
josircg
1
@josircg SMB2 pertama kali didukung pada 3.6.0
kbulgrien
5

Saya harus menambahkan ini agar berfungsi di 12-server ubuntu lama saya ; dengan salah satu dari min / max-kombinasi SMBv1 diaktifkan tetapi dengan keduanya berfungsi dengan baik.

[global]
min protocol = SMB2                                                                                 
max protocol = SMB2                                                                                 
client min protocol = SMB2
client max protocol = SMB2
P1ersson
sumber
1
Ini Bekerja dengan "CentOS 6" windows tidak lagi muncul. "Anda tidak dapat terhubung ke berbagi file karena itu tidak aman."
Neil
Ini juga berfungsi ketika mencoba me-mount dari OSX High Sierra. Hanya menggunakan protokol min tidak akan memungkinkan saya untuk terhubung.
user545424
2

Meskipun saya tidak yakin di mana SMB1 cocok (Dugaan saya adalah INTI), berikut adalah urutan protokol dari "man smb.conf"

   max protocol (G)
       The value of the parameter (a string) is the highest protocol level that will be supported by the server.
       Possible values are :
       ·   CORE: Earliest version. No concept of user names.
       ·   COREPLUS: Slight improvements on CORE for efficiency.
       ·   LANMAN1: First
            modern version of the protocol. Long filename support.
       ·   LANMAN2: Updates to Lanman1 protocol.
       ·   NT1: Current up to date version of the protocol. Used by Windows NT. Known as CIFS.
       ·   SMB2: Re-implementation of the SMB protocol. Used by Windows Vista and newer.

   min protocol (G)
       The value of the parameter (a string) is the lowest SMB protocol dialect than Samba will support. Please refer to the max
       protocol parameter for a list of valid protocol names and a brief description of each. You may also wish to refer to the C
       source code in source/smbd/negprot.c for a listing of known protocol dialects supported by clients.
       If you are viewing this parameter as a security measure, you should also refer to the lanman auth parameter. Otherwise, you
       should never need to change this parameter.
       Default: min protocol = CORE
       Example: min protocol = NT1
Clark Mercer
sumber
1

Saya pikir saya berhasil menonaktifkan protokol SMB1 dengan dua baris ini di [global]bagian:

min protocol = LANMAN2
max protocol = SMB3

Saya masih tidak sepenuhnya yakin tentang urutan protokol di Samba, tapi saya cukup yakin itu LANMAN2setelah SMB1.

Avio
sumber
Seperti yang ditunjukkan Christian M., ini bukan jawaban yang benar.
Simen
Sepakat. Jadi lebih baik jika saya memeriksa ulang konfigurasi samba saya ...
Avio
1

Saya pikir apa yang Anda cari dalam file smb.conf adalah:

### 
protokol min server = SMB2_10
protokol min klien = SMB2
protokol maks klien = SMB3
Bad Bad Pants
sumber