MEGET simpelt ip ban system

Her kan du dele din kode med andre! Hvis du f.eks har lavet en super lækker CSS menu eller et smart php eller Jquery script kan du altså glæde andre og måske få lidt ros for det her :-)
Besvar
chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13
MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 12:15

Hey tænkte jeg lige ville vise jer mit lille simple ip ban system jeg laver en udgave der er bedre med mysql den er nok færdig om en time men ville lige vise jer denne

index.php

Kode: Vælg alt

<?php include 'ip_checker.php' ?> <!--Skriv dette på alle sider du vil have protectet--> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<!--Her under er det bare den side du vil have ip protectet -->
<p>Dette kan du kun se vis du ikke er banned, så tilykke du er ikke banned</p> 
</body>
</html>
ip_checker.php

Kode: Vælg alt

<?php

// når du skal banne en ny ip kopier du bare en af iférne og sætter dem og retter ipèn så den passer til den du vil banne
	$ip  = getenv ('REMOTE_ADDR');
	
	if ($ip == "111.111.111.111")
		{
			die ('Du er blokeret fra siden.<br />');
		}
	if ($ip == "111.111.111.112")
		{
			die ('Du er blokeret fra siden.<br />');
		}
	if ($ip == "85.24.104.129")
		{
			die ('Du er blokeret fra siden.<br />');
		}
		
?>

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: MEGET simpelt ip ban system

Indlæg af Josefine » 27. jul 2012, 12:55

