Nginx를 사용하여 추천 스팸을 차단하는 방법은 무엇입니까?
-
19-08-2019 - |
문제
나는 Nginx 서버에서 두 개의 몽 그렐을 실행하고 있습니다. 존재하지 않는 파일에 대한 요청을 계속받습니다. IP 주소는 자주 변경되지만 참조 URL은 동일하게 유지됩니다. 나는 이것을 해결하고 싶다.
해결책
https://calomel.org/nginx.html
대부분의 "참조 스팸" - "문제보다 더 성가심"
nginx.conf
## Deny certain Referers (case insensitive)
## The ~* makes it case insensitive as opposed to just a ~
if ($http_referer ~* (babes|click|diamond|forsale|girl|jewelry|love|nudit|organic|poker|porn|poweroversoftware|sex|teen|video|webcam|zippo))
{ return 403; }
다른 팁
nginx 사용 지도 모듈 목록이 길어지면서 조금 더 효율적이고 관리하기 쉽습니다.
이것을 http {} 블록에 넣으십시오.
map $http_referer $bad_referer {
hostnames;
default 0;
# Put regexes for undesired referers here
"~social-buttons.com" 1;
"~semalt.com" 1;
"~kambasoft.com" 1;
"~savetubevideo.com" 1;
"~descargar-musica-gratis.net" 1;
"~7makemoneyonline.com" 1;
"~baixar-musicas-gratis.com" 1;
"~iloveitaly.com" 1;
"~ilovevitaly.ru" 1;
"~fbdownloader.com" 1;
"~econom.co" 1;
"~buttons-for-website.com" 1;
"~buttons-for-your-website.com" 1;
"~srecorder.co" 1;
"~darodar.com" 1;
"~priceg.com" 1;
"~blackhatworth.com" 1;
"~adviceforum.info" 1;
"~hulfingtonpost.com" 1;
"~best-seo-solution.com" 1;
"~googlsucks.com" 1;
"~theguardlan.com" 1;
"~i-x.wiki" 1;
"~buy-cheap-online.info" 1;
"~Get-Free-Traffic-Now.com" 1;
}
서버 {} 블록에 넣으십시오.
if ($bad_referer) {
return 444; # emtpy response
}
그것은 나를 위해 일했다.
이것을 얻었습니다 http://fadeit.dk/blog/post/nginx-referer-spam-blacklist
나는 방화벽이 스스로 분류 할 수있는 다른 임의의 규칙 대신 행동에 따라 사람들을 차단 해야하는 곳에서 비슷한 상황에 처해있었습니다.
그들은 내가 문제를 해결하는 방식으로 내 논리 (당신의 경우 레일)을 막는 것이 었습니다.
- 논리가 블록 목록을 새 라인 분리 된 일반 텍스트 파일로 유지하도록하십시오.
- 이 파일을 읽고 리스티를 방화벽의 블록리스트에 추가하기 위해 루트로 Bash (또는 기타) 스크립트를 작성하십시오.
- 스크립트를 다시 루트로 호출 할 크론 작업을 만듭니다.
내가 이런 식으로하는 이유 (방화벽 구성을 변경하기 위해 Django 권한을 제공하는 것보다) 간단한 것 : 보안입니다. 내 응용 프로그램이 해킹되면 다른 것을 해치고 싶지 않을 것입니다.
Bash 스크립트는 다음과 같습니다.
exec < /path/to/my/djago-maintained/block-list
while read line
do
iptables -A INPUT --source $line/32 -j DROP
done
블랙리스트에서 들어오는 IP를 확인하기위한 모듈을 만들었습니다. https://github.com/oneumyvakin/ngx_http_blacklist_lookup_module
projecthoneypot.org, blocklist.de 및 uceprotect.net의 블랙리스트를 사용합니다.