Wspólny internetowy system plików (CIFS) wyjaśniony w 5 minut lub krócej
Opublikowany: 2022-12-20Common Internet File System (CIFS) to protokół oferujący dostęp do plików, drukarek i portów szeregowych między różnymi komputerami w określonej sieci.
Dzięki temu dostępowi klienci mogą otwierać, czytać i edytować udostępnione dokumenty, które są automatycznie zapisywane na lokalnych komputerach.
Użytkownicy mogą również uzyskać dostęp do usług komunikacji międzyprocesowej i kolejek wydruku.
CIFS został opracowany na początku lat 80. w firmie IBM.
Jak działa CIF
CIFS opiera się na modelu klient-serwer. Zaangażowane są trzy podmioty; klient, aplikacja i serwer.
- Klient implementuje protokół, z którego pochodzi większość komunikatów.
- Serwer implementuje protokół i zapewnia większość funkcjonalności (usługi).
- Aplikacja może być oprogramowaniem, które wykonuje takie funkcje, jak graficzny interfejs użytkownika, zarządzanie plikami lub przetwarzanie tekstu.
Tak działa CIFS;
- Sesja NetBIOS w celu uzyskania dostępu do współdzielonych zasobów jest ustanawiana między klientem a serwerem.
- Proces negocjacji polega na tym, że klient i serwer ustalają dialekt, który będzie używany.
- Klient przesyła dane uwierzytelniające, głównie nazwę użytkownika i hasło, do serwera za pomocą unikalnego identyfikatora.
- Usługa Active Directory obsługuje głównie proces uwierzytelniania. Jednak CIFS nie obsługuje uwierzytelniania bezpośrednio.
- Serwer zwraca unikalny identyfikator, jeśli uwierzytelnienie się powiedzie.
- Serwer sprawdza, czy klient ma wymagane uprawnienia i czy nazwa udziału jest prawidłowa. Jeśli wszystkie te szczegóły są prawidłowe, klient uzyskuje dostęp do udostępniania zasobów, takich jak pliki i foldery.
Funkcje protokołu CIFS

