Skocz do zawartości
  • Cześć!

    Witaj na forum RootNode - aby pisać u nas musisz się zarejestrować, a następnie zalogować. Posty pisane z kont niezarejestrowanych nie są widoczne publicznie.

Rekomendowane odpowiedzi

Opublikowano

w cloudflare nie da się zablokować ip w htaccess

ponieważ poddawane jest inne IP, dopiero w php można sprawdzić te IP
if(isset($_SERVER["HTTP_CF_CONNECTING_IP"])

 

czy hostingi directadminowe mają jakieś funkcje obsługi tego?

Opublikowano (edytowane)

IP możesz za to zablokować w Dashboard CloudFlare, jeśli hosting nie wspiera mod_cf

Wybierasz domenę -> Firewall -> na dole masz możliwość zblokowania.

 

Drugą opcją będzie stworzenie skryptu / zaimplementowanie w obecny > tego <

 

<?php if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) 
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
?>

Umieszczasz na serwerze plik "banips.txt", w nim dodajesz adresy IP, a powyższy kod wykorzystujesz do sprawdzania czy adres IP znajduje się w pliku (może być baza w/e) , jeśli tak to kierujesz na podstronę 403.

Edytowane przez SomeGuy
Opublikowano

w podobny sposób oparty na php już mam, aczkolwiek budując serwis ogłoszeniowy

nie chciałbym pierdołami obciążać limitów php dla konta

 

właściwym celem było zezwolenie do folderu "oc-admin" w skrypcie osclass tylko mojego IP

cloudflare blokuje/dopuszcza ip/zakresy/kraje całej stronie, więc też nie da rady

 

jak rozumiem jedynym najlepszym rozwiązaniem jest spytać czy mi włączą: mod_cloudflare

Opublikowano

Inną opcją jest stworzenie tajnej subdomeny, która będzie szła poza "pomarańczową chmurką" cloudflare i logowanie się wyłącznie przez ten adres, co z punktu bezpieczeństwa wydaje się nawet być dość korzystne.

Opublikowano

dodałem tego die(); if(getIP(0)!='mojeIP') {header('Location: http://test.oga.pl');die();}

 

przy okazji zabaw z IP, możecie powiedzieć, po co ja od lat używam tak skomplikowanej funkcji i czy ma ona sens?


function getIP($type) {    

if(isset($_SERVER["HTTP_CF_CONNECTING_IP"])) return $_SERVER["HTTP_CF_CONNECTING_IP"];    

if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) $ip = getenv("HTTP_CLIENT_IP");   else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) $ip = getenv("REMOTE_ADDR");   else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) $ip = getenv("HTTP_X_FORWARDED_FOR");    

else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) $ip = $_SERVER['REMOTE_ADDR'];    

else { $ip = "unknown"; return $ip; }    

if ($type==1) {return md5($ip);} else {return $ip;}     

}

 

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z forum, wyrażasz zgodę na: Warunki użytkowania, Regulamin, Polityka prywatności.