인터넷 기술이 발전하면서 웹 공격을 예방하는 것이 웹사이트 보안에 있어서 중요한 문제가 되었습니다. 자동화된 공격 도구로서 Bot은 웹 공격의 주요 형태 중 하나가 되었습니다. 특히, 역방향 프록시를 통해 서비스하는 Nginx는 효율성, 안정성, 유연성 및 사용자 정의 측면에서 널리 사용되었습니다. 이 문서에서는 Nginx 역방향 프록시에서 봇 공격에 대한 몇 가지 효과적인 예방 조치를 제공합니다.
1. 액세스 로그 켜기
Nginx는 각 요청의 HTTP 프로토콜, 소스 IP, 요청 시간, 응답 상태 코드 및 기타 정보를 기록할 수 있는 액세스 로그 기능을 제공합니다. 액세스 로그를 켜면 봇 공격을 더 쉽게 감지할 수 있습니다.
Nginx 구성 파일에 다음 내용을 추가합니다.
http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; …… }
2. 제한된 IP 추가
Nginx 구성 파일에 IP 제한 방법을 추가하면 특정 지역의 IP로부터의 공격을 효과적으로 방지할 수 있습니다. 예를 들어 다음을 추가하면 중국 본토의 공격을 방지할 수 있습니다.
http { deny 61.135.0.0/16; deny 118.25.0.0/16; …… }
3. GeoIP 모듈 사용
Nginx의 GeoIP 모듈은 액세스 소스 IP를 지리적 위치와 일치시킬 수 있습니다. GeoIP 모듈과 GeoIP 라이브러리를 설치하고 GeoIP 변수를 사용하여 IP 원본 지역을 감지하기만 하면 됩니다. 예:
http { geoip_country /usr/share/GeoIP/GeoIP.dat; geoip_city /usr/share/GeoIP/GeoIPCity.dat; server { location / { if ($geoip_country_code = CN) { return 403; } if ($geoip_city_name ~* "moscow") { return 403; } } } }
4. HTTP 리퍼러 확인 추가
HTTP 리퍼러를 사용하여 요청 소스를 확인할 수 있습니다. Nginx 구성 파일에 다음 콘텐츠를 추가하기만 하면 됩니다.
http { server { if ($http_referer ~* (blacklist1|blacklist2|blacklist3)) { return 403; } } }
5. Nginx를 사용하여 CC 공격 방지
Nginx는 CC 공격을 방지하기 위한 몇 가지 기능을 제공합니다. Nginx 구성 파일에서 설정하기만 하면 됩니다:
http { limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; server { location / { limit_req zone=one burst=5; …… } } }
6. SSL 인증서 활성화
SSL 인증서를 활성화하면 HTTP 프로토콜 수준에서 데이터 도난 및 중간자 공격을 방지할 수 있습니다. 동시에 HSTS(HTTP Strict Transport Security) 메커니즘을 활성화하여 HTTP 요청이 강제로 HTTP 요청으로 변환되는 것을 방지함으로써 향후 모든 액세스가 HTTPS로 액세스되도록 할 수 있습니다.
http { server { listen 443 ssl; ssl_certificate /path/to/cert; ssl_certificate_key /path/to/key; add_header Strict-Transport-Security "max-age=315360000; includeSubDomains; preload;"; } }
요약
Nginx 리버스 프록시 서버의 보안은 전체 웹 애플리케이션 시스템의 보안에 직접적인 영향을 미칩니다. Bot 공격의 경우 액세스 로그 켜기, 제한된 IP 추가, GeoIP 모듈 사용, HTTP 참조자 확인 추가, Nginx를 사용하여 CC 공격 방지 및 SSL 인증서 활성화 등을 통해 Nginx 역방향 프록시 서버가 가짜 요청을 방지하고 악의적인 공격을 방지하고 웹 애플리케이션 시스템 보안을 보호합니다.
위 내용은 Nginx 역방향 프록시는 봇 공격으로부터 보호합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!