Niezależność transportowa
Protokół CIFS nie nakłada żadnych wymagań na protokół transportowy, który wysyła komunikaty SMB między serwerem a klientem. CIFS jest po prostu przenoszony przez protokół zorientowany na połączenie.
Dostęp do plików
Klient/użytkownik może otwierać, czytać, modyfikować i zamykać wiele plików na serwerze docelowym. Zadaniem serwera jest udostępnianie plików, co oznacza, że wielu klientów może otwierać i odczytywać ten sam plik jednocześnie i na różnych urządzeniach.
Ma atrybuty plików, katalogów i woluminów
Protokół CIFS może wysyłać zapytania, a także, z ograniczonymi możliwościami, ustawiać atrybuty katalogu, pliku i woluminu. Listy kontroli dostępu (ACL) są również obsługiwane w systemie CIFS.
Rozszerzone podprotokoły
Protokół CIFS obsługuje różne podprotokoły, które oferują bezpośredni dostęp do dodatkowych funkcji serwera.
Obsługuje komunikację międzyprocesową nazwanego potoku
Klient może otwierać, zapisywać, odczytywać i zamykać nazwane potoki na określonym serwerze. Nazwane potoki oferują ścieżkę komunikacyjną między usługami serwera i klienta.
Elastyczna łączność
Jeden klient może łączyć się z wieloma serwerami. Taki klient może również wykonać jedno lub więcej połączeń z serwerem.
Obsługuje negocjacje funkcji
Obsługiwany zestaw funkcji i dialekt protokołu są negocjowane dla każdego połączenia.
Blokowanie plików i rekordów oraz bezpieczne buforowanie
Protokół CIFS obsługuje zapis i blokowanie plików. Ten sam protokół pozwala na oportunistyczne blokowanie plików, dając klientom możliwość buforowania danych w celu uzyskania lepszej wydajności.
Powiadomienia o zmianach w katalogach i plikach
Klienci korzystający z protokołu CIFS mogą wysyłać żądanie powiadamiania o każdej zmianie w zasobie, takim jak plik w katalogu lub katalog na określonym serwerze.
Obsługuje rozproszony system plików (DFS)
DFS tworzy globalną przestrzeń nazw zawierającą zasoby na wielu serwerach.
Obsługuje wiele kontekstów bezpieczeństwa
Klient może używać i tworzyć jeden lub więcej kontekstów zabezpieczeń w ramach określonego połączenia.
Warunki wstępne korzystania z CIFS
CIFS wymaga podstawowego transportu sieciowego (zwykle zorientowanego na połączenie). Jednak w niektórych przypadkach komunikaty CIFS mogą być przesyłane przez transport bezpołączeniowy z niewielkimi modyfikacjami.
Zanim komunikaty CIFS będą mogły być wymieniane przez transport zorientowany na połączenie, musi zostać nawiązane połączenie.
W przypadku wymiany komunikatów w takiej sieci CIFS zakłada, że dostępny jest jeden lub więcej z poniższych zasobów;
- Lokalna kolejka wydruku, która wysyła zadania drukowania do drukarki w celu zaoferowania usług drukowania.
- Lokalny system plików lub baza danych jest przedstawiana jako system plików umożliwiający udostępnianie plików. Zasób w tym przypadku jest nazywany składnicą obiektów.
- Do komunikacji międzyprocesowej przy użyciu abstrakcji potoków nazwanych potrzebna jest odpowiednia emulacja wbudowana w serwer CIFS lub system plików obsługujący potoki nazwane.
Serwer powinien również mieć lub zapewniać dostęp do bazy danych haseł w celu uwierzytelnienia.
Baza danych haseł przechowuje skróty haseł NT LAN Manager (NTLM) i LAN Manager (LM) w celu obsługi uwierzytelniania wezwania lub odpowiedzi.
Skonfiguruj CIFS dla systemu Windows
Większość użytkowników nigdy nie użyje CIFS, co wyjaśnia, dlaczego ta funkcja jest domyślnie wyłączona w systemach Windows 10 i 11.
Wykonaj następujące kroki, aby to działało;
- Przejdź do Panelu sterowania i kliknij Program i funkcje . Po lewej stronie kliknij Włącz lub wyłącz funkcje systemu Windows.

- Przewiń w dół, aż zobaczysz opcję Obsługa udostępniania plików SMB 1.0/CIFS i zaznacz to pole. Kliknij ikonę +, aby zobaczyć wszystkie zaznaczone opcje

Powyższe kroki włączą CIFS. Musisz jednak skonfigurować sieć, do której jesteś podłączony, dla CIFS. To jest proces;

- Przejdź do strony głównej Panelu sterowania l i kliknij Sieć i Internet .

2. Kliknij Centrum sieci i udostępniania . Po lewej stronie kliknij Zmień zaawansowane ustawienia udostępniania.

3. Kliknij Zmień zaawansowane ustawienia udostępniania. Możesz teraz przejść dalej i włączyć wykrywanie sieci oraz włączyć udostępnianie plików i drukarek. Kliknij „zapisz zmiany”.

Skonfiguruj CIFS w folderze
Na potrzeby tej demonstracji utworzymy folder o nazwie „Sample Folder” na dysku E.
- Kliknij prawym przyciskiem myszy Folder przykładowy , kliknij Właściwości, a następnie wybierz Udostępnianie .

2. Kliknij Udostępnij.

