Προσδιορίστε την τρέχουσα ορατότητα των αριθμών έκδοσης
Απόκρυψη του αριθμού έκδοσης του Nginx
Απόκρυψη του αριθμού έκδοσης της PHP
Εάν εκτελείτε έναν ή περισσότερους ιστότοπους που βασίζονται στη στοίβα LEMP, ένα πρακτικό μέτρο ασφαλείας είναι να αποκρύψετε τους αριθμούς έκδοσης του Nginx και της PHP. Αυτό θα εμπόδιζε τους χάκερ να χρησιμοποιήσουν παραβιάσεις ασφαλείας για συγκεκριμένη έκδοση για να επιτεθούν στους διακομιστές σας.
Ας ρίξουμε μια ματιά στον τρόπο εφαρμογής αυτού του μέτρου σε μια παρουσία διακομιστή Vultr WordPress που βασίζεται στη στοίβα LEMP. Όλες οι οδηγίες σε αυτό το άρθρο θα πρέπει να ισχύουν και για άλλες εφαρμογές Vultr που βασίζονται σε LEMP.
Προσδιορίστε την τρέχουσα ορατότητα των αριθμών έκδοσης
curl -I [your-server-IP]:80
Στη συνέχεια θα δείτε το αποτέλεσμα, το οποίο μοιάζει με:
HTTP/1.1 200 OK
Server: nginx/1.10.0
Date: Fri, 06 May 2016 04:11:38 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.6.20
Link: <http://[your-server-IP]/wp-json/>; rel="https://api.w.org/"
Όπως βλέπετε, στον διακομιστή μου, ο αριθμός έκδοσης του Nginx είναι 1.10.0 και ο αριθμός έκδοσης της PHP είναι 5.6.20.
Απόκρυψη του αριθμού έκδοσης του Nginx
Εμφάνιση λεπτομερειών διαμόρφωσης Nginx:
nginx -V
Μεταξύ αυτών των παραμέτρων, βρείτε την παράμετρο "--conf-path" που καθορίζει τη θέση του αρχείου διαμόρφωσης Nginx:
--conf-path=/etc/nginx/nginx.conf
Τροποποιήστε το αρχείο διαμόρφωσης Nginx με vi:
sudo vi /etc/nginx/nginx.conf
Προσθέστε μια πρόταση διαμόρφωσης server_tokens off;μέσα στο http { }τμήμα:
http {
...
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
server_tokens off; #<= The sentence is added Here.
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
Αποθήκευση και έξοδος:
:wq
Επεξεργαστείτε το αρχείο διαμόρφωσης fastcgi:
sudo vi /etc/nginx/fastcgi_params
Αντικαταστήστε τη γραμμή:
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
Με:
fastcgi_param SERVER_SOFTWARE nginx;
Αποθήκευση και έξοδος:
:wq
Απόκρυψη του αριθμού έκδοσης της PHP
Τροποποιήστε το αρχείο διαμόρφωσης PHP:
sudo vi /etc/php.ini
Βρείτε τη γραμμή:
expose_php = On
Τροποποιήστε το σε:
expose_php = Off
Αποθήκευση και έξοδος:
:wq
Τέλος, εφαρμόστε τις τροποποιήσεις σας:
sudo pkill php-fpm
sudo php-fpm
sudo service nginx restart
Επαληθεύστε τις τροποποιήσεις σας:
curl -I [your-server-IP]:80
Οι πληροφορίες έκδοσης του Nginx και της PHP δεν είναι πλέον ορατές:
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 06 May 2016 05:16:43 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Link: <http://[your-server-IP ]/wp-json/>; rel="https://api.w.org/"