Pazartesi, Kasım 4, 2024

NGINX ile Proxy IP Adreslerinin Erişimlerinin Engellenmesi

yüksek çözünürlüklü nginx logosu

Proxy adresleri kullanılarak günümüzde bin bir çeşit siber ataklar yapılabiliyor, bunlardan en fazla gözlemlediğimiz botnet saldırıları, brute-force ve directory fuzzing tabii bunlardan arta kalan vakitlerinde saldırganlar google dorking denemeleri yapmayı da ihmal etmiyor. En iyi ihtimalle site crawl işlemi de yapıyorlar.

wget -qO- https://iplists.firehol.org/files/firehol_proxies.netset

Listemiz her gün belirli aralıklarla güncellenmektedir, bu sebeple listeyi mümkün olduğunca sık güncellemek sizin için faydalı olacaktır.

Aşağıdaki gibi bir cronjob ayarlamamız kullanacağımız bu liste özelinde daha doğru olur.

0 */12 * * * wget -qO- https://iplists.firehol.org/files/firehol_proxies.netset | grep -v # | grep -v -E \s[1-2]$ | cut -f 1 | sed s/^/deny /g; s/$/;/g > /etc/nginx/conf.d/proxylists-block.conf; systemctl reload nginx

Her 12 saatte bir kez olmak üzere listenin güncellenip NGINX\’e uyumlu formata gelmesi için komutumuzu ayarladık ve son olarak soft bir şekilde nginxi yeniden başlatmasını söyledik.

Bunun sonucunda web sunucumuz üzerinde aşağıdakiler engellenmiş olur.

  • SOCKS4/5 Proxy IP adresleri
  • Anonim Proxyler
  • SSL Proxyler
  • Tespit edilmiş VPN bağlantıları
  • Halka açık proxy adresleri

Fazlaca saldırı alan bir web sitesi veya sunucu önüne konumlandırılmış bir NGINX özelinde bu şekilde engelleme işlemi yapabilirsiniz. 1 milyon istek özelinde maximum %4 performans kaybı yaşatacağını unutmayınız bu sebeple geoip modülü ile birlikte kullanmanızı öneririm.