Co je Common Internet File System (CIFS)?
Common Internet File System, zkráceně CIFS, představuje síťový protokol, který umožňuje sdílení souborů, tiskáren a sériových portů mezi různými zařízeními v síti. Díky tomuto protokolu mohou uživatelé na různých počítačích otevírat, číst a modifikovat dokumenty uložené na sdílených místech. Změny provedené v těchto dokumentech se automaticky ukládají zpět do sdíleného umístění. Kromě sdílení souborů umožňuje CIFS přístup k dalším službám, jako je meziprocesová komunikace a správa tiskových úloh.
Vývoj CIFS sahá až do raných 80. let, kdy byl tento protokol vytvořen společností IBM.
Princip fungování CIFS
CIFS funguje na principu klient-server. Komunikace probíhá mezi třemi základními prvky: klientem, serverem a aplikací. Klient je zodpovědný za iniciování komunikace a odesílání většiny zpráv. Server naopak reaguje na požadavky klientů a poskytuje jim požadované služby. Aplikace může být jakýkoli software, který využívá CIFS k provádění funkcí, jako je uživatelské rozhraní, správa souborů nebo zpracování textu.
Proces komunikace v CIFS zahrnuje následující kroky:
- Nejprve se mezi klientem a serverem vytvoří relace NetBIOS, která umožňuje přístup ke sdíleným prostředkům.
- Klient a server si v procesu vyjednávání domluví společný dialekt, který bude použit pro komunikaci.
- Klient poté odešle serveru autentizační údaje, obvykle uživatelské jméno a heslo, společně s unikátním identifikátorem.
- Ověřování uživatelů většinou zajišťuje Active Directory. Samotný CIFS se o autentizaci přímo nestará.
- Pokud je ověření úspěšné, server vrátí klientovi unikátní identifikátor.
- Server dále ověří, zda má klient dostatečná oprávnění pro přístup ke sdílenému prostředku a zda je zadaný název sdílené položky platný. V případě, že jsou všechna ověření úspěšná, získá klient přístup ke sdíleným prostředkům, jako jsou soubory a složky.
Základní charakteristiky protokolu CIFS
Nezávislost na přenosovém protokolu
Protokol CIFS nevyžaduje specifický přenosový protokol pro doručování zpráv SMB mezi serverem a klientem. Obvykle se využívá protokol orientovaný na spojení.
Přístup k souborům
Uživatelé, kteří mají klienta CIFS, mohou otevírat, číst, upravovat a zavírat soubory na vzdáleném serveru. Server je zodpovědný za správu sdílení, což znamená, že více klientů může současně přistupovat ke stejnému souboru z různých zařízení.
Atributy souborů, adresářů a svazků
CIFS umožňuje dotazovat a v omezeném rozsahu také měnit atributy adresářů, souborů a svazků. Stejně tak podporuje seznamy řízení přístupu (ACL).
Rozšířené podprotokoly
Protokol CIFS zahrnuje různé podprotokoly, které umožňují přímý přístup k dalším funkcím serveru.
Podpora meziprocesové komunikace pomocí pojmenovaných kanálů
Klienti mohou otevírat, zapisovat, číst a zavírat pojmenované kanály na serveru, což umožňuje komunikaci mezi serverem a klientskými službami.
Flexibilita připojení
Klient se může připojit k více serverům a zároveň může vytvořit jedno nebo více spojení k jednomu serveru.
Vyjednávání funkcí
Při každém připojení se vyjednává sada funkcí, které budou pro danou relaci použity, včetně dialektu protokolu.
Zamykání souborů a záznamů a bezpečné ukládání do mezipaměti
CIFS podporuje zamykání souborů a záznamů. Umožňuje také oportunistické zamykání souborů, čímž umožňuje klientům ukládat data do mezipaměti pro zvýšení výkonu.
Upozornění na změny adresářů a souborů
Klienti CIFS mohou požádat o upozornění, kdykoli dojde ke změně ve sdíleném prostředku, jako je například soubor v adresáři na serveru.
Podpora distribuovaného systému souborů (DFS)
DFS vytváří jednotný globální jmenný prostor pro prostředky uložené na více serverech.
Podpora více bezpečnostních kontextů
Klient může pro jedno spojení používat a vytvářet jeden nebo více bezpečnostních kontextů.
Předpoklady pro používání CIFS
Pro fungování CIFS je nezbytné mít základní síťové připojení, nejlépe orientované na spojení. I když existují výjimky, kdy lze zprávy CIFS přenášet i bez spojení, obvykle se využívá právě spojení. Pro výměnu zpráv CIFS prostřednictvím spojení je nutné ho nejprve navázat.
Při výměně zpráv v síti CIFS předpokládá, že jsou k dispozici následující prostředky:
- Místní tisková fronta pro odesílání tiskových úloh do tiskárny.
- Lokální souborový systém nebo databáze, která se chová jako souborový systém a umožňuje sdílení souborů. V tomto případě se jedná o úložiště objektů.
- Emulace pojmenovaného kanálu pro meziprocesovou komunikaci. Tato emulace musí být zabudována do serveru CIFS nebo do souborového systému, který pojmenované kanály podporuje.
Server také musí mít přístup k databázi hesel pro ověření uživatelů.
Tato databáze hesel uchovává hashe hesel NT LAN Manager (NTLM) a LAN Manager (LM), které se používají pro ověřování pomocí výzvy a odpovědi.
Konfigurace CIFS ve Windows
Většina uživatelů se s CIFS v běžném provozu nesetká, a proto je ve Windows 10 a 11 ve výchozím nastavení deaktivován. Pro jeho aktivaci je třeba provést následující kroky:
- Otevřete Ovládací panely a klikněte na Programy a funkce. Na levé straně okna klikněte na Zapnout nebo vypnout funkce systému Windows.
- V seznamu funkcí najděte položku Podpora sdílení souborů SMB 1.0/CIFS a zaškrtněte ji. Kliknutím na ikonu + zobrazíte všechny možnosti.
Tímto způsobem aktivujete CIFS. Nyní je ještě třeba nakonfigurovat síť, ke které jste připojeni, pro správné fungování CIFS. Postup je následující:
- V Ovládacích panelech klikněte na položku Síť a Internet.
- Klikněte na Centrum sítí a sdílení. V levém panelu zvolte Změnit pokročilá nastavení sdílení.
- V pokročilém nastavení sdílení povolte zjišťování sítě a sdílení souborů a tiskáren. Změny uložte.
Nastavení sdílení složky pomocí CIFS
Pro demonstraci si vytvoříme novou složku s názvem „Sample Folder“ na disku E.
- Klikněte pravým tlačítkem myši na složku „Sample Folder“, vyberte Vlastnosti a poté záložku Sdílení.
- Klikněte na tlačítko Sdílet.
Je důležité mít na paměti, že uživatelé, které zde přidáte, jsou pouze ti, kteří jsou nakonfigurováni na vašem počítači s Windows.
Uživatelé, kteří chtějí přistupovat ke sdíleným dokumentům, musí provést konfiguraci i na svém počítači.
CIFS vs. SMB: Rozdíly
Než se podíváme na rozdíly mezi CIFS a SMB, je důležité pochopit, co vlastně SMB je. Server Message Block (SMB) je protokol, který umožňuje klientům číst, zapisovat a modifikovat soubory na serveru v lokální síti (LAN).
Vývoj SMB
- SMB 1.0: První verze protokolu SMB, která je ekvivalentní CIFS. Byla vytvořena pro Windows NT 4.0 a komunikovala prostřednictvím rozhraní NetBIOS.
- SMB 2.0: Tato verze byla představena společností Microsoft v roce 2006 s operačním systémem Windows Vista. Přinesla vylepšení v oblasti škálovatelnosti, podporu symbolických odkazů a vylepšené podepisování zpráv.
- SMB 2.1: Tato verze byla vydána spolu s Windows 7 v roce 2007 a přinesla optimalizace výkonu a nové mechanismy zamykání.
- SMB 3.0: Verze uvedená s Windows 8 v roce 2012. Původně byla označena jako SMB 2.2, ale později byla přejmenována. Zavedla možnost vzdáleného přístupu k úložišti pomocí Remote Direct Memory Access (RDMA).
- SMB 3.1.1: Nejnovější verze, která byla představena s Windows 10 v roce 2015. Přináší kontroly integrity před ověřením a šifrování pomocí Galois/Counter Mode (GCM).
Lidé často zaměňují CIFS a SMB. Je důležité si uvědomit, že SMB byl vytvořen dříve než CIFS.
Společnost Microsoft v 90. letech SMB vylepšila a vytvořila CIFS, který je vlastně dialektem SMB. Nicméně vývoj pokračoval a aktuální verzí je SMB 3.1.1.
Zde jsou hlavní rozdíly mezi CIFS a SMB 3.1.1:
SMB 3.1.1 | CIFS | |
Rok vytvoření | Vytvořeno jako vylepšená verze SBM společností Microsoft na počátku 90. let | Vytvořeno IBM na počátku 80. let 20. století |
Výkon | SMB 3.1.1 byl navržen s ohledem na řešení problémů CIFS. Nabízí kontroly před autentizací, které zvyšují bezpečnost sdílených souborů. | CIFS měl při svém vzniku mnoho problémů s přenosem souborů a jejich zabezpečením. |
Autentizace | SMB 3.1.1 používá šifrování AES pro zabezpečení sdílených souborů. Uživatel musí zadat uživatelské jméno a heslo. | CIFS postrádá autentizaci a soubory nejsou chráněny v síti. |
Ukládání dat | SMB 3.1.1 používá 32 nebo 64 bitová pole pro ukládání dat a je schopen pracovat i s velkými soubory. Využívá protokoly IP/TCP, které se podobají protokolům HTTP a FTP. | |
Princip fungování | Komunikační protokol klient-server pro sdílení zdrojů v síti. Klient požaduje soubor ze serveru v jiné části sítě. |
Nevýhody CIFS
- Chybějící autentizace: Jednou z největších nevýhod CIFS je nedostatek autentizace, což je rozdíl oproti novějším verzím SMB.
- Omezení velikosti souborů: CIFS není ideální pro velmi velké soubory, což může vést ke zpoždění nebo dokonce k poškození dat během přenosu.
Závěr
I když cloudová řešení a služby pro sdílení dat získávají na popularitě, tradiční protokoly jako CIFS stále hrají svou roli. Přímé připojení přes TCP port 445 bylo kdysi velkou výhodou CIFS. A i když se Microsoft soustředí na vývoj SMB, nelze na CIFS zapomenout, protože je jedním z dialektů SMB.
Můžete také prozkoumat, jak spustit kontrolu systémových souborů ve Windows 11/10.