From 5fca5840dd5bdd6efd8d299532e94641c79c6740 Mon Sep 17 00:00:00 2001 From: itdoginfo Date: Sat, 26 Oct 2024 17:28:04 +0300 Subject: [PATCH] Update --- README.md | 52 +++++++++++++++++++++++++++------------------- install.sh | 60 ++++++++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 85 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 8123a10..cd61c1d 100644 --- a/README.md +++ b/README.md @@ -15,19 +15,15 @@ sh <(wget -O - https://raw.githubusercontent.com/itdoginfo/domain-routing-openwr Нужен dnsmasq-full. В автоматическом режиме ставится сам. Вручную надо поставить [самостоятельно](https://github.com/itdoginfo/podkop/blob/952dd6215a2a83d65937cf9e33534c42809091ed/install.sh#L20). -## Вручную -Сделать `opkg update`, чтоб установились зависимости. -Скачать пакеты `podkop_*.ipk` и `luci-app-podkop_*.ipk` из релиза. `opkg install` сначала первый, потом второй. - -``` -/etc/init.d/ucitrack restart -``` - ## Автоматическая ``` sh <(wget -O - https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh) ``` +## Вручную +Сделать `opkg update`, чтоб установились зависимости. +Скачать пакеты `podkop_*.ipk` и `luci-app-podkop_*.ipk` из релиза. `opkg install` сначала первый, потом второй. + # Удаление ``` opkg remove luci-app-podkop podkop @@ -67,31 +63,45 @@ opkg update && opkg install sing-box # Известные баги 1. Не работает proxy при режимах main vpn, second proxy -2. Не всегда отрабатывает ucitrack (применение настроек из luci) +2. Не всегда отрабатывает ucitrack (применение настроек из luci). Не удаётся повторить # ToDo +Сделано - [x] Скрипт для автоматической установки. - [x] Подсети дискорда. - [x] Удаление getdomains через скрипт. Кроме туннеля и sing-box. - [x] Дополнительная вкладка для ещё одного туннеля. Домены, подсети. -- [ ] Улучшение скрипта автоматической установки. Спрашивать про туннели. -- [ ] Зависимость от dnsmasq-full -- [ ] Wiki -- [ ] IPv6 +- [x] Улучшение скрипта автоматической установки. Спрашивать про туннели. +- [x] Зависимость от dnsmasq-full + +Приоритет 1 +- [ ] В nft разделить правило tproxy на маркировку и tproxy - [ ] Весь трафик для устойства пускать в туннель\прокси - [ ] Исключение для IP, не ходить в туннель\прокси совсем 0x0 -- [ ] Придумать автонастройку DNS через stubby итд. Как лучше это реализовать. +- [ ] Врубать галочкой yacd в sing-box +- [ ] Свои списки. Просто список доменов с переносом строки + +Приоритет 2 - [ ] Кнопка обновления списка доменов и подсетей +- [ ] IPv6 +- [ ] Придумать автонастройку DNS через stubby итд. Как лучше это реализовать. +- [ ] Удаление подсетей CF из domain sets раз в N часов +- [ ] Wiki + +Низкий приоритет +- [ ] Открытый прокси порт на роутере для браузеров +- [ ] Рефактор dnsmasq restart +- [ ] В скрипт автоустановки добавить установку AWG по примеру getdomains +- [ ] Переменная, раз во сколько часов обновлять списки +- [ ] Галочка, которая режет доступ к doh серверам + +Рефактор +- [ ] Формирование json для sing-box на уровне jq, а не шаблонов - [ ] Unit тесты (BATS) - [ ] Интеграционые тесты бекенда (OpenWrt rootfs + BATS) + +Хз как сделать - [ ] Добавить label от конфига vless\ss\etc в luci. Хз как -- [ ] Удаление подсетей CF из domain sets раз в N часов -- [ ] Врубать галочкой yacd в sing-box -- [ ] Свои списки. Вопрос форматирования -- [ ] В скрипт автоустановки добавить установку AWG по примеру getdomains -- [ ] Галочка, которая режет доступ к doh серверам -- [ ] Рефактор dnsmasq restart -- [ ] Открытый прокси порт на роутере для браузеров # Разработка Есть два варианта: diff --git a/install.sh b/install.sh index 033b2f7..a719566 100755 --- a/install.sh +++ b/install.sh @@ -24,12 +24,60 @@ else [ -f /etc/config/dhcp-opkg ] && cp /etc/config/dhcp /etc/config/dhcp-old && mv /etc/config/dhcp-opkg /etc/config/dhcp fi -echo "Installed..." +echo "What type of VPN or proxy will be used?" +echo "1) VLESS, Shadowsocks (A sing-box will be installed)" +echo "2) Wireguard" +echo "3) AmneziaWG" +echo "4) OpenVPN" +echo "5) OpenConnect" +echo "6) Skip this step" + +while true; do + read -r -p '' TUNNEL + case $TUNNEL in + + 1) + opkg install sing-box + break + ;; + + 2) + opkg install wireguard-tools luci-proto-wireguard luci-app-wireguard + printf "\e[1;32mUse these instructions to configure https://itdog.info/nastrojka-klienta-wireguard-na-openwrt/\e[0m\n" + break + ;; + + 3) + echo "As long as it's not automated" + printf "\e[1;32mUse script from here https://github.com/Slava-Shchipunov/awg-openwrt\e[0m\n" + break + ;; + + 4) + opkg install opkg install openvpn-openssl luci-app-openvpn + printf "\e[1;32mUse these instructions to configure https://itdog.info/nastrojka-klienta-openvpn-na-openwrt/\e[0m\n" + break + ;; + + 5) + opkg install opkg install openconnect luci-proto-openconnect + printf "\e[1;32mUse these instructions to configure https://itdog.info/nastrojka-klienta-openconnect-na-openwrt/\e[0m\n" + break + ;; + + 6) + echo "Skip" + break + ;; + + *) + echo "Choose from the following options" + ;; + esac +done + +echo "Installed podkop..." opkg install $DOWNLOAD_DIR/podkop*.ipk opkg install $DOWNLOAD_DIR/luci-app-podkop*.ipk -rm -f $DOWNLOAD_DIR/podkop*.ipk $DOWNLOAD_DIR/luci-app-podkop*.ipk - -#/etc/init.d/ucitrack restart - -echo "Install sing-box for proxy, or install and configure WG/OpenVPN/AWG/etc for VPN mode" \ No newline at end of file +rm -f $DOWNLOAD_DIR/podkop*.ipk $DOWNLOAD_DIR/luci-app-podkop*.ipk \ No newline at end of file