smbpasswd
8

# smbpasswd

zmienia hasło SMB użytkownika

    	smbpasswd
    	-a
    	-x
    	-d
    	-e
    	-D poziom debugowania
    	-n
    	-r zdalna maszyna
    	-R kolejnosc odwzorowywania nazw
    	-m
    	-j DOMENA
    	-U nazwauzytkownika[%password]
    	-h
    	-s
    	nazwauzytkownika

## OPIS

Ten program jest częścią pakietu Samba.

Program smbpasswd ma kilka różnych funkcji, zależnie czy jest uruchamiany przez użytkownika root, czy nie. Gdy jest uruchamiany jako normalny użytkownik, pozwala mu (użytkownikowi) zmienić hasło SMB na każdej maszynie która przechowuje takie hała.

Domyślnie (przy uruchamianiu bez argumentów) spróbuje zmienić hasło SMB bieżącego użytkownika na lokalnej maszynie. Jest to podobne do działania programu `passwd(1)`. Jednakże `smbpasswd` różni się od `passwd` tym, że nie jest programem setuid root , ale działa w trybie klient-serwer i komunikuje się z lokalnie działającym smbd. W konsekwencji, aby zakończyło się to sukcesem, demon smbd musi być uruchomiony na lokalnej maszynie. Na maszynie UNIX zakodowane hasła SMB są zwykle przechowywane w pliku `smbpasswd(5)` .

Gdy jest uruchomiony bez żadnych opcji przez zwykłego użytkownika, `smbpasswd` zapyta o stare hasło, a potem o nowe dwukrotnie, aby upewnić się, że nowe hasło było wpisane poprawnie. Nie będzie echa na ekranie podczas wpisywania. Jeśli masz puste hasło smb (określone przez łańcuch "NO PASSWORD" w pliku `smbpasswd`), wtedy po prostu naciśnij klawisz <Enter> przy pytaniu o stare hasło.

smbpasswd może być również użyty przez zwykłego użytkownika do zmiany hasła SMB na zdalnych maszynach, takich jak Głowne Kontrolery Domeny Windows NT (NT PDC). Zobacz niżej opcje (`-r`) i `-U`.

Gdy jest uruchomiony przez root'a, `smbpasswd` pozwala dodawać i usuwać użytkowników w pliku `smbpasswd(5)` , jak również zmieniać atrybuty użytkowników w tym pliku. Gdy uruchomiony przez root'a, `smbpasswd` ma dostęp do lokalnego pliku `smbpasswd(5)` bezpośrednio, umożliwiając w ten sposób zmiany nawet, jeśli smbd nie jest uruchomiony.

## OPCJE

-a

  Ta opcja określa, że nazwa użytkownika powinna być dodana do lokalnego pliku `smbpasswd(5)` z nowym hasłem (naciśnij <Enter> jako stare hasło). Ta opcja jest ignorowana jeśli nazwa użytkownika już istnieje w pliku `smbpasswd(5)` i jest wówczas traktowana jak polecenie regularnej zmiany hasła. Zauważ, że użytkownik aby być dodanym, musi już istnieć w systemowym pliku haseł (zwykle /etc/passwd), albo żądanie dodania użytkownika zakończy się niepowodzeniem.

  Ta opcja jest dostępna tylko podczas uruchamiania `smbpasswd` jako root.

-x

  Ta opcja określa, że podana nazwa użytkownika powinna być usunięta z lokalnego pliku `smbpasswd (5)`.

  Ta opcja jest dostępna tylko podczas uruchamiania `smbpasswd` jako root.

-d

  Ta opcja określa, że podana nazwa użytkownika powinna być wyłączona w lokalnym pliku `smbpasswd(5)`. Jest to wykonywane przez wpisanie flagi 'D' w miejsce kontrolne konta w pliku `smbpasswd(5)`. Gdy zostanie to zrobione, wszystkie próby autentykacji poprzez SMB, przy użyciu tej nazwy użytkownika zakończą się niepowodzeniem.

  Jeśli plik `smbpasswd(5)` jest w 'starym' formacie (format pre-Samba 2.0) nie ma wówczas żadnego miejsca we wpisie hasła użytkownika do zapisania tej informacji, więc jest on wyłączany przez wpisanie znaków 'X' w miejsce hasła w pliku `smbpasswd(5)`. Zobacz `smbpasswd(5)` aby dowiedzieć się szczegółów o 'starym' i nowym formacie plików.

  Ta opcja jest dostępna tylko podczas uruchamiania `smbpasswd` jako root.

