Підключення
за 5 хвилин
Від нульового акаунта до першого запиту через захист. Вважаємо, що у вас уже є домен і доступ до його DNS-зони. Якщо немає - купіть домен у будь-якого реєстратора (наприклад, Namecheap) і повертайтеся.
Зареєструватися
Відкрийте https://anycast.ac/register. Потрібні e-mail, handle і пароль. Handle - короткий нікнейм, який показується в панелі та в аудит-лозі. Пароль зберігається у вигляді bcrypt-хеша (cost=12), plain-text не зберігається ніде.
Після реєстрації вас автоматично перекине на dash.anycast.ac. Це той самий акаунт, просто інша точка входу. Cookie живе на всьому домені .anycast.ac - тому логін на маркетингу автоматично дає доступ до дашборду.
Створити сайт
У дашборді натисніть + New site. Відкриється форма. Що заповнити:
- Domain - Ім’я вашого сайту (наприклад, example.com). Без протоколу і шляху.
- Origin URL - Де насправді крутиться ваш сервер. Формат http://1.2.3.4:8080 або https://server.example.net. Ми завжди конектимося на цю адресу з нашого edge (DE1 · Франкфурт).
- TLS mode - acme (за замовчуванням) - автоматичний Let's Encrypt на нашому боці. Або byo - якщо ви заливаєте fullchain+key самі через API.
- Preset - Швидке пресет-налаштування правил: easy для форумів, normal за замовчуванням, strict для API, paranoid при активній атаці. Можна змінити пізніше в Rules.
Сайт створюється у стані pending - це означає, що cert-worker поставив вас у чергу на випуск Let's Encrypt-сертифіката. Щойно DNS покаже на нас (наступний крок) і TLS випуститься, стан зміниться на active.
Налаштувати DNS
Додайте CNAME-запис у DNS-зоні вашого домену:
Name Type Value ──────────────────────────────────────────────────────── example.com CNAME cname.anycast.ac www CNAME cname.anycast.ac
cname.anycast.ac резолвиться в наш edge у Німеччині (DE1 · Франкфурт) через BGP anycast.
Якщо ваш реєстратор не підтримує CNAME на apex-домен, використайте ALIAS або ANAME, або змініть реєстратора. Cloudflare як безкоштовний DNS не підходить - у них увімкнена проксувальна оранжева хмара, доведеться її вимкнути (сіра хмара).
Дочекатися сертифіката
Cert-worker кожні 30 секунд перевіряє DNS вашого домену. Щойно бачить, що CNAME вказує на наш anycast, він:
- Запитує Let's Encrypt через ACME HTTP-01.
- Отримує fullchain.pem + privkey.pem.
- Копіює їх на всі edges через SCP.
- Перезавантажує nginx-вкладки і робить push-refresh сайтового реєстру.
- Переводить сайт у стан active в Postgres.
Весь процес займає 30–90 секунд. Якщо через 5 хвилин ваш сайт усе ще pending - дивіться в § «Що пішло не так» нижче.
Перевірити, що працює
$ curl -I https://example.com HTTP/2 200 server: fg-edge-se1 x-fg-route: ok ...
Заголовки server: fg-edge-* і x-fg-route підтверджують, що трафік іде через нас. Якщо бачите заголовки вашого origin-сервера напряму (наприклад server: nginx/1.25) - отже DNS ще не поширився.
Перевірте також що HTTP автоматично редиректиться на HTTPS: curl -I http://example.com має повернути 301 Location: https://...
Налаштувати правила (Rules)
Dashboard → Sites → ваш сайт → Edit rules. Що тут є:
Максимум запитів з одного IP за хвилину. 0 = без ліміту. Рекомендовані значення: 120 для форумів, 600 для API, 60 для біолінк-сайтів.
Одноразовий стрибок, допустимий поверх rate. Зазвичай 2–3× від rate.
Скільки разів IP може порушити HTTP-протокол до автоматичного kernel-бана на 60 секунд. Рекомендуємо 2.
Скільки «м’яких» порушень (rate-overshoot, порожній UA) до повного годинного бана. Зазвичай 50–100.
Список CIDR-блоків через перенос рядка. Allow має пріоритет над Deny. Приклади: 10.0.0.0/8, 2a02::/16.
Увімкнено за замовчуванням. Ріже запити без User-Agent заголовка - це ~90% усіх ботів, які впевнено відсіюються без ризику зачепити людей.
Дозволені HTTP-методи через кому. За замовчуванням - GET,POST,HEAD,OPTIONS. Для API додайте PUT,DELETE,PATCH.
Максимум тіла POST-запиту в кілобайтах. 0 = без ліміту. Для звичайного сайту 2048 (2 МБ) - більш ніж достатньо.
Підозрілим IP (скори за ASN, User-Agent, rate) показується JS-challenge - прозорий для людей, непроходимий для curl-ботів.
ПЛАТИНОВИЙ режим. Кожному новому IP показується interstitial-challenge (~1 секунда на клієнті) перш ніж дати доступ до сайту. Увімкніть коли реально ллють - вимкніть щойно стихло. Trust-cookie на 30 хвилин, після - повтор.
Читати графіки
На картці сайту - три бар-чарти: Requests, Blocked, Allowed. Діапазони:
- 60 sec - 6 стовпчиків по 10 секунд. Для спостереження в реальному часі.
- 5 min - 10 стовпчиків по 30 секунд. «Що відбувалося прямо зараз».
- 1 hour - 60 стовпчиків по хвилині. Півгодини-година історії.
- 1 day - 144 стовпчики по 10 хвилин. Цілу добу.
- All time · by day - 30 стовпчиків, по одному на день. Загальна картина за місяць.
Семпли пише окремий воркер кожні 10 секунд напряму з лічильників edges - графік заповнюється відразу після створення сайту, навіть якщо трафіку ще немає (0 - теж валідна точка).
Що пішло не так
Сайт висить у "pending" більше 5 хвилин
Найчастіша причина - DNS ще не поширився. Перевірте через зовнішній резолвер:
$ dig +short example.com @8.8.8.8 cname.anycast.ac. 1.2.3.4
Якщо бачите IP вашого сервера замість cname.anycast.ac - правка DNS ще не розлетілася. Почекайте TTL попереднього запису (зазвичай 5–60 хвилин).
Chrome відкриває, Firefox пише «Не захищено»
Для нового домену на нашому проксі репутація в Google Safe Browsing нульова - Chrome до цього спокійний, Firefox показує попередження. Через кілька годин репутація зростає автоматично, або можна вручну запросити перегляд у Google Search Console та Mozilla Site Security Report.
Помилка "host not served here"
Edge отримав запит на Host, якого немає в його реєстрі сайтів. Причини:
- Cert-worker ще не закінчив - почекайте до active стану.
- Push-refresh не долетів - через 30 секунд edge все одно підтягне новий реєстр poll-ом.
- Ви ходите на www.example.com, а зареєстрували лише apex example.com. Додайте другий сайт із www.
HSTS залочився на неправильному сертифікаті
Якщо браузер устиг отримати HSTS-заголовок до випуску Let's Encrypt-сертифіката, він може скаржитися на невалідний cert навіть після його появи. Очистіть HSTS локально:
# Chrome / Chromium / Edge chrome://net-internals/#hsts → Delete domain security policies: example.com # Firefox about:support → HSTS/HPKP clear site data
Ми тримаємо HSTS на наших клієнтських сайтах на 5 хвилин, щоб ця проблема сама розсмоктувалася швидко. Якщо ви хочете повний річний HSTS - напишіть у support@, ми увімкнемо вручну після перевірки конфігурації.
UAM викидає мене самого з сайту
Це поведінка by-design: UAM вмикає challenge для кожного нового IP, у тому числі для вашого. Рішень два:
- Один раз пройдіть challenge - отримаєте trust-cookie на 30 хвилин.
- Додайте свій IP в Allow CIDRs у Rules - для вас UAM взагалі не спрацює.
Далі
Ознайомтеся з політикою та правилами, перш ніж хостити серйозне навантаження. Питання - на support@anycast.ac. Там відповідають люди, а не автовідповідач.