PHP-IP-Banniminen

PHP-IP-Banniminen

Viesti Teamnate 15 Kesä 2006 02:39

Tässä lueskelin jotain PHP-Oppaita ja opin tekemään bännerin. Tässäpä tämä..

Koodi: Valitse kaikki
<?php
if($_SERVER['REMOTE_ADDR'] == "IP.OSOITE") die("Porttikielto");
if($_SERVER['REMOTE_ADDR'] == "IP.OSOITE") die("Porttikielto");
if($_SERVER['REMOTE_ADDR'] == "IP.OSOITE") die("Porttikielto");
?>


:roll:
Käyttäjän avatar
Teamnate
 
Viestit: 286

Viesti Koiranpentu 15 Kesä 2006 09:25

Hyvä opas. Tota ehkä voi joutua käyttämään kun on oma nettisivu, mutta luulen etten joudu käyttämään tuota koodia, vaikka mieli tekisikin kokeilla. 8)
Käyttäjän avatar
Koiranpentu
 
Viestit: 354

Viesti StandingInLine_ 15 Kesä 2006 11:10

Ei ainakaan koolla pilattu opas. 8)

Hyvä, näitä lisää. ^^
[piilotettu kuva]
StandingInLine_
 
Viestit: 1850

Viesti Teamnate 15 Kesä 2006 18:47

Miksi ihmiset on laittanut "Huono" valinnan? Perusteluja kiitos. :(
Käyttäjän avatar
Teamnate
 
Viestit: 286

Viesti Vista 15 Kesä 2006 18:50

Entäs sitten joku ilmoitus niille, jotka on bannittu, että tietää mistä on kyse?
Vista
 
Viestit: 64

Viesti nipasenmaki 15 Kesä 2006 19:19

Vista kirjoitti:Entäs sitten joku ilmoitus niille, jotka on bannittu, että tietää mistä on kyse?


Koodi: Valitse kaikki
if($_SERVER['REMOTE_ADDR'] == "IP.OSOITE") die("Olet bannattu, häpeä!");
[piilotettu kuva]
Käyttäjän avatar
nipasenmaki
 
Viestit: 809

Viesti Irzu 15 Kesä 2006 21:20

Miksi näin?
Nyt pitäisi tuo kyseinen koodi lisätä jokaikiseen PHP tiedostoon.
Kuva tiedostojakin voi katsoa.

Helpompaa on luoda tiedosto .htaccess jonne kirjoitat seuraavat rivit:

Order Deny,Allow
Deny from x.x.x.x.x
Deny from x.x.x.x.x
Allow from All

x.x.x.x.x on bannitun IP-osoite.
Ja sitten luot vaan 403 sivun.

vaikka 403.html

Sitten lisäät .htaccess tiedostoon:

ErrorDocument 403 /403.html

htaccessin pitäisi näyttää tältä:
Koodi: Valitse kaikki
ErrorDocument 403 /403.html
Order Deny,Allow
Deny from x.x.x.x.x
Deny from x.x.x.x.x
Allow from All

Ja 403.html vaikka:
Koodi: Valitse kaikki
<h1>OLET BANNITTU!</h1>


(toimii vain palvelimilla missä on .htaccess tuki.)
Käyttäjän avatar
Irzu
 
Viestit: 286

Viesti Teamnate 15 Kesä 2006 23:32

Heh, joo. On näitä monimutkaisiakin, mutta tämä on yksinkertasin jota voi toteuttaa. Tai sitten tämän asettaa .php tiedostoon ja icludettaa joka sivulle. Kuviahan bännitty voi sillon katsoa, mutta se tuskin haittaa 8)

Niin, tämä on vain yksi tapa 8) 8)
Käyttäjän avatar
Teamnate
 
Viestit: 286

Viesti Matso 16 Kesä 2006 01:50

Ei tämä ollut opas. Tämä oli yksi if lause. Eikä tässä opastettu edes miten se saadaan toimimaan. Jos tuon tunget vaan documentin alkuun niin se vaan sanoo "Porttikielto", jos on "bannilistalla", mutta näyttääkni sivun sitten ihan normaalisti :roll:
Tärkeitä linkkejä: Huuto.net ; Kahvi.ws ; matso.info ; KaLinks
Käyttäjän avatar
Matso
 
Viestit: 4878

Viesti Teamnate 16 Kesä 2006 04:46

Die?
Käyttäjän avatar
Teamnate
 
Viestit: 286

Viesti Matso 16 Kesä 2006 10:26

Hmm.. no näin olisi ehkä vähän parempi:
Koodi: Valitse kaikki
<?php
$ip_osoitteet = array(
"ip_osoite1",
"ip_osoite2",
"ip_osoite3",
"ip_osoite4"
);
foreach($ip_osoitteet as $ossat){
if($_SERVER['REMOTE_ADDR'] == $ossat){echo 'Sinut on bannattu tältä sivustolta!'; exit;}
}
?>
Tärkeitä linkkejä: Huuto.net ; Kahvi.ws ; matso.info ; KaLinks
Käyttäjän avatar
Matso
 
Viestit: 4878

Viesti Irzu 17 Kesä 2006 01:33

Matso kirjoitti:Hmm.. no näin olisi ehkä vähän parempi:
Koodi: Valitse kaikki
<?php
$ip_osoitteet = array(
"ip_osoite1",
"ip_osoite2",
"ip_osoite3",
"ip_osoite4"
);
foreach($ip_osoitteet as $ossat){
if($_SERVER['REMOTE_ADDR'] == $ossat){echo 'Sinut on bannattu tältä sivustolta!'; exit;}
}
?>

Tai sitten .htaccessilla. :D
Käyttäjän avatar
Irzu
 
Viestit: 286

Re:

Viesti F-3000 05 Joulu 2007 18:32

Teamnate kirjoitti:Die?

Minun ymmärryksen mukaan die() = exit().

Lähde php.net


Ja olen Matson kanssa samaa mieltä. Silmukka voi olla parempi kuin 100 riviä jossittelua.

[Edit] Lisäperusteluna "huonolle" että IP on huono lähde pitkäaikaiseen banniin. Itse pystyn yhdellä unix-käskyllä vaihtamaan IP:n hetkessä.
Viimeksi muokannut F-3000 päivämäärä 14 Joulu 2007 19:02, muokattu yhteensä 1 kerran
F-3000
 
Viestit: 12

Re: PHP-IP-Banniminen

Viesti praKKA 14 Joulu 2007 08:53

Itse asiassa aika toimiva ja näppärä pikkukoodi, tämähän on juurikin yksi pienemmistä.
Ja ne Matsot ja muut voivat mennä muualle pätemään, die() toimii siinä samassa kuin exit().
Helpompi olisi kai laittaa arrayllä noi ip:t listaan niinkuin tuolla ylempänä ollaan tehty, mutta toimii se noinkin.
Intel C2D E4400 | 4Gb DDR2 800MHz | 250Gb WD Caviar SE SATA + WD Caviar 500GB GP SATAII 8MB | XFX Radeon HD4770 | Antec Sonata III | Asus P5B | Fuj:tech DTV PRO USB | Win 7 RC 64-bit | Nokia 5800 XpressMusic | Logitech G25 + Rumblepad 2 | Logitech UltraX | Logitech MX518
http://tf2.prakka.org
praKKA
Nerd
 
Viestit: 7209

Re: PHP-IP-Banniminen

Viesti Ihkudaa 15 Joulu 2007 15:02

Enpä ole ikinä nähnyt huonompaa koodiakaan.
Ihkudaa
 
Viestit: 7

Palaa alueelle Ohjelmointioppaat