-e

  Ta opcja określa, że podana nazwa użytkownika ma być włączona w lokalnym pliku `smbpasswd(5)`, jeśli konto został wcześniej wyłączone. Jeśli konto nie było wyłączone, ta opcja jest bez efektu. Gdy konto jest włączone, wtedy użytkownik będzie mógł dokonywać ponownie autentykacji poprzez SMB.

  Jeśli plik smbpasswd jest w 'starym' formacie, wtedy `smbpasswd` zapyta o nowe hasło dla tego użytkownika. W przeciwnym wypadku konto będzie włączone przez usunięcie flagi 'D' z miejsca kontrolnego konta w pliku `smbpasswd(5)`. Zobacz plik `smbpasswd(5)` aby dowiedzieć się szczegółów o 'starym' i nowym formatcie plików.

  Ta opcja jest dostępna tylko podczas uruchamiania `smbpasswd` jako root.

-D poziomdebugowania

  poziom debugowania jest liczbą całkowitą od 0 do 10. Domyślną wartością, jeśli ten parametr nie jest określony, jest zero.

  Im większa jest to wartość, tym więcej detali będzie logowanych w plikach logu na temat aktywności serwera. Na poziomie 0, tylko krytyczne błędy i poważne ostrzeżenia będą rejestrowane.

  Poziomy ponad 1 będą generować znaczne ilości informacji logu i powinny być używane tylko podczas śledzenia problemu. Poziomy ponad 3 są zaprojektowane tylko dla użytku developerów i generują OGROMNE ilości danych logu, w większości ekstremalnie zagadkowych.

-n

  Ta opcja określa, że następująca po niej nazwa użytkownika powinna mieć hasło ustawione na null (tj. puste hasło) w lokalnym pliku `smbpasswd`. Odbywa się to przez wpisanie znaków "NO PASSWORD" jako pierwsza część pierwszego hasła przechowywanego w pliku `smbpasswd` .

  Zauważ, że aby pozwolić użytkownikom na logowanie się do serwera Samba gdy hasło zostało ustawione na "NO PASSWORD" w pliku `smbpasswd`, administrator musi ustawić następujący parametr w sekcji [global] pliku `smb.conf` :

  `null passwords = yes`

  Ta opcja jest dostępna tylko podczas uruchamiania `smbpasswd` jako root.

-r nazwa zdalnej maszyny

  Ta opcja pozwala użytkownikowi określić na jakiej maszynie chce zmienić swoje hasło. Bez tego parametru `smbpasswd` domyślnie przyjmuje lokalnego hosta. nazwa zdalnej maszyny jest nazwą NetBIOS serwera SMB/CIFS z którym należy się skontaktować aby dokonać zmiany hasła. Ta nazwa jest odwzorowana na adres IP używając standardowego mechanizmu odwzorowania nazw we wszystkich programach pakietu Samba. Zobacz parametr `-R name resolve order` aby dowiedzieć się szczegółów na temat zmiany tego mechanizmu.

  Nazwa użytkownika którego hasło będzie zmienione jest nazwą aktualnie zalogowanego użytkownika UNIX. Zobacz parametr `-U nazwauzytkownika` aby dowiedzieć się szczegółów na temat zmieniania hasła dla innej nazwy użytkownika.

  Zauważ, że jeśli zmieniasz hasło w domenie Windows NT, określona zdalna maszyna musi być Głównym Kontrolerem Domeny (PDC) dla domeny (Zapasowe Kontrolery Domeny (BDC) mają kopię tylko-do-odczytu bazy danych kont użytkowników i nie pozwolą na zmianę hasła).

  Zauważ, że Windows 95/98 nie mają prawdziwej bazy danych haseł, więc jest niemożliwe żeby zmienić hasło określając maszynę Win95/98 jako docelową zdalną maszynęł.

-R kolejnosc odwzorowania nazw

  Ta opcja pozwala użytkownikowi programu smbpasswd określić jakich usług odwzorowania nazw użyć podczas szukania nazwy NetBIOS hosta do którego jest podłączany.

  Tymi opcjami są :"lmhosts", "host", "wins" i "bcast". Powodują one, że nazwy są odwzorowywane jak poniżej:

  - `lmhosts` : Szukaj adresu IP w pliku Samba lmhosts.

  - `host` : Przeprowadź standardowe odwzorowanie nazwy hosta na adres IP przy użyciu systemowego szukania `/etc/hosts`, NIS lub DNS. Ta metoda rozwiązywania nazwy jest zależna od systemu operacyjnego. Przykładowo w systemie IRIX lub Solaris może to być kontrolowane przez plik `/etc/nsswitch.conf`.

  - `wins` : Zapytaj o nazwę pod adresem IP wymienionym w parametrze `wins server` w pliku `smb.conf`. Jeśli żaden serwer WINS nie został określony, ta metoda zostanie zignorowana.

  - `bcast` : Wykonaj rozgłaszanie na każdym ze znanych lokalnych interfejsów wymienionym w parametrze `interfaces` w pliku smb.conf. Jest to najmniej skuteczna spośród wszystkich metoda odwzorowania nazw, jako że zależy od istnienia docelowego hosta w lokalnie podłączonej podsieci.

  Domyślną kolejnością jest lmhosts, host, wins, bcast, i bez tego parametru oraz żadnego wpisu w pliku `smb.conf` , metody odwzorowania nazw będą wypróbowane w tej kolejności.

