Fork me on GitHub

Herr Knedel/Nginx: Hogyan blokkolhatom a TOR felhasználókat?

Created Fri, 14 Feb 2020 00:00:00 +0000 Modified Sat, 02 Apr 2022 15:58:05 +0000 Schwierigkeitsgrad: Es kann etwas länger dauern

183 Words

Az én darknet blokkolómhoz csak egy Tor exit node IO listára és a következő szabályra van szükségem:

location / { 
  limit_req zone=one; #request limit 
  limit_conn addr 
  include /etc/nginx/conf.d/tor-ips.conf;  #tor ips blocken ... 
}

A következő szkript segítségével létrehozhatok egy Ip feketelistát:

IP Update Script

#!/bin/sh 
# Copyright 2012, Nico R. Wohlgemuth <nico@lifeisabug.com> WGET=/usr/bin/wget 
LIST=/etc/nginx/conf.d/tor-ips.conf 

#ziel der blacklist 

LISTBAK=/etc/nginx/conf.d/tor-ips.bak 
TEMPLIST=/tmp/torlist.txt 

wget -qO- https://check.torproject.org/exit-addresses | grep ExitAddress | cut -d ' ' -f 2 | sed "s/^/deny /g; s/$/;/g" > $TEMPLIST 

if [ ! -s $TMPTEMPLIST ]; then 
  echo "error: list is empty or was not downloaded" 
  exit 1 
fi 

head -n3 $TEMPLIST 
tail -n3 $TEMPLIST 

echo -e "\ndoes this look okay? [y/n]: " 
read yesno 

if [ $yesno != "y" ]; then 
  echo "error: aborted" 
  rm $TEMPLIST exit 2 
else 
  mv $LIST $LISTBAK 
  mv $TEMPLIST $LIST 
fi 

/usr/sbin/nginx -t 
if [ $? -ne 0 ]; then 
  echo "deine config ist kaputtt" 
else 
  /bin/systemctl reload nginx 
  echo "alles ok" 
fi

A szkript elhelyezi a PI listát (tor-ips.conf) a “/etc/nginx/conf.d/” könyvtárban. Ellenőrzi a kiszolgáló konfigurációját és frissíti az Nginx beállításait. A letiltott felhasználók ezt látják majd: