Linux/Ubuntu & Samba- Konfiguracja współdzielonego katalogu z anonimowym dostępem
W małych, domowych sieciach często zachodzi potrzeba współdzielenia plików między komputerami. Jeśli nie są to żadne wrażliwe dane, a jedynie zdjęcia, muzyka i im podobne treści, a także jest to sieć zamknięta, można nieco przymknąć oko na kwestie bezpieczeństwa i pozwolić na dostęp anonimowy. Spróbujmy więc wspólnie postawić serwer plików Samba, tak aby użytkownicy sieci lokalnej mieli zdalny i pełnoprawny dostęp do katalogu z naszego linuksa.
Zacznijmy od instalacji serwera Samba
Jeśli w systemie nie ma jeszcze obecnego serwera Samby, należy naturalnie zacząć od jego instalacji. Sprawa jest banalna, bo wszystko co potrzebne znajduje się w repozytoriach systemowych. Natomiast jeżeli trafiłeś na ten artykuł wiedziony trudnościami w konfiguracji współdzielonych katalogów, może warto najpierw odinstalować Sambę i wyczyścić pliki konfiguracyjne, tak byśmy mogli zacząć od zera? Do tego celu wydajmy następujące polecenia:sudo rm -rf /etc/samba/
sudo apt-get install samba
Jak widać wykonujemy je na prawach administratora. Najpierw pozbywamy się potencjalnie istniejących pakietów, następnie czyścimy istniejącą konfigurację by na końcu pobrać Sambę ponownie. Osoby nie posiadające wcześniej Samby oczywiście powinny się ograniczyć do ostatniego z poleceń (wytłuszczono).
Przygotujmy katalog do współdzielenia
Teraz kiedy Samba jest gotowa do pracy, możemy przygotować katalog, który będzie współdzielony między komputerami w sieci. Na potrzeby artykułu przyjmijmy, że jest to katalog /data/Public. Stworzyć go, to oczywiście pierwsza rzecz, którą powinniśmy zrobić, ale na tym nie koniec. Wymagane będą jeszcze zmiany zarówno w uprawnieniach dostępu do tego katalogu, jak i jego właściciela. Jak to już zostało powiedziane we wstępnie, interesować nas będzie dostęp anonimowy i pełny, czyli pozwolimy zarówno na odczyt, tworzenie jak i wykonywanie, użytkownikowi, który identyfikowany będzie jako nobody z grupy nogroup. Przejdźmy do dziania.sudo chmod -R 777 /data/Public
sudo chown -R nobody.nogroup /data/Public
Czyli stworzyliśmy katalog, ustawiliśmy uprawnienia i zmieniliśmy właściciela. Chociaż jeszcze Samba nic o tym katalogu nie wie, warto już w tym miejscu omówić pewien potencjalny problem. Mianowicie, może się zdarzyć, że pomimo nadania odpowiednich uprawnień, jak powyżej, zewnętrzny komputer podczas próby dostępu do katalogu zgłosi problem z dostępem (np. „Windows cannot access XXX You do not have permission to access XXX” z systemu Windows). Rzecz w tym, że aby możliwy był dostęp anonimowy, nie wystarczy nadać uprawnienia na końcowy, docelowy katalog (u nas – Public), a na każdy wiodący do katalogu głównego /. Czyli u nas pozostaje jeszcze katalog /data. To jest właśnie powód, dla którego tak naprawdę tworzymy nowy katalog w root'cie, a nie korzystamy z domyślnie istniejących w systemie. Dopełnijmy więc wymogu uprawnień:
Konfigurujemy Sambę
Przechodzimy do ostatniego etapu, czyli właściwej konfiguracji serwera Samba. Sprowadzi się to do edycji pliku: /etc/samba/smb.conf. Otwórzmy go w edytorze tekstu.Na końcu pliku konfiguracyjnego dopiszmy poniższe wpisy.
[Publiczny] path = /data/Public browseable = yes guest ok = yes read only = no create mask = 777
W nawiasach kwadratowych definiujemy etykietę dla współdzielonego katalogu, która będzie widoczna w sieci. Pozostałe parametry mówią same za siebie, dlatego zapiszmy zmiany, zamknijmy plik i wprowadźmy konfigurację do życia, restartując serwisy związane z Sambą:
sudo service nmbd restart
Uzyskujemy dostęp do plików
Kiedy już Samba jest prawidłowo skonfigurowana pozostaje sprawdzić połączenie z serwerem. W pierwszej kolejności należy ustalić jaki adres w sieci lokalnej jest przypisany komputerowi, na którym uruchomiliśmy Sambę. Można to zrobić np. poleceniem ifconfig:$ ifconfig
[…]
wlan0 Link encap:Ethernet HWaddr 10:08:b1:e4:d1:ff
inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0
[…]
W moim wypadku jest to adres 192.168.0.103.
Na Ubuntu możemy otworzyć Nautilusa, użyć skrótu klawiszowego Ctrl + L, który pozwoli podać adres z jakim chcemy się połączyć, a następnie wpisać: smb://192.168.0.103 (w systemie Windows wystarczy w Explorerze wpisać: \\192.168.0.103). Naszym oczom powinien ukazać się katalog o nazwie Publiczny, z którego możemy zarówno odczytywać pliki jak i dodawać własne.
Jeśli masz jakieś uwagi, bądź napotkałeś trudności, zachęcam do dyskusji w komentarzach.

Komentarze (25)