# Cloudflare Tunnel: безопасный доступ к вашему серверу для fetch-уведомлений MikroTik ## 1. Регистрация и подготовка - Зарегистрируйтесь на https://cloudflare.com (если ещё нет аккаунта) - Добавьте свой домен в Cloudflare (следуйте инструкциям, смените NS-записи у регистратора) ## 2. Установка cloudflared - На сервере (где работает бот/FastAPI): ``` wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb sudo dpkg -i cloudflared-linux-amd64.deb # или через brew install cloudflared (macOS) ``` ## 3. Авторизация и запуск туннеля - Введите: ``` cloudflared tunnel login ``` - Откроется браузер, авторизуйтесь через Cloudflare. - Создайте туннель: ``` cloudflared tunnel create mikrotik-bot cloudflared tunnel route dns mikrotik-bot bot.example.com ``` - Запустите туннель: ``` cloudflared tunnel run mikrotik-bot ``` - Теперь ваш сервер доступен по адресу https://bot.example.com (через Cloudflare, без проброса портов!) ## 4. Настройка fetch-скрипта на MikroTik - Используйте URL вида: ``` /tool fetch url="https://bot.example.com/event?type=wifi_connect&mac=$mac&ip=$ip" http-method=get ``` ## 5. Безопасность - Cloudflare Tunnel скрывает реальный IP сервера - Можно ограничить доступ по IP/стране через Cloudflare Firewall - Рекомендуется добавить секрет в URL (?secret=...) и проверять его на сервере ## 6. Автозапуск (systemd) - Для автозапуска создайте сервис: ``` sudo cloudflared service install ``` - Проверьте статус: ``` sudo systemctl status cloudflared ``` --- ## Преимущества - Не нужно открывать порты на роутере/сервере - Бесплатно для большинства задач - Простая интеграция с MikroTik и Telegram-ботом