Det ser godt ud! Jeg vil også snart gerne lære noget PHP, jeg har bare ikke tid nok, øv :(
Er du ved at lave en hjemmeside med login osv. eller hvad?

chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13

Re: MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 13:18

Josefine skrev:Det ser godt ud! Jeg vil også snart gerne lære noget PHP, jeg har bare ikke tid nok, øv :(
Er du ved at lave en hjemmeside med login osv. eller hvad?
Jaa jeg er igang med en hjemmeside men den er ikke med login jeg kedede mig bare.

Josefine
Geni
Geni
Indlæg:308
Tilmeldt:9. dec 2011, 16:46

Re: MEGET simpelt ip ban system

Indlæg af Josefine » 27. jul 2012, 18:10

chr10 skrev:
Josefine skrev:Det ser godt ud! Jeg vil også snart gerne lære noget PHP, jeg har bare ikke tid nok, øv :(
Er du ved at lave en hjemmeside med login osv. eller hvad?
Jaa jeg er igang med en hjemmeside men den er ikke med login jeg kedede mig bare.
Nå okay, det er det samme med mig - jeg laver bare en hjemmeside bare for at tage min programmering i brug. Det er ret sjovt at sidde og fifle med :D

chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13

Re: MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 19:11

Josefine skrev:
chr10 skrev:
Josefine skrev:Det ser godt ud! Jeg vil også snart gerne lære noget PHP, jeg har bare ikke tid nok, øv :(
Er du ved at lave en hjemmeside med login osv. eller hvad?
Jaa jeg er igang med en hjemmeside men den er ikke med login jeg kedede mig bare.
Nå okay, det er det samme med mig - jeg laver bare en hjemmeside bare for at tage min programmering i brug. Det er ret sjovt at sidde og fifle med :D
:-)

cristian
Moderator
Moderator
Indlæg:882
Tilmeldt:26. sep 2011, 21:31
Kontakt:

Re: MEGET simpelt ip ban system

Indlæg af cristian » 27. jul 2012, 20:20

Det der er med at banlyse brugere på deres ip adresser er at man skal tage højde for nogle forskellige ting.

#1. Når du får en IP fra din ISP (hvermindre du har en statisk ip) så får du ikke nødvendigvis den samme IP adresse hver gang din lag 3 enhed forhandler sin IP adresse. Derfor kan den med tiden ændre sig, og så banlyser du en anden bruger med den IP end som var udgangspunktet. Derfor burde man med tiden fjerne IP adresser efter et tidsinterval.

#2. Samtidig hvis du har et hus / lejlighed med f.eks. To brugere som begge bruger din side, og du banner den IP adresse de kommer fra. Så banner du begge brugere og ikke kun den ene. Da deres IP adresse i dette tilfælde har en NAT port knyttet til dem. For at holde styr på hvem er hvem selvom de har den samme IP, f.eks. 89.2.2.2 så hedder bruger 1 89.2.2.2:72131 og bruger to hedder 89.2.2.2/56784

#3. Hvis du banlyser en bruger baseret på sin IP, burde du også de-aktivere brugerens konto. Da brugeren ville kunne bruge Tor netværket til at få en ny IP adresse hver gang han bruger sin PC. Og derved omgå blokeringen. Dette kan så igen blokere brugere som ikke var meningen da du blokere IP adressen og ikke selve brugeren.

Og sådan kan man blive ved. Spørg endelig hvis du ville vide mere.
My 2 cents.

chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13

Re: MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 20:30

cristian skrev:Det der er med at banlyse brugere på deres ip adresser er at man skal tage højde for nogle forskellige ting.

#1. Når du får en IP fra din ISP (hvermindre du har en statisk ip) så får du ikke nødvendigvis den samme IP adresse hver gang din lag 3 enhed forhandler sin IP adresse. Derfor kan den med tiden ændre sig, og så banlyser du en anden bruger med den IP end som var udgangspunktet. Derfor burde man med tiden fjerne IP adresser efter et tidsinterval.

#2. Samtidig hvis du har et hus / lejlighed med f.eks. To brugere som begge bruger din side, og du banner den IP adresse de kommer fra. Så banner du begge brugere og ikke kun den ene. Da deres IP adresse i dette tilfælde har en NAT port knyttet til dem. For at holde styr på hvem er hvem selvom de har den samme IP, f.eks. 89.2.2.2 så hedder bruger 1 89.2.2.2:72131 og bruger to hedder 89.2.2.2/56784

#3. Hvis du banlyser en bruger baseret på sin IP, burde du også de-aktivere brugerens konto. Da brugeren ville kunne bruge Tor netværket til at få en ny IP adresse hver gang han bruger sin PC. Og derved omgå blokeringen. Dette kan så igen blokere brugere som ikke var meningen da du blokere IP adressen og ikke selve brugeren.

Og sådan kan man blive ved. Spørg endelig hvis du ville vide mere.
My 2 cents.
RE: #1. Du har ret i at man bør unbanne ipèn efter noget tid og så holde øge med at den ip fx. ikke spammer din email igen vis det er det den har gjort.

RE: #2. Er det ikke den enkle brugers ansvar at opfører sig ornligt på nettet og vis man så bliver banned kan man jo skive en email tilbage og se om man kan blive unbanned.

Re: #3. Der vil altid være en måde hvor brugern kan slæppe uden om ip ban og da dette ip ban system blev lavet var det meningen det skulle være til en hjemmeside ikke et forum så derfor har folk ikke en bruger.

Brugeravatar
scootergrisen
Moderator
Moderator
Indlæg:709
Tilmeldt:21. jun 2012, 23:40
Kontakt:

Re: MEGET simpelt ip ban system

Indlæg af scootergrisen » 27. jul 2012, 20:47

Jeg gør sådan her.

Kode: Vælg alt

checkip();
checkreferer();

function checkip(){

   if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

      $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];

   }elseif(isset($_SERVER["REMOTE_ADDR"])){

      $ip = $_SERVER["REMOTE_ADDR"];

   }

   if(isset($ip)){

      switch($ip){

         // email spammer
         case '1.2.3.4' :
         case '1.2.3.5' :
         case '1.2.3.6' :
            exit;
            break;

         // dobbelt hits hvor ref står til at komme fra en side hvor mine links ikke ser ud til at være
         case '2.2.3.4' :
         case '2.2.3.5' :
         case '2.2.3.6' :
            exit;
            break;

      }

   }

}



function checkreferer(){

   if(isset($_SERVER["HTTP_REFERER"])){

      $referer = $_SERVER["HTTP_REFERER"];

      switch($referer){

         case 'http://x :
            header("Location: http://x");
            exit;
            break;

         case 'http://y' :
            header("Location: http://y");
            exit;
            break;

      }

   }

}



chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13

Re: MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 20:54

scootergrisen skrev:Jeg gør sådan her.

Kode: Vælg alt

checkip();
checkreferer();

function checkip(){

   if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

      $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];

   }elseif(isset($_SERVER["REMOTE_ADDR"])){

      $ip = $_SERVER["REMOTE_ADDR"];

   }

   if(isset($ip)){

      switch($ip){

         // email spammer
         case '1.2.3.4' :
         case '1.2.3.5' :
         case '1.2.3.6' :
            exit;
            break;

         // dobbelt hits hvor ref står til at komme fra en side hvor mine links ikke ser ud til at være
         case '2.2.3.4' :
         case '2.2.3.5' :
         case '2.2.3.6' :
            exit;
            break;

      }

   }

}



function checkreferer(){

   if(isset($_SERVER["HTTP_REFERER"])){

      $referer = $_SERVER["HTTP_REFERER"];

      switch($referer){

         case 'http://x :
            header("Location: http://x");
            exit;
            break;

         case 'http://y' :
            header("Location: http://y");
            exit;
            break;

      }

   }

}


Nu er jeg ny i php så forstod ikke så meget men hva jeg ved du er go til pogrammering og det skal nok være bedre end det jeg har lavet.

Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: MEGET simpelt ip ban system

Indlæg af ThomasI » 27. jul 2012, 22:38

Dejligt med det første "del din kode" indlæg - Kom gerne med flere :D :D

chr10
Entusiast
Entusiast
Indlæg:38
Tilmeldt:29. sep 2011, 17:13

Re: MEGET simpelt ip ban system

Indlæg af chr10 » 27. jul 2012, 23:51

ThomasI skrev:Dejligt med det første "del din kode" indlæg - Kom gerne med flere :D :D
Jeg kan afslører at når jeg er færdig med min mysql udgave af et ip ban system så kommer det også op.

I de kommer der til at være:

login til adminside.
admin kan banne og unbanne.
meget simpel include fucktion til de sider man vil beskytte.

Besvar