Τοποθέτηση αρχείου security.txt στον ιστότοπό σας
Αν κάποιος εντοπίσει ένα κενό ασφαλείας στον ιστότοπό σας, για παράδειγμα έναν ανοιχτό φάκελο ή ένα παρωχημένο plugin, θέλετε να μπορεί να σας ειδοποιήσει. Γι' αυτό υπάρχει το 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. Αν ένα subdomain έχει δικό του ιστότοπο, τοποθετήστε και εκεί ένα 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 | Όχι | Ένας σύνδεσμος προς το δημόσιο κλειδί σας, εάν όσοι υποβάλλουν αναφορές μπορούν να σας στέλνουν κρυπτογραφημένο email. |
Στο Contact χρησιμοποιήστε μια διεύθυνση που κάποιος πραγματικά διαβάζει. Ένα ξεχασμένο γραμματοκιβώτιο είναι χειρότερο από την απουσία security.txt: αυτός που υποβάλλει την αναφορά πιστεύει ότι έχετε ειδοποιηθεί. Η υπογραφή με ψηφιακή υπογραφή (OpenPGP) επιτρέπεται, αλλά δεν είναι υποχρεωτική.
Τοποθέτηση στο πακέτο hosting σας
- Ανοίξτε στο DirectAdmin τη File Manager και μεταβείτε στο
domains/example.com/public_html. Δείτε Άνοιγμα της File Manager: οι φάκελοι στο πακέτο σας. - Αν ο φάκελος
.well-knownδεν υπάρχει ακόμη, δημιουργήστε τον. Οι φάκελοι που ξεκινούν με τελεία εμφανίζονται μόνο όταν εμφανίζετε τα κρυφά αρχεία: δείτε Εμφάνιση και επεξεργασία κρυφών αρχείων όπως το .htaccess. - Δημιουργήστε σε αυτόν τον φάκελο ένα νέο αρχείο
security.txt, επικολλήστε τις γραμμές σας και αποθηκεύστε. - Ανοίξτε το
https://example.com/.well-known/security.txtστον browser σας. Θα πρέπει να βλέπετε το κείμενό σας.
Αν χρησιμοποιείτε WordPress ή άλλο CMS, δεν αλλάζει τίποτα: ένα αρχείο που υπάρχει πραγματικά, ο web server απλώς το αποστέλλει.
Τοποθέτηση σε VPS
Σε ένα VPS τοποθετείτε το αρχείο στον φάκελο web του ιστότοπού σας, για παράδειγμα /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 Τελικός έλεγχος: ο server σας υπό εξέταση.
