reverse proxy & wg split tunneling docs
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
5dd5e287d0
commit
5bbd7c8b96
46
README.md
46
README.md
@ -128,6 +128,52 @@ services:
|
|||||||
|
|
||||||
См. [здесь](https://neur0tx.site/proxy_ru.html). Можно использовать как фолбэк если у вас есть доступ к этому сервису.
|
См. [здесь](https://neur0tx.site/proxy_ru.html). Можно использовать как фолбэк если у вас есть доступ к этому сервису.
|
||||||
|
|
||||||
|
## Ускоряем реверс-прокси сайтов через ssh при работе через Wireguard VPN
|
||||||
|
|
||||||
|
Ускорение достигается за счет правки таблицы маршрутизации в момент подключения и отключения VPN. Мы пускаем все подключения к реверс-прокси не через VPN - это позволяет
|
||||||
|
сильно ускорить работу реверс-прокси. Инструкция подходит к любому прокси чей IP не меняется (актуально для моего прокси и `proxy.retailcrm.tech`). Выполняем следующее:
|
||||||
|
1. Отключаем свой VPN.
|
||||||
|
2. Выполняем команду:
|
||||||
|
```sh
|
||||||
|
ip route | grep default | awk '{print $3;}'
|
||||||
|
```
|
||||||
|
3. Копируем полученный IP.
|
||||||
|
4. Теперь подготавливаем записи `PreUp` и `PostDown`, которые будем указывать в нашем VPN-профиле. Используем следующий шаблон:
|
||||||
|
```ini
|
||||||
|
PreUp = ip route add IP_прокси/32 via IP_из_шага_2
|
||||||
|
PostDown = ip route del IP_прокси/32 via IP_из_шага_2
|
||||||
|
```
|
||||||
|
5. Если нужно добавить сразу несколько IP в список - дублируем команды через `;` вот так:
|
||||||
|
```ini
|
||||||
|
PreUp = ip route add IP_первого_прокси/32 via IP_из_шага_2; ip route add IP_второго_прокси/32 via IP_из_шага_2
|
||||||
|
PostDown = ip route del IP_первого_прокси/32 via IP_из_шага_2; ip route del IP_второго_прокси/32 via IP_из_шага_2
|
||||||
|
```
|
||||||
|
Пример с default gateway = `192.168.1.1` и настройкой для `proxy.retailcrm.tech` (IP `proxy.retailcrm.tech` может быть неактуален - проверяйте!):
|
||||||
|
```ini
|
||||||
|
PreUp = ip route add 136.243.39.221/32 via 192.168.1.1
|
||||||
|
PostDown = ip route del 136.243.39.221/32 via 192.168.1.1
|
||||||
|
```
|
||||||
|
6. Открываем профиль VPN (лежит в `/etc/wireguard` с расширением `conf`, для редактирования нужен рут) и добавляем `PreUp` и `PostDown` чтобы получилось примерно так:
|
||||||
|
```ini
|
||||||
|
[Interface]
|
||||||
|
PrivateKey = MTcwMDI0ODQxMXJnbGZya2puZnduamxyd2VscnJscmZrcmwsZgo=
|
||||||
|
Address = 10.2.3.4/32
|
||||||
|
DNS = 10.2.3.5
|
||||||
|
PreUp = ip route add 136.243.39.221/32 via 192.168.1.1
|
||||||
|
PostDown = ip route del 136.243.39.221/32 via 192.168.1.1
|
||||||
|
|
||||||
|
[Peer]
|
||||||
|
PublicKey = MTcwMDI0ODQyOHJnbGZya2puZnduamxyd2VscnJscmZrcmwsZgo=
|
||||||
|
AllowedIPs = 0.0.0.0/0
|
||||||
|
Endpoint = 1.2.3.4:51820
|
||||||
|
```
|
||||||
|
|
||||||
|
Настройка для IPv6 тоже возможна:
|
||||||
|
- Все команды `ip` для IPv6 требуют аргумента `-6`. Пример: `ip -6 route | grep default | awk '{print $3;}'`
|
||||||
|
- Размер IP в IPv6 - 128 бит. Поэтому в CIDR указываем размер блока не `/32`, а `/128`.
|
||||||
|
|
||||||
|
По идее этого должно быть достаточно, но я настройку для IPv6 не пробовал по причине отсутствия необходимости. Аналогичную конфигурацию без привязки к Linux и iproute2 можно реализовать с помощью [AllowedIPs Calculator](https://www.procustodibus.com/blog/2021/03/wireguard-allowedips-calculator/), но в моем случае попытка использования этого инструмента оканчивалась нерабочим Интернетом после правки профиля VPN.
|
||||||
|
|
||||||
## Обход блокировок сайтов
|
## Обход блокировок сайтов
|
||||||
|
|
||||||
### Профиль Wireguard VPN под Linux
|
### Профиль Wireguard VPN под Linux
|
||||||
|
Loading…
Reference in New Issue
Block a user