Samba (software) - Samba (software)

Samba
Logo Samba 2010.svg
První vydání 1992 ; Před 29 lety ( 1992 )
Stabilní uvolnění
4.15  Upravte to na Wikidata / 20. září 2021 ; Před 21 dny ( 20. září 2021 )
Úložiště
Napsáno C , Python
Operační systém Multiplatformní
Typ Síťový souborový systém
Licence GPLv3
webová stránka www .samba .org

Samba je bezplatná opětovná implementace síťového protokolu SMB a byla původně vyvinuta Andrewem Tridgellem . Samba poskytuje souborové a tiskové služby pro různé klienty Microsoft Windows a může se integrovat s doménou Microsoft Windows Server , buď jako řadič domény (DC), nebo jako člen domény. Od verze 4 podporuje domény Active Directory a Microsoft Windows NT .

Samba běží na většině unixových systémů, jako jsou Linux , Solaris , AIX a varianty BSD , včetně Apple macOS Server a macOS client ( Mac OS X 10.2 a vyšší). Samba také běží na řadě dalších operačních systémů, jako jsou OpenVMS a IBM i . Samba je standardem téměř ve všech distribucích Linuxu a je běžně součástí základní systémové služby i v jiných operačních systémech založených na Unixu. Samba je vydávána za podmínek obecné veřejné licence GNU . Název Samba pochází z SMB ( Server Message Block ), což je název proprietárního protokolu používaného síťovým souborovým systémem Microsoft Windows.

Raná historie

Andrew Tridgell vyvinul první verzi Samba Unix v prosinci 1991 a lednu 1992, jako doktorand na Australian National University , pomocí paketového vyhledávače pro síťovou analýzu protokolu používaného serverovým softwarem DEC Pathworks . V době prvních vydání, verze 0,1, 0,5 a 1,0, všechny z první poloviny ledna 1992, nemělo správné jméno a Tridgell jej nazval pouze „souborový server Unix pro Dos Pathworks“. V době verze 1.0 si uvědomil, že „ve skutečnosti implementoval protokol netbios“ a že „tento software lze použít s jinými klienty PC“.

Se zaměřením na interoperabilitu s Microsoft LAN Manager , Tridgell vydal "netbios for unix", pozorovatel, verze 1.5 v prosinci 1993. Toto vydání bylo první, které zahrnovalo klientský software i server. V této době byl také jako licence vybrán GPL2.

V polovině série 1,5 byl název změněn na smbserver . Tridgell však obdržel oznámení o ochranné známce od společnosti „Syntax“, která prodala produkt s názvem TotalNet Advanced Server a vlastnila ochrannou známku pro „SMBserver“. Název „Samba“ byl odvozen spuštěním unixového příkazu grep prostřednictvím systémového slovníku a hledáním slov obsahujících písmena S, M a B v uvedeném pořadí (tj. ). grep -i '^s.*m.*b' /usr/share/dict/words

Verze 1.6, 1.7, 1.8 a 1.9 následovaly poměrně rychle, přičemž posledně uvedená byla vydána v lednu 1995. Tridgell uvažuje o přijetí CVS v květnu 1996 u příležitosti zrození týmu Samba, ačkoli tam byli příspěvky od jiných lidí, zejména Jeremy Allison , dříve.

Verze 2.0.0 byla vydána v lednu 1999 a verze 2.2.0 v dubnu 2001.

Historie verzí

Verze 3.0.0, vydaná 23. září 2003, byla významným upgradem. Samba získala možnost připojit se ke službě Active Directory jako člen, i když ne jako řadič domény. Následná bodová vydání na 3.0 přidala menší nové funkce. V současné době je nejnovější verze této série 3.0.37, vydaná 1. října 2009 a dodávaná na základě dobrovolnosti. Série 3.0.x oficiálně dosáhla konce životnosti dne 5. srpna 2009.

Verze 3.1 byla použita pouze pro vývoj.

Ve verzi 3.2 se projekt rozhodl přejít na časově závislá vydání. Nové hlavní verze, jako jsou 3.3, 3.4 atd., Se budou objevovat každých šest měsíců. Nové funkce budou přidány pouze po dokončení hlavní verze, bodové verze budou pouze pro opravy chyb. Také verze 3.2 znamenala změnu licence z GPL2 na GPL3, přičemž některé části byly vydány pod LGPL3. Hlavní technickou změnou ve verzi 3.2 bylo automatické generování velké části kódu DCE/RPC, který byl dříve vyráběn ručně. Verze 3.2.0 byla vydána 1. července 2008 a její aktuální verze je 3.2.15 od 1. října 2009. Série 3.2.x oficiálně dosáhla konce životnosti 1. března 2010.

