docs: add awg build instructions

This commit is contained in:
Slava-Shchipunov
2024-08-04 19:22:30 +07:00
parent bb7c66dba2
commit 7c2e79db2f
5 changed files with 40 additions and 2 deletions

View File

@@ -124,12 +124,16 @@ service getdomains start
Не работает под 21ой версией. Поэтому при его выборе playbook выдаст ошибку. Не работает под 21ой версией. Поэтому при его выборе playbook выдаст ошибку.
Для 22ой версии нужно установить пакет вручную. Для 22ой версии нужно установить пакет вручную.
- tun2socks настраивается только роутинг и зона. Всё остальное нужно настроить вручную - tun2socks настраивается только роутинг и зона. Всё остальное нужно настроить вручную
- wgForYoutube - настройка Wireguard только для Youtube. Настраивается автоматически через переменные
- Amnezia wireguard - настраивается автоматически через переменные, но перед настройкой необходимо самостоятельно [собрать бинарники AmneziaWG](./docs/amnezia-wg-installing.md) для своего устройства и установить их
Для **tunnel** четыре возможных значения: Для **tunnel** шесть возможных значений:
- wg - wg
- openvpn - openvpn
- singbox - singbox
- tun2socks - tun2socks
- wgForYoutube
- awg
В случае использования WG: В случае использования WG:
``` ```

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -0,0 +1,34 @@
# Сборка пакетов AmneziaWG для OpenWRT
Так как пакетов AmneziaWG до сих пор нет в официальном репозитории OpenWRT, их придется собирать самостоятельно. Процесс несложный и автоматизированный.
### Создаем форк
Создаем форк [репозитория](https://github.com/yury-sannikov/awg-openwrt) с исходными файлами AmneziaWG
### Указываем переменные для сборки
Далее в созданном форке нужно отредактировать в файле `.github/workflows/build-module.yml` переменные для сборки (`build_env`):
1. `tag` - версия OpenWRT
1. `pkgarch` - архитектура пакетов
1. `target` - целевая платформа или серия устройств, для которых будет выполнена сборка
1. `subtarget` - подкатегория целевой платформы
1. `vermagic` - контрольная сумма, которая должна соответствовать определенной версии ядра
Переменные `target`, `subtarget` и `tag` проще всего посмотреть в LuCi: вкладка Status => System => Target Platform. Здесь до слэша указано значение `target`, а после - `subtarget`. Строчкой ниже Firmware Version - версия OpenWRT.
![target, subtarget и tag](./amnezia-wg-images/envs1.jpg)
Переменные `pkgarch` и `vermagic` можно получить, подключившись к роутеру по SSH и выполнив команду
```
opkg info kernel
```
`pkgarch` - значение поля Architecture, `vermagic` - последняя часть Version
![pkgarch и vermagic](./amnezia-wg-images/envs2.jpg)
Указываем нужные переменные, сохраняем и коммитим изменения
### Запуск сборки пакетов
Теперь нужно создать релиз, чтобы запустить процесс сборки пакетов. Для этого в нашем форке переходим в Releases и кликаем кнопку Draft a new release. В открывшемся окне нажимаем Choose a tag, в выпадающем списке вводим новый тег вида vX.X.X (например, v1.0.0) и жмем внизу зеленую кнопку Publish release. В результате будет создан новый релиз и запущена джоба сборки пакетов. Спустя примерно 2 часа, если сборка пройдет без ошибок, на странице релиза в Assets добавятся 3 пакета с расширением .ipk: amneziawg-tools, kmod-amneziawg, luci-app-amneziawg.
### Установка пакетов
Установить пакеты можно через LuCi: во вкладке System => Software нажать Upload Package, выбрать полученные пакеты и установить (пакет luci-app-amneziawg зависит от amneziawg-tools, поэтому устанавливается после него).

View File

@@ -45,7 +45,7 @@ add_mark() {
} }
add_tunnel() { add_tunnel() {
echo "We can automatically configure only Wireguard. OpenVPN, Sing-box(Shadowsocks2022, VMess, VLESS, etc) and tun2socks will need to be configured manually" echo "We can automatically configure only Wireguard and Amnezia WireGuard. OpenVPN, Sing-box(Shadowsocks2022, VMess, VLESS, etc) and tun2socks will need to be configured manually"
echo "Select a tunnel:" echo "Select a tunnel:"
echo "1) WireGuard" echo "1) WireGuard"
echo "2) OpenVPN" echo "2) OpenVPN"