Jak skonfigurować whitelistę na serwerze Project Zomboid
Whitelista w Project Zomboid to lista kont. Tworzysz nazwę użytkownika i hasło dla każdego gracza, a każdy bez konta zostaje odrzucony w oknie logowania. Wystarczą dwie rzeczy: wyłącz Open to new players, a potem uruchom adduser raz na gracza.
Wszystko poniżej sprawdziliśmy na działającym serwerze Build 42. To istotne, bo kilka komend, które inne poradniki wciąż polecają, zostało usuniętych i odpowiada teraz Unknown command.
Krok 1: wyłącz "Open to new players"
Otwórz serwer w panelu sterowania, wybierz Config na liście sekcji i wyłącz Open to new players w karcie Server browser. Zapisz, a potem zrestartuj serwer.

Ten przełącznik to cały mechanizm whitelisty. Plik konfiguracyjny opisuje go słowami samej gry: klienci mogą dołączyć bez wcześniej założonego konta, a gdy jest wyłączony, administrator musi sam tworzyć pary nazwa użytkownika plus hasło.
Baner na górze zakładki to nie ozdoba. Serwer czyta konfigurację raz przy starcie, więc dla graczy nic się nie zmieni, dopóki nie zrestartujesz.
Przy okazji możesz wyłączyć List on public browser. Trzyma to serwer poza publiczną listą w grze, co ma sens, skoro i tak nikt nie dołączy.
Krok 2: załóż konto każdemu graczowi
Otwórz zakładkę Console i uruchom jedną linię na gracza:
adduser "Alice" "changeme123"
Serwer odpowiada:
User Alice created with password

Cztery rzeczy warte zapamiętania:
- Nazwa to to, co gracz wpisuje w oknie logowania gry. To nie jest jego nazwa ze Steam i nie musi się z nią zgadzać.
- Zostaw cudzysłowy wokół obu wartości. Nazwa albo hasło ze spacją bez nich nie zadziała.
- Hasło zostaje w logu konsoli otwartym tekstem, więc traktuj je jako jednorazowe.
- Uruchomienie
adduserna istniejącej już nazwie zwróciA user with this name already exists. Nic się nie zepsuło, ten gracz ma już konto.
Najszybszy sposób na whitelistę dla znajomych
Przy wyłączonym Open to new players nikt nie założy konta. O to właśnie chodzi i dlatego kolejność ma znaczenie:
- Zostaw przełącznik włączony.
- Niech wszyscy dołączą raz. Każdy gracz sam wybiera nazwę użytkownika i hasło w oknie logowania, a serwer zapisuje konto.
- Wyłącz przełącznik i zrestartuj.
Wszyscy, którzy już weszli, zachowują konto, a nikt nowy go nie założy. To zamiennik dla addalltowhitelist, które starsze poradniki polecają dokładnie do tego i którego Build 42 już nie ma.
Masz już konto admina
Nie zakładaj sobie drugiego. Serwer startuje z kontem admina zbudowanym ze zmiennych ADMIN_USER i ADMIN_PASSWORD w zakładce Startup i od pierwszego uruchomienia jest ono na whiteliście z pełnymi uprawnieniami.
Obie mają domyślnie wartość admin. Zmień ADMIN_PASSWORD w zakładce Startup i zrestartuj: serwer zastosuje je przy starcie i wypisze w konsoli admin password changed via -adminpassword option. Zrób to, zanim kogokolwiek wpuścisz, z whitelistą czy bez, bo to konto potrafi spawnować przedmioty, teleportować i banować.
Jak kogoś usunąć
removeuserfromwhitelist "Alice"
Serwer odpowiada User Alice removed from white list. Jeśli chcesz zachować konto, ale odebrać uprawnienia, ustaw poziom:
setaccesslevel "Alice" "user"
Poprawne poziomy to dokładnie: banned, user, priority, observer, gm, moderator, admin.
Zapomniane hasło zresetujesz komendą setpassword "Alice" "nowehaslo". Konsola odpisuje nowym hashem, więc od razu wiesz, że się udało.
Komendy z innych poradników, które Build 42 odrzuca
| Komenda | Co odpowiada serwer |
|---|---|
addusertowhitelist "Alice" |
Unknown command |
addalltowhitelist |
Unknown command |
changepwd "old" "new" |
Unknown command |
setaccesslevel "Alice" "none" |
Access Level '' unknown |
removeadmin "Alice" |
Access Level '' unknown |
Czyli: adduser dodaje, removeuserfromwhitelist usuwa, a setaccesslevel "Alice" "user" degraduje admina.
Gdzie przechowywana jest whitelista
W bazie SQLite obok plików konfiguracyjnych, w /home/container/.cache/db/Pterodactyl.db. Plik nosi nazwę zmiennej startowej SERVER_NAME, według tej samej reguły co pliki konfiguracyjne.
Tabela whitelist ma jeden wiersz na konto: username, password jako hash bcrypt, lastConnection, steamid oraz role. To ostatnie to liczba wskazująca na tabelę role: 1 banned, 2 user, 3 priority, 4 observer, 5 gm, 6 moderator, 7 admin. Bany po Steam-ID leżą w osobnych tabelach, bannedid i bannedip.
Plik możesz otworzyć w DB Browser for SQLite przy zatrzymanym serwerze, co pomaga przy większych porządkach. Hasła są hashami, więc nic tam nie odczytasz, a do codziennych zmian bezpieczniejsze są komendy konsoli.
Częste problemy
Gracze nadal wchodzą, chociaż wyłączyłem przełącznik. Konfiguracja jest czytana przy starcie. Zrestartuj serwer.
Moja zmiana się nie zapisała.
Project Zomboid czyta tylko pliki konfiguracyjne nazwane według zmiennej startowej SERVER_NAME i nadpisuje je przy każdym starcie. Jeśli edytowałeś plik ręcznie, sprawdź najpierw jego nazwę. Pełne wyjaśnienie w Jak zmienić ustawienia serwera Project Zomboid.
Gracz jest odrzucany, choć go dodałem. Nazwy są dokładne. Sprawdź literówkę albo spację na końcu i pamiętaj, że nazwa konta to nie nazwa ze Steam.
Sam nie mogę wejść.
Zaloguj się przez ADMIN_USER i ADMIN_PASSWORD z zakładki Startup, a nie nazwą ze Steam.
FAQ
Czy whitelista używa Steam-ID? Nie. Konta to nazwa użytkownika i hasło. Steam-ID używa tylko osobna lista banów.
Czy hasło serwera to to samo? Nie. Hasło serwera to jeden wspólny sekret: kto je ma, ten wejdzie, a ono się rozchodzi. Whitelista działa per gracz, więc możesz odebrać dostęp jednej osobie bez ruszania reszty. Obie rzeczy da się łączyć.
Ile kont może założyć jeden gracz?
Steruje tym MaxAccountsPerUser w konfiguracji, a 0 oznacza bez limitu. Działa tylko wtedy, gdy nowi gracze mogą jeszcze zakładać konta.
Czy muszę restartować przy każdym nowym graczu?
Nie. adduser działa od razu. Restartu wymaga tylko przełącznik Open to new players.
Jeszcze nie hostujesz u nas? Nasz hosting serwerów Project Zomboid łączy zakładkę Config, konsolę i backupy jednym kliknięciem w jednym miejscu.