datum Verze Popis
23. září 2003 Stará verze, již není udržována: 3,0 Podpora služby Active Directory
1. července 2008 Stará verze, již není udržována: 3.2 Bude aktualizován podle potřeby pouze pro bezpečnostní problémy
27. ledna 2009 Stará verze, již není udržována: 3.3
3. července 2009 Stará verze, již není udržována: 3.4 Jednalo se o první vydání, které obsahovalo zdrojový kód Samba 3 i Samba 4.
1. března 2010 Stará verze, již není udržována: 3.5 Jednalo se o první verzi, která zahrnovala experimentální podporu pro SMB2 .
09.08.2011 Stará verze, již není udržována: 3.6 Toto je první větev, která obsahuje plnou podporu pro SMB2.
11. prosince 2012 Stará verze, již není udržována: 4,0 Jedná se o hlavní přepis, který umožňuje Sambě být řadičem domény Active Directory a plně se účastnit domény Windows Active Directory. Jeho první technický náhled (4.0.0TP1) byl vydán v lednu 2006 po 3 letech vývoje.
10. října 2013 Stará verze, již není udržována: 4.1 podpora pro SMB3
4. března 2015 Stará verze, již není udržována: 4.2 Komprese souborů založená na Btrfs , snímky a integrace winbind
08.09.2015 Stará verze, již není udržována: 4.3 Nové funkce protokolování, podpora SMB 3.1.1
22. března 2016 Stará verze, již není udržována: 4.4 Asynchronní flush požadavky
7. září 2016 Stará verze, již není udržována: 4.5 NTLM v1 je ve výchozím nastavení zakázán, zobrazení virtuálního seznamu, různá vylepšení výkonu
7. března 2017 Stará verze, již není udržována: 4.6 Podpora více procesů Netlogon
21. září 2017 Stará verze, již není udržována: 4.7 Samba AD s MIT Kerberos
13. března 2018 Stará verze, již není udržována: 4.8 Podpora Apple Time Machine . Nastavení používající režimy zabezpečení „doména“ nebo „reklamy“ nyní vyžadují spuštění „winbindd“.
13. září 2018 Stará verze, již není udržována: 4.9 Mnoho změn: viz poznámky k verzi
19. března 2019 Stará verze, již není udržována: 4.10
17. září 2019 Stará verze, již není udržována: 4.11 SMB1 je ve výchozím nastavení zakázán jako zmírnění chyby zabezpečení WannaCry .
3. března 2020 Stará verze, již není udržována: 4.12
22. září 2020 Starší verze, ale stále udržovaná: 4.13 Samba 4.13 zvyšuje minimální verzi Pythonu na 3.6.
9. března 2021 Starší verze, ale stále udržovaná: 4.14 Generální oprava subsystému VFS a další, viz poznámky k verzi .
20. září 2021 Aktuální stabilní verze: 4.15 Mnoho změn, viz poznámky k verzi .
Legenda:
Stará verze
Starší verze, stále udržovaná
Nejnovější verze
Nejnovější verze náhledu
Budoucí vydání

Bezpečnostní

Některé verze Samba 3.6.3 a nižší trpí vážnými bezpečnostními problémy, které mohou anonymním uživatelům umožnit získat root přístup k systému z anonymního připojení, a to využitím chyby ve vzdáleném volání procedury Samby .

12. dubna 2016 byl odhalen Badlock, zásadní bezpečnostní chyba ve Windows a Sambě. Na visací zámek pro Sambu odkazuje CVE - 2016-2118 (možné útoky SAMR a LSA uprostřed).

Dne 24. května 2017 bylo oznámeno, že se chyby zabezpečení Vzdálené spuštění kódu byly nalezeny v Samba pojmenovaný EternalRed nebo SambaCry , který ovlivňuje všechny verze od roku 3.5.0. Této chybě zabezpečení byl přiřazen identifikátor CVE - 2017-7494 .

Dne 14. září 2020, je proof-of-concept využít pro netlogon zranitelnosti zvané Zerologon ( CVE - 2020 - 1472 ), v nichž náplast existuje od srpna byla zveřejněna. Některé federální agentury používající software byly objednány k instalaci opravy.

Funkce

Samba umožňuje sdílení souborů a tisku mezi počítači se systémem Microsoft Windows a počítači se systémem Unix. Jedná se o implementaci desítek služeb a tuctu protokolů, včetně:

  • NetBIOS přes TCP/IP ( NBT )
  • SMB (v některých verzích známé jako CIFS)
    • Samba podporuje rozšíření POSIX pro CIFS/SMB. Počáteční rozšíření bylo CIFS VFS (CAP_UNIX) z roku 2004, které bylo poněkud nahrazeno SMB3.
  • DCE/RPC nebo konkrétněji MSRPC , sada protokolů Network Neighborhood
  • WINS server také známý jako NetBIOS Name Server (NBNS)
  • Sada protokolů NT Domain, která zahrnuje přihlášení k doméně NT
  • Databáze správce zabezpečení (SAM)
  • Služba Local Security Authority (LSA)
  • Služba tisku ve stylu NT (SPOOLSS)
  • NTLM
  • Přihlášení do Active Directory pomocí upravených verzí Kerberos a LDAP
  • Server DFS