-m

  Ta opcja mówi smbpasswd że zmieniane konto jest kontem MASZYNY. Obecnie jest to stosowane, gdy Samba jest używana jako Główny Kontroler Domeny NT (NT PDC).

  Ta opcja jest dostępna jedynie podczas uruchamiania smbpasswd jako root.

-j DOMENA

  Ta opcja jest używana aby dodać serwer Samba do Domeny Windows NT jako członka Domeny mogącego autentykować konta użytkowników na Kontrolerze Domeny w ten sam sposób, co Windows NT Server. Zobacz opcję `security=domain` na stronie podręcznika `smb.conf(5)` .

  Aby użyć serwera Samba w ten sposób, Administrator Domeny Windows NT musi użyć programu "Server Manager for Domains" żeby dodać główną nazwę NetBIOS serwera Samba jako członka Domeny.

  Gdy to zostanie zrobione, aby przyłączyć się do Domeny wywołaj `smbpasswd` z tym parametrem. smbpasswd poszuka wtedy Głównego Kontrolera Domeny dla tej Domeny (umieszczonego w pliku `smb.conf` w parametrze `password server`) i zmieni hasło konta maszyny używane do tworzenia chronionej komunikacji w Domenie. To hasło jest wówczas przechowywane w TDB, zapisywalnym tylko przez root'a, o nazwie `secrets.tdb`.

  Gdy tylko ta operacja jest przeprowadzona, plik `smb.conf` może być zaktualizowany, aby ustawić opcję `security=domain` i wszystkie przyszłe logowania do serwera Samba będą autentykowane na Windows NT PDC.

  Zauważ, że nawet jeśli autentykacja jest przeprowadzana przez PDC, wszyscy użytkownicy korzystający z serwera Samba muszą nadal mieć ważne konto UNIX na tej maszynie.

  Ta opcja jest dostępna jedynie podczas uruchamiania smbpasswd jako root.

-U nazwauzytkownika

  Ta opcja może być użyta tylko w połączeniu z opcją `-r`. Podczas zmieniania hasła na zdalnej maszynie pozwala ona użytkownikowi na określenie nazwy użytkownika na tej maszynie, na której hasło będzie zmienione. Opcja ta jest obecna, aby umożliwić użytkownikom którzy mają różne nazwy użytkowników na różnych systemach, na zmianę tych haseł.

-h

  Ta opcja wyświetla tekst pomocy dla `smbpasswd`, wybierając poprawny dla uruchamiania jako root lub jako zwyczajny użytkownik.

-s

  Ta opcja powoduje, że smbpasswd zachowuje ciszę (tzn. nie zadaje pytań) i czyta jego stare i nowe hasłą ze standardowego wejścia, zamiast z `/dev/tty` (jak program `passwd(1)`). Ta opcja jest po to, aby pomóc ludziom piszącym skrypty używające smbpasswd.

nazwauzytkownika

  To określa nazwę użytkownika na której operować, przy wszystkich opcjach tylko root. Tylko root może określić ten parametr, jako że tylko root ma uprawnienia potrzebne do modyfikacji atrybutów bezpośrednio w lokalnym pliku smbpasswd.

## NOTATKI

Ponieważ `smbpasswd` pracuje w trybie klient-serwer komunikując się z lokalnym smbd, aby to działało dla użytkownika innego niż root, demon smbd musi być uruchomiony. Powszechnym problemem jest dodanie restrykcji dla hostów, które mogą mieć dostęp do `smbd` uruchomionego na lokalnej maszynie, poprzez określanie wpisu `allow hosts` lub `deny hosts` w pliku `smb.conf` i przeoczenie udzielenia dostępu "localhost" do smbd.

Dodatkowo, polecenie smbpasswd jest użyteczne tylko, jeśli Samba została ustawiona na korzystanie z kodowanych haseł. Zobacz plik `ENCRYPTION.txt` w katalogu docs, aby dowiedzieć się szczegółów jak to zrobić.

## WERSJA

Ta strona podrecznika jest poprawna dla wersji 2.2 pakietu Samba.

## ZOBACZ TEŻ

`smbpasswd(5)`, samba(7)

## AUTOR

Pierwotnie, Samba i związane z nią oprogramowanie były stworzone przez Andrew Tridgella. Samba jest teraz rozwijana przez Zespół Samba jako projekt Open Source podobnie jak jąfro Linux.

Pierwotnie, strony podręcznika Samba zostały napisane przez Karla Auera. Kody źrodłowe tych stron zostały przekonwertowane do formatu YODL (kolejny świetny kawałek oprogramowania Open Source dostępny na ftp://ftp.icce.rug.nl/pub/unix/) i zaktualizowane do wydania 2.0 samby przez Jeremy Allisona. Konwersja do DocBook dla Samba 2.2 została wykonana przez Geralda Cartera. Tłumaczenie na język polski i konwersję polskiej wersji do DocBook wykonał Rafał Szcześniak.