Terraform error 405 Not allowed. Спасает ВПН — актуализация 2026
автор оригинала: Андрей (Andreyeus)
Terraform error 405 Not allowed. Спасает ВПН
Архивное переиздание с актуализацией. Оригинал опубликован на Habr (≈2020), автор — Андрей (Andreyeus). оригинал скрыт на Habr (HTTP 403/451), доступен только через Wayback Machine Снимок: Wayback Machine. Ниже — редакция ноября 2026: что работает сейчас, что изменилось и как правильно повторить рецепт сегодня. Полный текст оригинала — в конце, без купюр.
TL;DR — версия 2026
Идея «роутер раздаёт обход всем устройствам дома» в 2026 живее всех: ставьте OpenWrt 24.x + контейнеры (Xray/sing-box) или MikroTik с нативным WireGuard; прозрачный прокси-тюнель — как в оригинале, только современнее туннель.
Оригинал решал правильную задачу: «включил в розетку — дома всё работает, на всех устройствах, без настроек». В 2026 решение то же, инструменты поменялись: OpenWrt (24.10/25.x) с DSA и контейнерами, RouterOS 7 с контейнерами на ARM-роутерах, GL.iNet «Beryl» серии с предустановленным OpenWrt и поддержкой AWG. ТСПУ (DPI-боксы) стоят у всех крупных российских провайдеров и умеют резать VPN-хендшейки WireGuard, OpenVPN и «голый» Shadowsocks — поэтому «прозрачный» режим требует туннеля с маскировкой, а не голого WireGuard.
Статус оригинала
- URL: https://habr.com/ru/post/653997/
- Статус на Habr: СКРЫТА (403)
- Снимок: http://web.archive.org/web/20230518080244/https://habr.com/ru/articles/653997/
- Картинки: 1/1 сохранено локально
Что проверить, чего не было в оригинале
- DNS: роутер должен сам ходить за DoH/DoT, иначе «прозрачность» обходится по DNS-подмене;
- QUIC: часть блокировок — по UDP/443; решается выключением QUIC в политике или обработкой в туннеле;
- IPv6: если провайдер даёт v6 — фильтровать и его, иначе «двойная реальность»;
- апдейты списка: cron-скрипт обновления списков раз в сутки;
- MTU: туннель с маскировкой чувствителен к фрагментации.
Архитектура 2026: прозрачный туннель на роутере
Схема из оригинала (все устройства → роутер → политика: «заблокированные подсети/домены → в туннель, остальное — напрямую») осталась идеалом. В 2026 в качестве туннеля берут:
- sing-box на OpenWrt (TUN-режим, route по гео/спискам), в контейнере или статарте;
- Xray с TUN-фронтом (tun2socks) и route-set от community;
- MikroTik: WG-туннель + mangle/route-mark по address-list; на ARM-моделях контейнер с Xray;
- Awg-роутеры GL.iNet — «из коробки» для нетехнаев.
Списки доменов для «что в туннель»: community-листы (типа antifilter) + свои дополнения.
Иллюстрации из оригинала

Что изменилось с ≈2020 года
- OpenWrt 24.10/25.x: DSA-синтаксис, luci-приложения контейнеров
- RouterOS 7: нативный WireGuard, containers (ARM), обновлённый firewall
- появились готовые «тревел-роутеры» с AWG/Amnezia из коробки
- «прозрачный OpenVPN» из старых статей — мёртвая тема: OpenVPN виден DPI
- в тексте оригинала: классический OpenVPN легко детектится DPI (используется в корпсредах, но не для обхода блокировок)
Чек-лист 2026
- туннель с маскировкой (VLESS/ss2022/AWG), не vanilla WG
- свои DNS (DoH) на самом роутере
- политика «в туннель — только то, что надо», остальное напрямую
- автообновление списков
- IPv6 не забыт
Вердикт
Оригинальные статьи о «прозрачном обходе в домашней сети» — лучшие своего жанра. В 2026 жанр не умер: просто слово «OpenVPN» в них замените на «sing-box/VLESS», а всё остальное — таблицы маршрутов, списки, DNS — не изменилось.
ОРИГИНАЛ СТАТЬИ (без изменений)
Сегодня с утра перестали работать сборки в jenkins, вылетали с ошибкой.
**Скрытый текст**
Terraform and earlier allowed provider version constraints inside the provider configuration block, but that is now deprecated and will be removed in a future version of Terraform. To silence this warning, move the provider version constraint into the required_providers block.
Error: Failed to install provider
Error while installing hashicorp/vsphere v2.0.2: could not query provider registry for registry.terraform.io/hashicorp/vsphere: failed to retrieve authentication checksums for provider: 405 Not allowed
Error: Failed to install provider
Error while installing hashicorp/dns v3.2.1: could not query provider registry for registry.terraform.io/hashicorp/dns: failed to retrieve authentication checksums for provider: 405 Not allowed
Тутор, как быстро поднять впн и вернуть терраформ в строй!

Переходим по releases.hashicorp.com/terraform и получаем Error 405 Not allowed. Развели руками.
[]
Нужно поднимать быстренько впн и пушить маршрут до hashicorp.
Приобрели VDS в Финляндии (не реклама). Далее зашли на vds и прокатили скрипт.
wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
Удобно спасибо gitlab
Создали двух клиентов:
Первый создается при запуске скрипта;
второго и далее прокатив еще раз скрипт openvpn-install.sh.
Чуть-чуть меняем openvpn сервер конфиг
vi /etc/openvpn/server/server.conf
закомментили все #push маршруты
Добавили свой
push "route 151.101.37.183 255.255.255.255"
Запустили рестарт службу впн на сервере.
systemctl restart openvpn-server@server.service
Далее зашли на jenkins агента ( в моем случае ). И поставили openvpn (сервер и клиент у них в одном флаконе)
centos
sudo yum install epel-release -y
sudo yum install openvpn -y
ubuntu
sudo apt install openvpn
Затем создаем файл в /etc/openvpn/openi.conf (Очень важно, чтобы он заканчивался на i.conf) и переносим в него наши сгенерированные скриптом конфиги openvpn.
Коммент от себя:
**Скрытый текст**
Долго тупил и не мог увидеть в чем косяк, пока не посмотрел /usr/lib/systemd/system/openvpn@.service
И в нем увидел:
ExecStart=/usr/sbin/openvpn —cd /etc/openvpn/ —config %i.conf
Реально, Карл? Зачем ??? /etc/openvpn/ когда есть /etc/openvpn/client/ %i.conf так много вопросов и мало ответов.
systemctl start openvpn@openi
systemctl enable openvpn@openi
Как итог, сборки вернулись в привычное русло. Далее думаем, как запихать все в Nexus с такими темпами.
Кстати, у кого проблема с большим количеством машин, можно поставить клиент куда-либо (хоть на Mikrotik) и указать на шлюзе маршрут через него к хашикорпу (151.101.37.183).
Возможно завтра туда добавим еще пару маршрутов.
У кого какие идеи решения проблемы с terraform?
Up исправил опечатку в маршруте.