Ansible Openwrt Hirkn

Automation settings OpenWRT router to bypass RKN
Alternatives To Ansible Openwrt Hirkn
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Ansible Openwisp2447
12 days ago17bsd-3-clausePython
Ansible role that installs and upgrades OpenWISP.
Ansible Openwrt241
5 months ago15gpl-3.0Shell
Manage OpenWRT and derivatives with Ansible but without Python
Cheat Sheets164
2 months agolgpl-2.1HTML
code snippets and notes that I have created over the years and which I make available to the public ;-)
Ansible Openwisp2 Imagegenerator123
a year ago3bsd-3-clauseShell
Automatically build several openwisp2 firmware images for different organizations while keeping track of their differences
Ansible Openwrt62
7 years ago4mitRuby
configure your openwrt system(s) using ansible!
Ansible Openwrt46
a month agogpl-3.0
Ansible collection to configure your OpenWrt devices more quickly and automatically (without Python)
Scale Network27
a month ago81bsd-3-clausePerl
SCaLE's on-site expo network configurations, wifi, tooling, and scripts
Ansible Openwrt Hirkn23
a month agoShell
Automation settings OpenWRT router to bypass RKN
Philote13
3 years ago2agpl-3.0Lua
Ansible management for your OpenWRT router - with lua
Ansible Nnxx12
3 years ago3bsd-3-clauseShell
Ansible configurations for the nnxx infrastructure
Alternatives To Ansible Openwrt Hirkn
Select To Compare


Alternative Project Comparisons
Readme

Описание

Playbook для Ansible, автоматизирующий настройку обхода блокировок РКН через Wireguard на роутере с OpenWRT

Для взаимодействия c OpenWRT используется модуль gekmihesg/ansible-openwrt

Списки берутся с antifilter.download

Бонусом устанавливается и настраивается DNSCrypt2

Полное описание происходящего: https://itdog.info/tochechnyj-obhod-blokirovok-rkn-na-routere-s-openwrt-s-pomoshhyu-wireguard-i-dnscrypt/

И вот здесь: https://habr.com/ru/post/440030/

Поиск ошибок:

Тестировалось с

  • Ansible 2.9.27
  • OpenWrt 21.02.5
  • OpenWrt 22.03.3

Использование

Для работы необходим wg сервер вне зоны действия РКН

Установить модуль gekmihesg/ansible-openwrt

ansible-galaxy install gekmihesg.openwrt

Скачать playbook и темплейты в /etc/ansible

cd /etc/ansible
git clone https://github.com/itdoginfo/ansible-openwrt-hirkn
mv ansible-openwrt-hirkn/* .
rm -rf ansible-openwrt-hirkn README.md

Добавить роутер в файл hosts в группу openwrt

[openwrt]
192.168.1.1

Подставить переменные в hirkn.yml

  vars:
    ansible_template_dir: /etc/ansible/templates/
    wg_server_address: wg_server_ip/url
    wg_private_key: privatekey-client
    wg_public_key: publickey-client
    wg_listen_port: 51820
    wg_client_port: 51820
    wg_client_address: 192.168.100.3/24
    download_utility: curl
    list_subnet: true
    list_ip: true
    list_community: true
    list_domains: false

Обязательно нужно задать:

wg_server_address - ip/url wireguard сервера

wg_private_key, wg_public_key - ключи для "клиента"

wg_client_address - адрес роутера в wg сети

Переменные list_ обозначают, какие списки нужно установить. true - установить, false - не устанавливать и удалить, если уже есть

При использовании list_domains должен быть установлен пакет dnsmasq-full. А для OpenWrt 22.03 версия dnsmasq-full должна быть => 2.87, её нет в официальном репозитории, но можно установить из dev репозитория. Инструкция по установке есть в моём тг канале. Если это условие не выполнено, плейбук завершится с ошибкой

Остальное можно менять, в зависимости от того как настроен wireguard сервер

Если ваш wg сервер использует preshared_key, то раскомментируйте wg_preshared_key и задайте ключ

download_utility можно использовать curl или wget. Curl не скачивает заново списки, если на роутере они ещё актуальны

Запуск playbook

ansible-playbook playbooks/hirkn.yml

После выполнения playbook роутер сразу начнёт выполнять обход блокировок через Wireguard сервер.

Скрипт для проверки конфигурации

Написан для OpenWrt 22.03. На 21.02 работает только половина проверок.

[x] - не обязательно означает, что эта часть не работает. Но это повод для ручной проверки.

Есть функционал сохранения вывода скрипта, конфигурации сети и firewall в файл. Все чувствительные переменные при этом затираются.

Запуск

wget -O - https://raw.githubusercontent.com/itdoginfo/ansible-openwrt-hirkn/master/check-hirkn.sh | sh

Запустить с созданием dump

wget -O - https://raw.githubusercontent.com/itdoginfo/ansible-openwrt-hirkn/master/check-hirkn.sh | sh -s dump

Скачать и потом запустить

wget https://raw.githubusercontent.com/itdoginfo/ansible-openwrt-hirkn/master/check-hirkn.sh
chmod +x check-hirkn.sh
./check-hirkn.sh

С созданием dump

./check-hirkn.sh dump

DNSCrypt-proxy2

Если у вас уже стоит dnscrypt-proxy первой версии, его необходимо удалить

opkg remove dnscrypt-proxy

Во второй версии есть отказоустойчивость из коробки.

Popular Openwrt Projects
Popular Ansible Projects
Popular Operating Systems Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Shell
Ansible
Openwrt