사이트 접속을 국내 아이피에만 허용하는 코드를 만들어 봤습니다. 정보
웹서버 사이트 접속을 국내 아이피에만 허용하는 코드를 만들어 봤습니다.
첨부파일
본문
요즘 어찌나 많은 해외 아이피들이 서버에 접속을 해대는지 시스템 부하가
장난 아니죠...
그래서 php 소스로 접속한 게 국내 아이피가 아니면 그 접속을 시도한
본인 아이피로 되돌려 보내는 통쾌한 복수를 할 수 있게 만들어 보았습니다...^^
압축을 풀면 ip_grant.php, KR_NIPLIST_CLEANED.csv 이렇게 두 개의 파일이
나오는데, KR_NIPLIST_CLEANED.csv에 등록된 국내 아이피 대역만 접속을
허용해 주도록 되어 있습니다.
이것을 그누보드에 적용하려면 extend 폴더에 넣어도 되고, common.php
파일 상단에 잉클루드 시켜도 됩니다...
한번 해보세요... 접속량이 팍 줄어듭니다...ㅎㅎㅎ
추천
3
3
댓글 1개

오 감사합니다. 테스트해보고 잘쓸게요~!! ㅎㅎ
저도 최근 작성한 연관 소스코드 하나 공유드립니다~
예. Dk3T80'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z, 49.247.14.115
HTTP_X_FORWARDED_FOR에 위처럼 프록시IP 장난질 하는 애들이 있어서 텔레그램으로 알려주고, 사이트 접근통제 하는 코드입니다.
function checkAndBanInValidIp(){ $header_ips = $_SERVER['HTTP_CLIENT_IP'] . ' , ' . $_SERVER['HTTP_X_FORWARDED_FOR'] . ' , ' . $_SERVER['REMOTE_ADDR']; $_ip_array = explode(',', $header_ips); foreach ($_ip_array as $_ip) { $ip = trim($_ip); if($ip){ if(!isValidIp(trim($_ip))){ // 올바르지 않은 IP라면 차단하기 위해 함수 호출 // 예. Dk3T80'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z, 49.247.14.115 $myip = myip(); // report // reportTelegram("Invalid IP address detected in X-Forwarded-For header"); // ban $cf_intercept_ip = sql_fetch(" SELECT cf_intercept_ip FROM g5_config limit 1")['cf_intercept_ip']; $exist = str_contains($cf_intercept_ip, $myip); if($exist){ // reportTelegram("already IP BANNED previously : ".$myip); }else{ // reportTelegram("IP BAN : ".$myip); $query = " update g5_config set cf_intercept_ip = CONCAT(cf_intercept_ip, '\n".$myip."') "; sql_query($query); } die ("invalid IP"); } } } } function isValidIp($ip){ return filter_var($ip, FILTER_VALIDATE_IP); }