Należy jednak pamiętać, że wymienieni użytkownicy to tylko użytkownicy aktualnie skonfigurowani na komputerze z systemem Windows.
Odbiorcy muszą też skonfigurować wszystko po swojej stronie, jeśli chcą mieć dostęp do wysyłanych dokumentów.
CIFS a SMB: różnice
Przed sprawdzeniem różnic warto było dowiedzieć się, czym jest Server Message Block (SMB).
Server Message Block został zaprojektowany, aby umożliwić klientowi odczyt, zapis i edycję pliku na serwerze. Serwerem w tym przypadku jest sieć lokalna (LAN).
SMB na przestrzeni lat
- SMB 1.0 . Pierwsza wersja SMB jest utożsamiana z CIFS. Ta pierwsza odmiana została stworzona dla Windows NT 4.0 i komunikacja odbywała się przez interfejs NetBIOS.
- MŚP 2.0. Ta wersja została wprowadzona przez firmę Microsoft w 2006 roku za pośrednictwem systemu operacyjnego Windows Vista. Niektóre z wprowadzonych funkcji to lepsza skalowalność, obsługa dowiązań symbolicznych i ulepszone podpisywanie wiadomości.
- SMB 2.1 . Ta wersja została wprowadzona w tym samym czasie co Windows 7 w 2007 roku. Wersja 2.1 oferowała ulepszone optymalizacje wydajności i nowe mechanizmy blokowania.
- SMB 3.0 . Ta wersja została wprowadzona w tym samym czasie co Windows 8 w 2012 roku. SMB 3.0 nosił pierwotnie nazwę SMB 2.2, ale później zmieniono jej nazwę. Ta wersja stworzyła możliwość zdalnego dostępu do pamięci poprzez Remote Direct Memory Access (RDMA).
- SMB 3.1.1 . To jest najnowsza wersja w chwili pisania tego tekstu. SMB 3.1.1 został stworzony dla systemu Windows 10 w 2015 roku i wprowadził kontrolę integralności przed uwierzytelnieniem. Ta wersja wykorzystuje również szyfrowanie w trybie Galois/Counter (GCM).
Wiele osób myli CIFS i SMB. Warto zauważyć, że SMB został wprowadzony wcześniej niż CIFS.
Microsoft ulepszył SMB, aby stworzyć CIFS w latach 90., co czyni CIFS dialektem SMB. Jednak Microsoft kontynuował ulepszanie CIFS, a aktualna wersja to SMB 3.1.1.
Oto główne różnice między CIFS i SMB 3.1.1
| SMB 3.1.1 | CIFS | |
| Rok utworzenia | Stworzony przez IBM na początku lat 80 | Stworzony jako ulepszona wersja SBM przez Microsoft na początku lat 90 |
| Występ | SMB 3.1.1 został stworzony, aby rozwiązać większość problemów związanych z CIFS i wcześniejszymi wersjami SMB. Istnieją kontrole przed uwierzytelnieniem, które pomagają zabezpieczyć pliki na serwerze | Kiedy tworzono CIFS, było wiele problemów z transmisją plików, bezpieczeństwem itp. |
| Uwierzytelnianie | SMB 3.1.1 korzysta z uwierzytelniania AES w celu zapewnienia bezpieczeństwa plików udostępnianych na serwerze. Użytkownik musi podać nazwę użytkownika i hasło, aby uzyskać dostęp do pliku | CIFS nie ma uwierzytelniania. W związku z tym pliki nie są zabezpieczone w sieci. |
| Przechowywanie danych | SMB 3.1.1 wykorzystuje 32- lub 64-bitowe pola przechowywania danych, otwierając się na przechowywanie dużych plików. | Używa protokołów IP/TCP, które są podobne do protokołów HTTP i FTP. |
| Pracujący | Protokół komunikacyjny klient-serwer do współdzielenia dostępu do zasobów w sieci. | Klient/Użytkownik żąda pliku na serwerze znajdującym się w innym systemie komputerowym w tej samej sieci. |
Jakie są wady CIFS?
- Brak uwierzytelnienia . Jedną z największych wad CIFS jest brak uwierzytelniania, w przeciwieństwie do ostatnich wersji SMB.
- Obsługuje ograniczone rozmiary plików . CIFS może nie być idealny dla bardzo dużych plików, powodując opóźnienia, a nawet może powodować uszkodzenia podczas przesyłania.
Wniosek
Chociaż usługi udostępniania i dostępu do plików w chmurze wydają się przejmować, tradycyjne protokoły, takie jak CIFS, wciąż mają swoje miejsce. Obsługa bezpośrednich połączeń przez port TCP 445 była jednym z największych atutów CIFS. Mimo że Microsoft koncentruje się teraz na rozwijaniu SMB, nie można zapomnieć o CIFS, ponieważ jest to jeden z dialektów SMB.
Możesz także zbadać, jak uruchomić sprawdzanie plików systemowych w systemie Windows 11/10.
