1.Przygotowanie maszyny wirtualnej z Ubuntu Server 18.04 * pierwsza karta sieciowa – zmostkowana * druga karta sieciowa – wewnętrzna intnet jeżeli posiadamy, możemy przywrócić odpowiednią migawkę z kartami już skonfigurowanymi 2. Uruchamiamy maszynę i sprawdzamy adres IP na zmostkowanej sieciówce nano /etc/netplan/01-netcf.yaml ustawiamy na pierwszej sieciówce adres pasujący do adresacji w naszej sieci domowej, u mnie to: po ustawieniu odpowiednich adresów zatwierdzamy ustawienia za pomocą netplan apply i sprawdzamy za pomocą ip a, sprawdzamy tez za pomocą polecenia ping czy mamy łączność z internetem. 3. Aktualizujemy zawartość repozytoriów: sudo apt update 4. Instalujemy serwer SAMBA: sudo apt install samba Folder gdzie serwer WWW będzie trzymał swoje pliki konfiguracyjne to: /etc/samba smb.conf – główny plik konfiguracyjny 5. Konfiguracja ustawień ogólnych w sekcji [global]: Interfejs na którym będzie działał serwer SAMBA Domyślnie serwer samby pracuje na wszystkich kartach sieciowych. Jeżeli chcielibyśmy by usługa nasłuchiwała na konkretnym interfejsie, w sekcji [global] jest od tego odpowiednia sekcja (zwróćcie uwagę, że zmienne służące do ustawienia tego są za komentowane – wszystko w pliku co się zaczyna od # albo od ; to komentarz): Sprawdźmy nazwę naszego interfejsu sieciowego (zmostkowanego, przez który mamy internet, bo jego będziemy używać do testów) ip a U mnie to interfejs o nazwie enp0s3, więc ustawiam odpowiednio zmienne w pliku konfiguracyjnym: Po zapisaniu pliku, oczywiście musimy zrestartować usługę – w tym przypadku mamy dwa procesy: service smbd restart service nmbd restart Ustawmy jeszcze nazwę serwera, grupę roboczą, oraz konto wykorzystywane do dostępu do udziałów bez autoryzacji: ntlm auth = true - zmienna dopisana, bo Win 10 ma problemy z podłączaniem się do Samby, to pomaga workgroup = WORKGROUP – nazwa grupy roboczej, dajemy taką jaką mamy w systemie, jeżeli chcemy się podłączać z Windows netbios name = Inazwisko – nazwa pod jaka wyświetli się nasz serwer , oczywiście w ćwiczeniu wpisujemy swoje dane guest account = inazwisko – jeżeli zrobimy udział dla gości bez logowania, to możemy zmienić domyślne konto, z którego będą zapisywać pliki na naszym serwerze – jeżeli nie ustawimy tej zmiennej to będzie to konto nobody (o tyle jest to istotne, ze trzeba później, robiąc przydział, pamiętać o uprawnieniach katalogu dla odpowiedniego konta, z którego będą zapisywać goście) w naszym ćwiczeniu użyjemy dla gości konta inazwisko (oczywiście wpiszcie swoje) wiec trzeba pamiętać, żeby stworzyć sobie takiego użytkownika: adduser inazwisko 5. Tworzenie udziałów anonimowych – bez logowania: Stwórzmy najpierw katalog który udostępnimy bez logowania: mkdir -p /home/samba/uczniowie teraz pamiętajmy o ustawieniu praw zapisu – w naszym przypadku możemy zrobić chown inazwisko /home/samba/uczniowie lub po prostu polecieć po łatwości i ustawić dla tego katalogu prawa 777 chmod 777 /home/samba/uczniowie Teraz odtwórzmy nasz plik z konfiguracją samby /etc/samba/smb.conf i na końcu pliku dodajmy taki wpis: Nazwa udziału to uczniowie, ścieżka która udostępniamy, to przygotowany przez nas wcześniej katalog, zmienne: guest ok = yes – dostęp bez konieczności autoryzacji hasłem browseable = yes – nasz udział będzie wyświetlał się na liście udziałów po połączeniu z serwerem, jeżeli tego nie ustawimy, to żeby dostać się do naszego udziału, będziemy musieli podać dokładną ścieżkę, czyli no.: //192.168.1.200/uczniowie writable = yes – nie trudno się domyślić, włączamy w naszym udziale możliwość zapisu Pamietajmy żeby po stworzeniu przydziału zrestartować serwer! 6. Tworzenie udziałów wymagających zalogowania: Stwórzmy najpierw katalog który udostępnimy dla użytkowników: mkdir -p /home/samba/dyrekcja teraz pamiętajmy o ustawieniu praw zapisu – w naszym przypadku będziemy udostępniać katalog użytkownikowi zsme, więc mogę go ustawić jako właściciela chown zsme /home/samba/dyrekcja lub po prostu polecieć po łatwości i ustawić dla tego katalogu prawa 777 chmod 777 /home/samba/dyrekcja wtedy nie ważne komu go udostępnimy, powinien mieć prawa zapisu: teraz otwórzmy plik konfiguracyjny samby i dodajmy na końcu nasz przydział: pojawiła nam się nowa zmienna: valid users = zsme – użytkownikiem uprawnionym dla tego udziału jest użytkownik zsme,jeżeli mamy więcej użytkowników, to oddzielamy ich nazwy przecinkiem W ramach ćwiczeń przygotujcie kolejny przydział: użytkownik : inazwisko wymaga logowania sciezka: /home/samba/inazwisko Pamietajmy żeby po stworzeniu przydziału zrestartować serwer! 6. Tworzenie udziałów dla grup użytkowników: Gdy mamy większa ilość osób którym byśmy chcieli przypisać dany udział, wygodniej będzie to zrobić dla grupy. Stwórzmy grupę nauczyciele: sudo groupadd nauczyciele stwórzmy konta użytkowników stefan i andrzej: adduser stefan adduser andrzej dodajmy do naszej grupy użytkowników : zsme, stefan, andrzej usermod -a -G nauczyciele zsme (oczywiście powtórzmy to dla wszystkich kont które chcemy dodać do grupy nauczyciele) Po wszystkim sprawdźmy, czy faktycznie konta które chcemy, są w odpowiedniej grupie nano /etc/group Stwórzmy katalog dla naszego udziału: mkdir -p /home/samba/nauczyciele nie zapomnijmy ustawić praw dostępu - ustawmy dla katalogu nauczyciele prawa 777 teraz otwórzmy plik konfiguracyjny samby i dodajmy na końcu nasz przydział dla grupy nauczyciele: Pamiętajmy żeby po stworzeniu przydziału zrestartować serwer! 7. Aktywwacja kont użytkowników w SAMBIE: Z zasobów mogą korzystać zalogowani użytkownicy (w przypadku konfiguracji security = user). Serwer samba wymaga utworzenie użytkowników zasobów (takich samych jak w systemie linux). Konto istniejącego użytkownika systemowego dodaje się do bazy użytkowników serwera samby za pomocą polecenia: smbpasswd. Czyli ustawienie hasła dla użytkownika zsme to: smbpasswd -a zsme Ustawmy hasła dla wszystkich naszych użytkowników. To samo polecenie służy do zmiany hasła użytkownika: 8. Testy działania: Utwórzmy w katalogach domowych naszych użytkowników jakieś testowe pliki : w katalogu domowym użytkownika zsme plik zsme.txt, w katalogu domowym użytkownika stefan plik stefan.txt i tak dalej. Sprawdźcie wszystkie utworzone przydziały czy działają poprawnie, czy wpuszczają odpowiednich użytkowników i czy pozwalają zapisywać !!!! Dostęp z cli Ubuntu: Instalujemy program smbclient sudo apt install smbclient podłączamy się do naszych udziałów w ten sposób: sudo smbclient //[IP_address or Host_name]/share_name –U username [adres_IP lub nazwa_hosta] to adres IP lub nazwa hosta serwera Samba [nazwa_udziału] to nazwa udziału w Sambie [nazwa użytkownika] to nazwa użytkownik uzyskujący dostęp do udziału Czyli np. podłączenie się do udziału dyrekcja przez użytkownika zsme to: smbclient //192.168.1.200/dyrekcja -U zsme przeglądanie zawartości katalogu to dir, wgrywanie coś do katalogu to put a ściąganie coś z katalogu to get Dostęp z Windowsa: Otwieramy dowolne okienko eksploratora i wpisujemy adres naszego przydziału w formacie: \\192.168.1.200\uczniowie możemy już kopiować pliki jak to w Windowsie. Dostęp z Ubuntu Desktop Najwygodniej korzysta się z udziałów w Sambie z Ubuntu desktopowego, ma on wbudowanego natywnego klienta: Otwieramy Pliki: Na dole okna po lewej stronie klikamy albo w sieć, albo w Połącz z serwerem: Ja kliknąłem w sieć i mogę przeglądać nasze udziały: Przy kliknięciu w Połącz z serwerem trzeba podać adres naszego serwera: Jak chcemy się „odpiąć” (wylogować) z udziału, to klikamy w tą mała strzałkę na liście udziałow po prawej: Skąd wziąć Ubuntu Desktop na testy, jak nie mamy maszyny wirtualnej ? Ściągnąć ISO, stworzyć nową maszynę w VB, podpiąć do niej ISO i nie instalować (choć polecam, przed egzaminem przyda się do powtórek) ale odpalić maszynę w trybie Live, bez instalacji: https://releases.ubuntu.com/18.04.5/ubuntu-18.04.5-desktop-amd64.iso ustawiam sieciowke na zmostkowaną Montuje iso z instalatorem Ubuntu do napędu, zaznaczam ze to LiveCD Wybieram, ze nie chce instalować, tylko wypróbować: System się uruchomił: Korzystam z Plików i łącze się z serwerem: Jak widać mam normalny dostęp do udziałów na naszym serwerze Samby: