]> gitweb.morketsmerke.org Git - mmdev.git/commitdiff
Tworzenie rodziału 11. Podrozdział 11.4/11.4.5
authorxf0r3m <jakubstasinski@protonmail.com>
Fri, 22 Sep 2023 12:39:21 +0000 (14:39 +0200)
committerxf0r3m <jakubstasinski@protonmail.com>
Fri, 22 Sep 2023 12:39:21 +0000 (14:39 +0200)
articles/terminallog/Linux.Podstawy.html

index 0748172d14f1f5c6742a0278914f1d34cd606bfb..a7c44a73c5f545ee7e2aa33fc3018764cc4501af 100644 (file)
@@ -9848,6 +9848,148 @@ workgroup = WORKGROUP
         </p>
         <h4>Tworzenie udziałów Samba</h4>
         <p>
+          W pliku konfiguracyjnym <em>Samby</em> każdy udział jest odrębną 
+          sekcją. Nazwa udziału jest zarazem nazwą sekcji. Poniżej znajduje
+          sie przykładowa sekcja definiująca udział.
+        </p>
+<pre class="code-block">
+[nazwa_udziału]
+path = sciezka/do/katalogu
+comment = opis
+guest ok = no
+writeable = yes
+printable = no
+</pre>
+        <p>
+          Jak możemy zauważyć udostępnienie katalogu w sieci za pomocą
+          pakietu <em>Samba</em> nie wymaga za dużo pracy. Na przykładzie
+          pierwszym parametrem jest <code class="code-inline">path</code>,
+          określa on ścieżkę do katalogu, który mamy zamiar udostępnić. Na
+          temat opcji <code class="code-inline">comment</code> wspominałem
+          w podczas opisu eksportu katalogów domowych. Opcja
+          <code class="code-inline">guest ok</code> umożliwia udzielenie
+          dostępu anonimowego do udział. W tym przypadku dostęp w ten sposób
+          jest zablokowany. Rzadko się zdarza generalnie aby dostęp anonimowy
+          był wymagany, jeśli tak jest to najczęściej udział jest tylko
+          odczytu. Chciaż spotkałem się z taką prośbą aby skonfigurować udział
+          tak aby każdy mógł w nim zapisać informacje.
+          Opcja <code class="code-inline">writeable</code> konfiguruje czy na
+          udziale będzie można zapisywać jakie kolwiek dane. Ostatnia opcja
+          wprawdzie ma jedno głowne zadanie, wskazać <em>Sambie</em>, że ta
+          sekcja to współdzielony katalog, a nie udostępiona drukarka dlatego,
+          też ustawiono <em>drukowalnie</em> jako <em>nie</em>. Nie ma potrzeby
+          ustawiania opcji <em>browsable</em>, ponieważ domyślnie jest ona
+          włączona. Chcąc zmienić ten stan, należy zapisać jej wystąpienie
+          definicji udziału i ustawić wartość
+          <code class="code-inline">no</code>. Oczywiście jeśli jest taka
+          potrzeba możemy dodawać do definicji naszego udziału wiele innych
+          poznanych tutaj opcji takich jak domyślne uprawnienia, zezwolenie
+          na dostęp do tego udziału tylko dla wybranych użytkowników. Strona
+          podręcznika jest pełna opcji, jedną z ciekawszych może być
+          <code class="code-inline">veto files</code>, gdzie na podstawie
+          wzorca możem zablokować udostępnianie konkretnych rodzajów plików.
+          Na stronie podręcznika: <code class="code-inline">man 5 smb.conf</code>
+          znajdziemy więcej informacji na temat tej opcji oraz wielu innych.
+        </p>
+        <h3 id="11.4.4.sambaprinters">11.4.4. Współdzielenie drukarek przy użyciu pakietu Samba</h3>
+        <p>
+          Istnieje możliwość, aby za pomocą pakietu <em>Samba</em> można dać
+          możliwość drukowania użytkownikom innych platform na drukarkach
+          podłączonych do systemów z dystrybucjami Linuksa. Samo drukowanie
+          na dystrybucjach odbywa się za pomocą system <strong>CUPS</strong>,
+          ale to nie temat na teraz. Zajmiemy się nim w poźniejszych rodziałach.
+          Teraz zakładamy, że drukarki są podpiętę do naszego komputera, na
+          którym hostowana jest <em>Samba</em> i z tego komputera możemy
+          drukować.
+        </p>
+        <p>
+          Dlaczego przyjąłem takie założenia, otóż drukowanie to jeden z
+          cięższych tematów, ponieważ większość konsumenckich drukarek 
+          wsparcia dla dystrybucji Linuksa i korzystanie z nich swojego
+          rodzju loteria. Dlatego może warto zajrzeć na stronę
+          <a href="https://www.openprinting.org/printers">https://www.openprinting.org/printers</a>
+          przed zakupem drukarki i jeśli ma działać do tym system to kupić
+          jeden z dostępnych tam modeli. Chociaż może to niebyć w cale takie
+          prostę, poniważ wiekszość tych urządzeń lata świetności ma już za
+          sobą. Szkoda, bo za pomocą komputerów jednopłytkowych (takich jak
+          <em>Raspberry Pi</em>) można by drukarki, które nie są sieciowe
+          podłączyć do sieci.
+        </p>
+        <p>
+          Nie mniej jednak. W domyślnej konfiguracji Debiana jest zdefiniowane
+          współdzielenie drukarek. Obecne wersje <em>Samby</em> może nie
+          zajmują się udostępnianiem drukarek, ale ich eksportem podobnie
+          jak w przypadku katalogów domowych, przez co użytkownicy będą mieć
+          dostęp do wszystkich drukarek podłączonych do naszego serwera
+          <!--[Źródło: man 5 smb.conf]-->
+          <em>Samby</em>. Poniżej znajduje się wycinek konfiguracji dotyczącej
+          eksportu drukarek w Debianie:
+        </p>
+<pre class="code-block">
+[printers]
+   comment = All Printers
+   browseable = no
+   path = /var/tmp
+   printable = yes
+   guest ok = no
+   read only = yes
+   create mask = 0700
+</pre>
+        <p>
+          Wszystkie występujące tutaj opcje, dobrze już znamy. Zastanawiająca
+          może być wartość opcji <code class="code-inline">path</code>, która
+          wskazuje na ścieżkę <code class="code-inline">/var/tmp</code>.
+          <em>Samba</em> wymaga katalogu z możliwością zapisu przez pozostałych
+          użytkowników wraz z ustawionym bitem <em>sticky</em>, a to jedyny
+          obok, drugiego <em>/tmp</em> taki katalog. Problem z ogólnym
+          katalogiem <em>/tmp</em> jest taki, że znajduje się na ramdysku.
+          Posiada raczej małą objetość, a spływające od wielu użytkowników
+          pliki do drukarek mogą wyczerpać szybko to miejsce.
+        </p>
+        <h3 id="11.4.5.addingsambausers">11.4.5. Dodawanie użytkowników Samby</h3>
+        <p>
+          Samba prowadzi odrębną bazę użytkowników wykorzystując do tego inne
+          rodzaj szyfrowania. Dlatego też podczas "synchronizacji" (obecnie
+          niedziałające), wymaga wpisania hasła do <em>/etc/shadow</em>. Aby
+          uzyskać dostęp do udziałów użytkownicy innych platform muszą mieć
+          założone odrębne konta. Nazwy użytkowników kont <em>Samby</em> muszą
+          odpowiadać tym Uniksowym, więc nie możemy utworzyć użytkownika
+          mającego mieć dostęp tylko do udziałów, bez konta w systemie gdzie
+          oprograwowanie do współdzielenia zasobów w systemie. Takie konto
+          oczywiście możemy zabezpieczyć zmieniając domyślny program
+          odpowiedzialny za uruchomienie zaraz po zalogowaniu. Użytkowników do
+          <em>Samby</em> dodajemy za pomocą dostarczanego przez ten pakiet
+          polecenia, musimy użyć opcji <em>-a</em> wskazującej na dodanie.
+          Pominięcie tej opcji spowoduje, że będziemy zmieniać jedynie hasło.
+          Do obsługi użytkowników <em>Samby</em> wymagane są uprawnienia
+          administratora.
+        </p>
+<pre class="code-block">
+xf0r3m@debian:/var$ sudo smbpasswd -a debian
+[sudo] hasło użytkownika xf0r3m: 
+New SMB password:
+Retype new SMB password:
+Added user debian.
+</pre>
+        <p>
+          Tak naprawdę to tyle, konto użytkownika jest gotowe. Polecenie
+          <code class="code-inline">smbpasswd</code> posiada o wiele wiecej
+          funkcji niż tylko samo dodanie poniżej znajduje się lista opcji,
+          które mogą pomóc w administrowaniu użytkownikami <em>Samby</em>.
+        </p>
+        <ul>
+          <li><strong>-x</strong> - usunięcie użytkownika</li>
+          <li><strong>-d</strong> - zablokowanie użytkownika</li>
+          <li><strong>-e</strong> - odblokowanie użytkownika</li>
+        </ul>
+        <p>
+          Warto pamietać o tym, że użytkownicy służą jedynie uwierzytelnianiu,
+          natomiast autoryzacji do zapisu na jednym z udziałów należy dokonać
+          z użyciem użytkowników uniksowych. Nie warto szukać przyczyn
+          problemów z dostępem do elementów udziału w użytkownikach
+          <em>Samby</em>. Na początku warto w ogóle sprawdzić czy udział jest
+          dobrze ustawiony (<em>read only = no</em> oraz
+          <em>writeable = yes</em>) oraz czy uprawnienia do udziału.
         </p>
        </div>
                        <p style="margin: 15px; padding: 0; outline: 0;">