Sicherheit mit htaccess erhöhen

Sicherheit mit .htaccess erhöhen

Hier geben wir Dir einige Bei­spiele wie Du die Sicher­heit mit htac­cess erhö­hen kannst und dadurch gleich­zei­tig Res­sour­cen für tat­säch­li­che Besu­cher dei­ner Web­seite frei­gibst.

1. Ausschluss über IP oder Provider-Länderkennung

order deny,allow
deny from .ru
deny from .cn
deny from .il
deny from .in
deny from .tr
deny from .ru
deny from 1.2.3.
allow from all

Füge das vor­he­rige Bei­spiel in deine .htac­cess Datei ein. Lasse zwi­schen den ein­zel­nen Absät­zen immer eine Leer­zeile. Beim Zugriff über einen der im Code auf­ge­führ­ten Provider/Toplevel Domains erhält der Anwen­der dann die Mel­dung „For­bidden“ und ein Zugriff über die gelis­tete Domain ist auf deine Web­seite dann nicht mehr mög­lich. Du kannst die­ses sel­ber tes­ten indem Du dort deine eigene IP-Adresse ein­trägst, spei­cherst und die Seite dann erneut auf­rufst. Der Zugriff sollte nun ver­wehrt wer­den.

Deny from 1.2.3.“ bedeu­tet das alle Anfra­gen im Sub­net 1.2.3.0 bis 1.2.3.255 aus­ge­sperrt wer­den.

Fällt Dir in dei­ner Web­sei­ten-Zugriffs­sta­tis­tik eine IP oder oder eine Domain durch mas­si­ven Zugriff auf, so kannst Du die­ses mit der beschrie­be­nen Methode unter­bin­den. Du hast dadurch gleich meh­rere Vor­teile wie z.B.: weni­ger Daten­trans­fer, höhere Per­for­mance für tat­säch­li­che Besu­cher, rea­li­täts­nahe Zugriff­sta­tis­ti­ken und den Aus­schluss von frag­wür­di­gen Web­sei­ten­zu­grif­fen.

2. Ausschluss über die geografische Herkunft (GEOIP)

Diese Methode muss von  dei­nem Pro­vi­der unter­stützt wer­den. All-Inkl bie­tet diese Funk­tion in bestimm­ten Pake­ten an. Füge das fol­gende Bei­spiel in dei­ner htac­cess Datei ein. Belasse jeweils davor und danach eine Leer­zeile. Es wer­den nun Besu­che aus den ange­ge­be­nen Regio­nen aus­ge­sperrt. z.B. „CN“ für China und „LT“ für Litauen. Im Bei­spiel­code sind die auf­fäl­ligs­ten Natio­nen auch aus dem Ost­block und Asien auf­ge­führt. Die Angabe von IP-Adres­sen oder Domains ist hier nicht mög­lich. Es dür­fen nur Län­der­ken­nun­gen ver­wen­det wer­den.

GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE LT BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE LV BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE MD BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE SG BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE TR BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE MA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE DZ BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE IL BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE IN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE AP BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE TW BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE PH BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE HK BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE PK BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE NG BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE SK BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE SI BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE KR BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE A1 BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE A2 BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE O1 BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE TW BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE AM BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE AZ BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE MA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE TH BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE PL BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RO BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE DE BlockCountry
Deny from env=BlockCountry

Trage zu Test­zwe­cken mal „DE“ ein, wenn Du aus Deutsch­land auf deine Web­seite zugreifst. Wenn Du nun geblockt wirst unter­stützt dein Pro­vi­der die­ser Funk­tion mit GEOIP. Falls der Zugriff wei­ter­hin funk­tio­niert kannst Du das oben beschrie­bene Ver­fah­ren „Aus­schluss über IP oder Pro­vi­der-Län­der­ken­nung“ anwen­den. Der Coun­try Code „A1“ schliesst z.B. auch Anony­mous Proxy Ver­bin­dun­gen zu Ihrer Web­seite aus. „A2“ Satel­lite Pro­vi­der, etc.

3. Zugriff nur aus bestimmten Ländern zulassen

# IP-Bereiche oder TLDs zulassen
order allow,deny
allow from 192.168.1.
allow from .de
allow from .eu
deny from all

Sollte der Zugriff oder die Abwei­sung nicht funk­tio­nie­ren, kann die­ses auch an Restrik­tio­nen des Pro­vi­ders lie­gen.

Wel­che Ein­stel­lun­gen ver­wen­dest Du?

Schreibe einen Kommentar