IP-basierter Zugriffschutz mit PHP und Apache-Environment Variablen

2009-05-19 20:00

Admins sind lieb, und so habe ich heute meinem Lieblingsentwickler schnell mal einen Zugriffsschutz für ein PHP-Skript aufgeschrieben, das unbedingt in’s Document_Root muss. Und nein, ich will nicht x-beliebig oft alle webserver durchstarten, weil ich die .htaccess im vHost implementieren muss (will).

Und siehe da, ebend mal ausgetestet, weil das hatte ich so untested und ohne Gewähr heruntergeschrieben, es funktioniert und ist sogar syntaktisch absolut richtig. Diesen Dreizeiler vorne an ein PHP-Skript gestellt, und schon ist dieses nur noch von internen Netzen aufrufbar. Da man das bestimmt noch einmal benötigt – also primär den Regex – , ab in mein Notizbuch. ;)

if(!preg_match(‚/^10.|^172.1[6-9].|^172.2[0-9].|^172.3[0-2].|^192.168.|^127./‘, $_SERVER[‚REMOTE_ADDR‘])) {
header(„Status: 401 Forbidden for external access“);
exit;
}

Comments are closed.