Всем привет!
Незнаю может нужно кому, для интереса решил настроить прокси, вот-что получилось.
Вообще даже бесплатный аккаунт даёт достаточно мощный функционал для отражения атак, которые могут не давать даже платники.
Просто акцентирую внимание на что можно обратить внимание при настройке:
1)Режим "Я под атакой", рекомендую сделать не для всех стран, а для некоторых.
Например можно не проверять какие-то конкретные страны европы, США, СНГ.
В зависимости от того для кого ваши сайты.
В Security->Settings:
Ставим "I'm Under Attack!"
Далее заходим в Create a Configuration Rule
И там вбиваем нужное правило.
Например:
Далее можно поменять уровень фильтрации для этих стран:
Ну там много чего можно сделать.
Вот текстовое правило (Страны СНГ, Европы, США):
Код:
(ip.geoip.country in {"RU" "UA" "BY" "KZ" "AM" "AZ" "GE" "KG" "MD" "TJ" "TM" "UZ" "US" "AL" "AD" "AT" "BE" "BA" "BG" "HR" "CY" "CZ" "DK" "EE" "FI" "FR" "DE" "GR" "HU" "IS" "IE" "IT" "XK" "LV" "LI" "LT" "LU" "MT" "MC" "ME" "NL" "MK" "NO" "PL" "PT" "RO" "SM" "RS" "SK" "SI" "ES" "SE" "CH" "TR" "GB" "VA"})
2)Обратить внимание на это, кто из РФ: ВАЖНО - **Роскомнадзор блокирует сайты через Cloudflare с TLS 1.3 и ECH**
3)Вообще сервис классно работает, если реальный IP-адрес не будет вычислен, а вот что будет если он будет вычислен, как минимум я рекомендую заблокировать в файерволе доступ к 443 и 80 портам всем кроме сервисов CF.
Вот скрипт как это можно сделать, нужно добавить его в крон, также скрипт можно доработать и блокировать нужные порты.
Код:
#!/bin/bash
# Обновление списка IP Cloudflare
curl -s https://www.cloudflare.com/ips-v4 -o /tmp/cloudflare-ips-v4.txt
curl -s https://www.cloudflare.com/ips-v6 -o /tmp/cloudflare-ips-v6.txt
# Очистка старых правил
iptables -F
ip6tables -F
# Добавление правил для Cloudflare
for ip in $(cat /tmp/cloudflare-ips-v4.txt); do
iptables -A INPUT -p tcp -m multiport --dports 80,443 -s $ip -j ACCEPT
done
for ip in $(cat /tmp/cloudflare-ips-v6.txt); do
ip6tables -A INPUT -p tcp -m multiport --dports 80,443 -s $ip -j ACCEPT
done
# Блокировка всех остальных
iptables -A INPUT -p tcp -m multiport --dports 80,443 -j DROP
ip6tables -A INPUT -p tcp -m multiport --dports 80,443 -j DROP
# Сохранение правил
netfilter-persistent save
Добавление в крон:
Код:
sudo crontab -e
Добавьте строку:
0 5 * * * /usr/local/bin/update-cloudflare-iptables.sh
Запуск в 5:00.
Нужно установить:
Код:
sudo apt update
sudo apt install iptables-persistent
4)По поводу раскрытия IP-адреса.
Узкое место это отправка почты, тут нужно либо отключать рассылку, либо чистить заголовки писем.
Кстати в CF можно делать email-ретронслятор: Email -> Email Routing:
Нужно поставить проксирование Email в DNS, а в Email -> Email Routing указать куда пересылать почту, почта будет пересылаться на реальный адрес.
Вот так, это минимально на что обратить внимание, пишите ещё кому интересно.)