Všechny tyto služby a protokoly jsou často nesprávně označovány pouze jako NetBIOS nebo SMB. Protokoly NBT (NetBIOS přes TCP/IP) a WINS a jejich základní protokol SMB verze 1 jsou v systému Windows zastaralé. Od Windows Vista je protokol WS-Discovery součástí SMB2 a jeho nástupců, kteří je nahrazují. (WS-Discovery je na platformách podobných Unixu implementován démony třetích stran, které umožňují objevovat akcie Samby, když jsou zastaralé protokoly deaktivovány).

Samba nastavuje síťové sdílené položky pro vybrané unixové adresáře (včetně všech obsažených podadresářů). Ty se uživatelům systému Microsoft Windows zdají jako normální složky systému Windows přístupné prostřednictvím sítě. Unixoví uživatelé mohou buď namontovat akcie přímo jako součást své struktury souborů pomocí příkazu mount.cifs nebo alternativně lze použít utilitu, smbclient (libsmb) nainstalován Samba číst akcie s podobným rozhraním na standardní příkazového řádku FTP program. Každý adresář může mít nad běžnými unixovými ochranou souborů překrytá jiná přístupová oprávnění. Například: domovské adresáře by měly přístup pro čtení/zápis pro všechny známé uživatele, což by každému umožnilo přístup ke svým vlastním souborům. Stále by však neměli přístup k souborům ostatních, pokud by toto oprávnění normálně neexistovalo. Všimněte si toho, že sdílená složka netlogon, obvykle distribuovaná jako sdílená složka pouze pro čtení z /etc/samba/netlogon , je přihlašovací adresář pro přihlašovací skripty uživatelů.

Služby Samba jsou implementovány jako dva démoni :

  • smbd, který poskytuje služby sdílení souborů a tiskáren, a
  • nmbd, který poskytuje službu názvů adres NetBIOS na IP. NetBIOS přes TCP/IP vyžaduje nějakou metodu pro mapování názvů počítačů NetBIOS na IP adresy sítě TCP/IP.

Konfigurace Samba je dosaženo úpravou jeden soubor (obvykle nainstalován jako /etc/smb.conf nebo /etc/samba/smb.conf ). Samba může také poskytovat uživatelské přihlašovací skripty a implementaci zásad skupiny prostřednictvím poledit .

Samba je součástí většiny distribucí Linuxu a spouští se během procesu spouštění. Například na Red Hat skript /etc/rc.d/init.d/smb běží při zavádění a spouští oba démony. Samba není součástí systému Solaris 8, ale na webu Samba je k dispozici verze kompatibilní se systémem Solaris 8. OS / 2 na bázi ArcaOS zahrnuje Sambu nahradit staré IBM LAN Server software.

Samba obsahuje nástroj pro správu webu s názvem Samba Web Administration Tool (SWAT). SWAT byl odstraněn počínaje verzí 4.1.

Samba TNG

Samba TNG (The Next Generation) byla rozdvojena na konci roku 1999, po neshodách mezi vedoucími týmu Samba a Lukem Leightonem ohledně směrů projektu Samba. Nepodařilo se jim dosáhnout dohody o přechodové cestě vývoje, která by umožnila pomalu integrovat výzkumnou verzi Samby, kterou vyvíjel (v té době známou jako Samba-NTDOM), do Samby. Vývoj byl minimální, kvůli nedostatku vývojářů. Tým Samba TNG často nasměroval potenciální uživatele na Sambu kvůli její lepší podpoře a vývoji.

Klíčovým cílem projektu Samba TNG bylo přepsat všechny služby NT Domains jako projekty FreeDCE . To bylo obtížné, protože služby byly vyvíjeny ručně prostřednictvím reverzního inženýrství sítě, s omezeným nebo žádným odkazem na dokumentaci DCE/RPC.

Klíčový rozdíl od Samby byl v implementaci sady protokolů NT Domains a služeb MSRPC . Samba zpřístupňuje všechny služby NT Domains z jednoho místa, zatímco Samba TNG oddělila každou službu do vlastního programu.

Společnost ReactOS začala pro implementaci SMB používat služby Samba TNG. Vývojáři obou projektů měli zájem vidět návrh Samba TNG, který pomáhá přimět ReactOS mluvit k sítím Windows. Společně pracovali na přizpůsobení síťového kódu a sestavení systému. Vícevrstvý a modulární přístup usnadnil přenesení každé služby do systému ReactOS.

Viz také

Reference

externí odkazy