Как да поставите security.txt на Вашия уебсайт
Ако някой открие уязвимост в сигурността на Вашия уебсайт, например отворена папка или остарял плъгин, е добре този човек да може да Ви предупреди. За това служи security.txt: малък текстов файл на определено място в уебсайта Ви, който съдържа адреса, на който трябва да се изпращат такива сигнали. Той е описан в интернет стандарта RFC 9116. Тук ще прочетете какво съдържа файлът и как да го поставите.
Местоположение
Файлът се намира на https://example.com/.well-known/security.txt. Старото местоположение /security.txt в основната папка може да се използва допълнително, но ако файлът съществува и на двете места, валиден е този в /.well-known/. Той трябва да е достъпен чрез https и да се изпраща като обикновен текст (text/plain).
Файлът важи само за името, на което се намира. Следователно security.txt на example.com не важи автоматично за shop.example.com. Ако даден поддомейн има собствен уебсайт, поставете security.txt и там.
Съдържание
Contact: mailto:security@example.com Expires: 2027-10-31T23:00:00Z Preferred-Languages: nl, en Canonical: https://example.com/.well-known/security.txt
| Поле | Задължително? | Значение |
|---|---|---|
Contact | Да | Къде се изпращат сигналите: адрес mailto:, номер tel: или уеб страница, която започва с https://. Можете да посочите няколко един под друг, като първият е предпочитаният от Вас. |
Expires | Да, точно веднъж | Датата и часът, след които файлът се счита за остарял, например 2027-10-31T23:00:00Z. Стандартът препоръчва дата, която е по-малко от година напред. |
Preferred-Languages | Не | Езиците, на които желаете да получавате сигнали. |
Canonical | Не | Адресът на самия файл. |
Policy | Не | Връзка към страница с Вашата политика за сигнали: какво правите със сигнала и какво очаквате от подателя. |
Encryption | Не | Връзка към Вашия публичен ключ, ако подателите могат да Ви изпращат криптирани имейли. |
За Contact използвайте адрес, който някой наистина чете. Забравена пощенска кутия е по-лошо от липсата на security.txt: подателят смята, че сте предупредени. Подписването с цифров подпис (OpenPGP) е позволено, но не е задължително.
Поставяне във Вашия хостинг пакет
- Отворете File Manager в DirectAdmin и отидете в
domains/example.com/public_html. Вижте Отваряне на File Manager: папките във Вашия пакет. - Ако папката
.well-knownвсе още не съществува, създайте я. Папките, които започват с точка, се виждат едва когато включите показването на скритите файлове: вижте Показване и редактиране на скрити файлове като .htaccess. - Създайте в тази папка нов файл
security.txt, поставете редовете си в него и запазете. - Отворете
https://example.com/.well-known/security.txtв браузъра си. Трябва да видите своя текст.
Ако използвате WordPress или друга CMS, нищо не се променя: файл, който действително съществува, уеб сървърът просто го изпраща.
Поставяне на VPS
На VPS поставяте файла в уеб папката на сайта си, например /var/www/example.com/.well-known/security.txt. Обърнете внимание на две неща:
- Ако в nginx блокирате всички пътища, които започват с точка, първо добавете изключение за
/.well-known/. - Ако приложението работи зад reverse proxy, насочете пътя към файла в Caddy или nginx.
Вижте Caddy: уебсайт с автоматичен https и nginx със сертификат от Let's Encrypt.
Проверка
Прегледайте заглавките с:
curl -sI https://example.com/.well-known/security.txt
Статусът трябва да е 200, а типът text/plain. Честа грешка: сайт, който отговаря на всеки непознат адрес с началната страница. Тогава изглежда, че файлът съществува, но се връща HTML. Затова проверете и съдържанието. Тестът за уебсайтове на internet.nl също проверява security.txt.
Ежегодно обновяване
Задайте си напомняне в календара доста преди датата в Expires. Тогава проверете дали адресът за контакт все още е верен и преместете датата напред. Ако междувременно нещо се промени, например нов адрес или напускане на служител, коригирайте файла веднага.
Допълнителна информация
- RFC 9116: A File Format to Aid in Security Vulnerability Disclosure (на английски)
- securitytxt.org, с инструмент за създаване на файла (на английски)
Искате да научите повече? Преминете безплатния курс VPS и администриране на Linux сървъри, урок 7.4 Caddy, HSTS и security.txt или урок 10.4 Финална проверка: оценка на Вашия сървър.
