gulli:board Logo

Anzeige

gulli:Newsbox


  Antwort
djins0r
Mitglied
 
Benutzerbild von djins0r
 
Registrierungsdatum: Dec 2006
Beiträge: 21
[PHP] IP Ban Script - Rangeban tauglich machen

Hallo.

Ich habe mir ein Script runtergeladen, dass mir erlaubt andere von meiner Seite zu bannen.
Jedoch geht dies nur, wenn ich die direkte IP eingebe.
Ich wollte fragen, ob jemand das Script so umschreiben kann, dass ich auch die Range der IP eintragen kann. Also dann statt 91.23.03.93 nur 91.23.*.* oder 91.23

Vielen Dank schonmal!

Code:
<!--Start of Banned IP Addresses & Security Log Script --> <?php // Allows you to ban people from viewing your website. $getip = $_SERVER["REMOTE_ADDR"]; $getdate = date( "l dS of F Y" ); $gettime = date( "h:i:sa (@B" ); $banned_ip = array(); $banned_ip[] = '111.111.111.111'; $banned_ip[] = '111.111.111.112'; $banned_ip[] = '111.111.111.113'; $banned_ip[] = '111.111.111.114'; foreach($banned_ip as $banned) { $ip = $_SERVER['REMOTE_ADDR']; if($ip == $banned){ echo "You are banned."; $fp = fopen("log.dat", "a"); fputs($fp, "**BANNED** Visit logged on $getdate at $gettime internet time) for IP: $getip "); fputs($fp, ""); fclose($fp); exit(); } } echo "<b><font size=3 color=#000000>Update in progress.</font></b>"; echo "<br />"; echo "'<b><font color=#007700>Authorized Visit</font></b>' detected and logged on $getdate at $gettime internet time) for IP: $getip"; $fp = fopen("log.dat", "a"); fputs($fp, "Authorized Visit logged on $getdate at $gettime internet time) for IP: $getip "); fputs($fp, ""); fclose($fp); ?> <!--End of Banned IP Addresses & Security Log Script -->
Alt 07. 12. 2007, 00:12 djins0r is offline Mit Zitat antworten #1
Kugelfisch23
Nerd
Moderator
 
Benutzerbild von Kugelfisch23
 
Registrierungsdatum: Oct 2007
Ort: Im Ozean
Beiträge: 5.901
Re: [PHP] IP Ban Script - Rangeban tauglich machen

Lies' dir die Literatur zu `regular expressions` durch, das dürfte in deinem Fall wohl das einfachste sein. Auch wenn ein Bann nach Subnetz besser wäre.

PHP-Code:
<!--Start of Banned IP Addresses Security Log Script -->
<?
php // Allows you to ban people from viewing your website.
$getip $_SERVER["REMOTE_ADDR"];
$getdate date"l dS of F Y" ); 
$gettime date"h:i:sa (@B" ); 

$banned_ip = array();
$banned_ip[] = '/111.111.*.*/';
$banned_ip[] = '/112.111.*.*/';
$banned_ip[] = '/4.2.2.2/';


foreach(
$banned_ip as $banned) { 
    if(
preg_match($banned,$getip)){ 
        echo 
"You are banned.";
        
$fp fopen("log.dat",  "a");  
        
fputs($fp"**BANNED** Visit logged on $getdate at $gettime internet time) for IP: $getip\n");
        
fclose($fp);
        exit(); 
    } 
}

echo 
"<b><font size=3 color=#000000>Update in progress.</font></b>";
echo 
"<br />";
echo 
"'<b><font color=#007700>Authorized Visit</font></b>' detected and logged on $getdate at $gettime internet time) for IP: $getip";

$fp fopen("log.dat",  "a");  
fputs($fp"Authorized Visit logged on $getdate at $gettime internet time) for IP: $getip\n");
fclose($fp);
?>
<!--End of Banned IP Addresses & Security Log Script --> 
Alt 07. 12. 2007, 00:35 Kugelfisch23 is online now Mit Zitat antworten #2
djins0r
Mitglied
(Threadstarter)
 
Benutzerbild von djins0r
 
Registrierungsdatum: Dec 2006
Beiträge: 21
Re: [PHP] IP Ban Script - Rangeban tauglich machen

Hallo Kugelfisch!
Vielen Dank für deine schnelle und wirksame Antwort.
Es klappt wunderbar.

Grüße
Alt 07. 12. 2007, 00:55 djins0r is offline Mit Zitat antworten #3
Themen-Optionen Antwort


Themen-Optionen

Gehe zu



Alle Zeitangaben in UTC +1. Es ist jetzt 13:38 Uhr.
Angetrieben von vBulletin
Copyright ©2000 - 2006, Jelsoft Enterprises Ltd.
epilepsy.gullisys.net

Anmelden

Benutzername
Kennwort

Anzeige

© copyright 1998-2009 gulli.com home | regeln | sitemap | kontakt | impressum | partner | downloads | disclaimer |
Message Boards and Forums Directory