Apache und PHP sind unter Ubuntu standardmässig etwas gespächig einstellt und teilen dem Browser so immer die Apache und PHP Version mit. Auch die Serversignatur (bei Fehlermeldungen) zeigt die Versionsnummern an. Dies ist aufgrund der Sicherheit nicht empfehlenswert, denn was der Hacker nicht weiss, mach ihn nicht heiss. Die HTTP-Header sehen Standardmässig so aus:
In der Datei apache2.conf kann man mit den Optionen ServerTokens und ServerSignature die HTTP-Headers und die Signatur etwas kürzen:
Die HTTP-Headers vom Apache sehen dann nur noch so aus:
Nun muss nur noch das X-Powered-By von PHP weg und dann ist sind die Headers sauber. Dazu muss man in der Datei php5.ini die Option expose_php anpassen:
HTTP/1.1 200 OK
Date: Mon, 04 May 2009 11:23:04 GMT
Server: Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.5 with Suhosin-Patch
X-Powered-By: PHP/5.2.4-2ubuntu5.5
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
Date: Mon, 04 May 2009 11:23:04 GMT
Server: Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.5 with Suhosin-Patch
X-Powered-By: PHP/5.2.4-2ubuntu5.5
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
In der Datei apache2.conf kann man mit den Optionen ServerTokens und ServerSignature die HTTP-Headers und die Signatur etwas kürzen:
ServerTokens Prod ServerSignature Off
Die HTTP-Headers vom Apache sehen dann nur noch so aus:
HTTP/1.1 200 OK
Date: Mon, 04 May 2009 11:43:17 GMT
Server: Apache
X-Powered-By: PHP/5.2.4-2ubuntu5.5
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
Date: Mon, 04 May 2009 11:43:17 GMT
Server: Apache
X-Powered-By: PHP/5.2.4-2ubuntu5.5
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
Nun muss nur noch das X-Powered-By von PHP weg und dann ist sind die Headers sauber. Dazu muss man in der Datei php5.ini die Option expose_php anpassen:
expose_php = OffUnd nun sind in den Headers keine Versionsnummern mehr drin.
HTTP/1.1 200 OK
Date: Mon, 04 May 2009 11:45:13 GMT
Server: Apache
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
Date: Mon, 04 May 2009 11:45:13 GMT
Server: Apache
Content-Length: 4045
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html