Whitelist

Whitelist (bílá listina) je funkce, která dovolí připojení pouze těm hráčům, kteří jsou na whitelistu přidaní.

Zda je whitelist zaplý určuje hodnota white-list v server.properties (ve výchozím nastavení je vyplý). Tato hodnota lze měnit za běhu příkazem whitelist on (zapne whitelist) a whitelist off (vypne whitelist).

Základní příkazy

  • whitelist on - zapne whitelist
  • whitelist off - vypne whitelist
  • whitelist add <nick> - přidá hráče na whitelist
  • whitelist remove <nick> - odstraní hráče z whitelistu

Ostatní příkazy

  • whitelist list - zobrazí seznam hráčů na whitelistu
  • whitelist reload - reloadne whitelist (načte změny po manuální úpravě souboru whitelist.json bez potřeby restartu serveru)

Whitelist na serveru s offline modem

Whitelist jako ochrana

Whitelist na offline-mode serverech v žádném případě neslouží jako forma ochrany viz zde.

Problém whitelistu na offline mode serverech

Pokud server běží v offline modu, může se stát, že se i po přidání hráče na whitelist hráč nebude moci připojit. To nastane v případě, kdy se hráč na server ještě nikdy nepřipojil (případně připojil, ale jeho data byla smazána), a pokud se hráč připojuje s jménem, pro které existuje originální účet.

Příčna

Přidávání hráčů na whitelist funguje následovně:

Pokud se hráč na server už někdy připojil, je na whitelist přidáno jméno a UUID, s kterým hrál. Pokud se však na server hráč ještě nikdy nepřipojil, a hráč má jméno, jako originální účet (nezáleží na velkých/malých písmenech), na whitelist je přidáno online UUID. Hráč se však připojuje s offline UUID, jelikož je server v offline modu. Když je whitelist zaplý, aby se hráč mohl připojit, UUID z whitelistu se musí shodovat s UUID hráče, což se nestane, jelikož offline a online UUID se liší.

Řešení

I.

Prvním řešením je manuální úprava UUID, postup vypadá následovně:

  1. Přidání hráče na whitelist příkazem whitelist add <nick>
  2. Vygenerování offline UUID. To můžete udělat např. zde
  3. Nahrazení UUID u hráče v souboru whitelist.json vygenerovaným UUID z předchozího kroku
  4. Načtení změn příkazem whitelist reload

II.

Druhým řešením je vypnout whitelist příkazem whitelist off, počkat, než se hráč přípojí, přidat jej na whitelist příkazem whitelist add <nick> a poté whitelist zapnout zpět příkazem whitelist on

III.

Třetím, ideálním, nejméně otravným řešením, je vypnutí Vanilla whitelistu (příkazem whitelist off) a použití pluginu či módu, jako např. EasyWhitelist, který pracuje pouze se jmény místo UUID.

Ostatní detaily

Seznam hráčů na whitelistu je uložen v souboru whitelist.json, který je v JSON formátu. Obsahuje jméno hráče a jeho UUID:

[
  {
    "uuid": "b50ad385-829d-3141-a216-7e7d7539ba7f",
    "name": "Notch"
  },
  {
    "uuid": "a762f560-4fce-3236-812a-b80efff0b62b",
    "name": "jeb_"
  }
]

Poznámky

  • Hráči s OP se můžou na server připojit, i pokud na whitelistu nejsou (neplatí pro Bedrock edici)
  • V Bedrock edici 1.18.10 byl whitelist přejmenován na allowlist