Jak umístit soubor security.txt na Váš web
Pokud někdo na Vašem webu najde bezpečnostní chybu, například otevřenou složku nebo zastaralý plugin, chcete, aby Vás mohl upozornit. K tomu slouží security.txt: malý textový soubor na pevně daném místě Vašeho webu s adresou, kam mají taková hlášení směřovat. Je definován v internetovém standardu RFC 9116. Zde se dočtete, co v něm má být a jak ho umístit.
Umístění
Soubor se nachází na adrese https://example.com/.well-known/security.txt. Původní umístění /security.txt v kořenové složce můžete použít navíc, ale pokud je soubor na obou místech, platí ten v /.well-known/. Musí být dostupný přes https a odesílán jako prostý text (text/plain).
Soubor platí pouze pro název, na kterém se nachází. Security.txt na example.com tedy automaticky neplatí pro shop.example.com. Pokud má subdoména vlastní web, umístěte security.txt i tam.
Co v něm je
Contact: mailto:security@example.com Expires: 2027-10-31T23:00:00Z Preferred-Languages: nl, en Canonical: https://example.com/.well-known/security.txt
| Pole | Povinné? | Význam |
|---|---|---|
Contact | Ano | Kam hlášení směřují: adresa mailto:, číslo tel: nebo webová stránka začínající na https://. Můžete jich uvést více pod sebou, první je ta preferovaná. |
Expires | Ano, právě jednou | Datum a čas, po kterém se soubor považuje za zastaralý, například 2027-10-31T23:00:00Z. Standard doporučuje datum vzdálené méně než rok dopředu. |
Preferred-Languages | Ne | Jazyky, ve kterých chcete hlášení dostávat. |
Canonical | Ne | Adresa samotného souboru. |
Policy | Ne | Odkaz na stránku s Vašimi zásadami pro hlášení: co s hlášením uděláte a co od oznamovatele požadujete. |
Encryption | Ne | Odkaz na Váš veřejný klíč, pokud Vám oznamovatelé mohou posílat šifrované e-maily. |
U pole Contact použijte adresu, kterou někdo skutečně čte. Zapomenutá schránka je horší než žádný security.txt: oznamovatel si myslí, že jste byli upozorněni. Podepsání digitálním podpisem (OpenPGP) je možné, ale není povinné.
Umístění na hostingovém balíčku
- V DirectAdmin otevřete Správce souborů a přejděte do
domains/example.com/public_html. Viz Otevření Správce souborů: složky ve Vašem balíčku. - Pokud složka
.well-knownještě neexistuje, vytvořte ji. Složky začínající tečkou uvidíte, až když zobrazíte skryté soubory: viz Zobrazení a úprava skrytých souborů, jako je .htaccess. - V této složce vytvořte nový soubor
security.txt, vložte do něj své řádky a uložte. - Otevřete v prohlížeči
https://example.com/.well-known/security.txt. Měli byste vidět svůj text.
Pokud používáte WordPress nebo jiný CMS, nic se nemění: soubor, který skutečně existuje, webový server jednoduše odešle.
Umístění na VPS
Na VPS umístíte soubor do webové složky svého webu, například /var/www/example.com/.well-known/security.txt. Dejte pozor na dvě věci:
- Pokud v nginx blokujete všechny cesty začínající tečkou, nastavte nejprve výjimku pro
/.well-known/. - Pokud běží aplikace za reverzní proxy, nasměrujte cestu v Caddy nebo nginx na soubor.
Viz Caddy: web s automatickým https a nginx s certifikátem od Let's Encrypt.
Kontrola
Hlavičky zobrazíte pomocí:
curl -sI https://example.com/.well-known/security.txt
Stav by měl být 200 a typ text/plain. Častá chyba: web, který na každou neznámou adresu odpoví úvodní stránkou. Pak to vypadá, že soubor existuje, ale vrátí se HTML. Zkontrolujte proto i obsah. Test webu na internet.nl security.txt také kontroluje.
Každoroční aktualizace
Nastavte si v kalendáři připomínku s dostatečným předstihem před datem v poli Expires. Poté zkontrolujte, zda je kontaktní adresa stále správná, a datum posuňte. Pokud se mezitím něco změní, například nová adresa nebo odchod některého člověka, upravte soubor ihned.
Další informace
- RFC 9116: A File Format to Aid in Security Vulnerability Disclosure (anglicky)
- securitytxt.org, s nástrojem pro vytvoření souboru (anglicky)
Chcete se dozvědět více? Projděte si bezplatný kurz Správa VPS a linuxových serverů, lekci 7.4 Caddy, HSTS a security.txt nebo lekci 10.4 Závěrečná kontrola: Váš server pod drobnohledem.
