Скрытые сервисы Tor часто становятся жертвами:
- DoS-атак (атаки на отказ в обслуживании),
 - атаки на интро-точки (где начинается соединение клиента с сервисом),
 - создания большого числа соединений и потоков (streams), чтобы перегрузить сервис.
 
Tor внедрил PoW (Proof of Work) и DoS-защиты, чтобы защититься от подобных атак без ущерба для обычных пользователей.
Но важно установить последнюю версию сервера, как это сделать:
		Код:
	
	# 1) Ключ репозитория в keyring
sudo mkdir -p /usr/share/keyrings
wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc \
  | gpg --dearmor \
  | sudo tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/null
# 2) Источник пакетов (bookworm)
echo 'deb [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org bookworm main' \
  | sudo tee /etc/apt/sources.list.d/tor.list >/dev/null
# 3) Обновление и установка
sudo apt update
sudo apt install -y tor deb.torproject.org-keyring
# (опционально) Проверить версию
tor --version
	Далее для включения защиты достаточно добавить например такие настройки в /etc/tor/torrc:
		Код:
	
	HiddenServiceMaxStreams 64
HiddenServiceMaxStreamsCloseCircuit 0
HiddenServicePoWDefensesEnabled 1
HiddenServicePoWQueueRate 80
HiddenServicePoWQueueBurst 400
HiddenServiceEnableIntroDoSDefense 1
HiddenServiceEnableIntroDoSRatePerSec 15
HiddenServiceEnableIntroDoSBurstPerSec 60
	И перезапустить сервис:
service tor restart
- Что делает: Устанавливает максимум потоков (streams) через одно соединение (circuit).
 - Что такое stream в Tor: Каждый HTTP-запрос от клиента считается отдельным потоком.
 - Почему важно:
Один circuit может использоваться повторно для нескольких запросов, и атакующий может открыть десятки/сотни потоков через одно соединение — это экономно для атакующего и дорого для сервера. - Значение 64: Разрешает до 64 параллельных потоков через один circuit. Это много. Обычно достаточно 8–16, особенно если сервис не предполагает кучу одновременных запросов.
 
 HiddenServiceMaxStreamsCloseCircuit 0
- Что делает: Определяет, закрывается ли circuit, если достигнут лимит потоков (HiddenServiceMaxStreams).
 - Значение 0: Circuit остаётся открытым, новые потоки не принимаются, но старые продолжают работу.
 - Значение 1: Circuit закрывается, и клиенту придётся открыть новый.
 
 HiddenServicePoWDefensesEnabled 1
- Что делает: Включает механизм защиты PoW (Proof-of-Work).
 - Как работает:
- Перед установлением соединения с сервисом Tor требует от клиента решить криптографическую задачу.
 - Это требует вычислений и делает атаки дороже.
 - Законные пользователи почти не замечают этого, но боты и скрипты замедляются.
 
 
 HiddenServicePoWQueueRate 80
- Что делает: Определяет, сколько запросов на соединение в секунду можно добавить в очередь без PoW.
 - Если лимит превышен:
- Клиенту предлагается выполнить PoW для продолжения.
 
 
Если форум посещает 10 пользователей, каждый открывает 5 вкладок → 50 соединений.
Лимит 80 — адекватен.
Но если злоумышленник создаёт 500 соединений/сек — он будет наказан.
Значения нужно подбирать в зависимости от средней посещалки вашего сервиса, слишком большие значения задавать нет смысла, т.к. защиты не будет, слишком маленькие сильно будут задерживать пользователей.
 HiddenServicePoWQueueBurst 400
- Что делает: Максимальное число соединений, которые могут быть поставлены в очередь до начала PoW-ограничений.
 - Логика: Буфер на случай пиковых нагрузок (например, резкий всплеск активности).
 
 HiddenServiceEnableIntroDoSDefense 1
- Что делает: Включает защиту интро-точек (introduction points).
 - Введение:
В сети Tor клиент сначала подключается к интро-точке, которая связывает его с hidden-сервисом. Эти точки могут быть атакованы, чтобы:- исчерпать ресурсы сервиса,
 - заставить его сменить точки и вызвать нестабильность.
 
 - Защита DoS:
Tor будет блокировать/ограничивать клиентов, которые шлют слишком много интро-запросов. 
⏱ HiddenServiceEnableIntroDoSRatePerSec 15
- Что делает: Определяет, сколько интро-запросов в секунду допускается с одного клиента/IP.
 
- Что делает: Разрешённый пик интро-запросов (burst), прежде чем включится защита.
 
Вот и всё, удачи !)
	