Контейнер VPN АнтиЗапрета для установки на собственный сервер

Добрый день!
После запуска контейнера пишет:
Error: Error occurred when starting proxy device: Error: Failed to listen on [::]:1194: listen tcp 0.0.0.0:1194: bind: address already in use
------------------------------
просмотр ошибки
------------------------------
lxc antizapret-vpn 20220404034950.633 WARN conf - conf.c:lxc_map_ids:3592 - newuidmap binary is missing
lxc antizapret-vpn 20220404034950.634 WARN conf - conf.c:lxc_map_ids:3598 - newgidmap binary is missing
lxc antizapret-vpn 20220404034950.634 WARN conf - conf.c:lxc_map_ids:3592 - newuidmap binary is missing
lxc antizapret-vpn 20220404034950.634 WARN conf - conf.c:lxc_map_ids:3598 - newgidmap binary is missing
lxc antizapret-vpn 20220404034950.634 WARN cgfsng - cgroups/cgfsng.c:fchowmodat:1252 - No such file or directory - Failed to fchownat(40, memory.oom.group, 1000000000, 0, AT_EMPTY_PATH | AT_SYMLINK_NOFOLLOW )
lxc antizapret-vpn 20220404034957.378 WARN conf - conf.c:lxc_map_ids:3592 - newuidmap binary is missing
lxc antizapret-vpn 20220404034957.378 WARN conf - conf.c:lxc_map_ids:3598 - newgidmap binary is missing
---------------------------------------
В чем может быть проблема?

на хосте отдельно openvpn не устанавливали? или как вариант, вы пытаетесь повторно запустить контейнер, хотя он уже запущен

сделайте: sudo netstat -pna | grep 1194

Да, отдельно запущен. Его надо удалить или можно параллельно?

Параллельно наверное можно, но порты разные надо использовать.
1194 это порт для opevpn по умолчанию.

@Andy верно написал, можете просто изменить порт подключения, для openvpn который установлен на хосте

Измените порт OpenVPN:

lxc config device add antizapret-vpn proxy_1194 proxy listen=tcp:[::]:1194 connect=tcp:127.0.0.1:1194

Также не забудьте поменять в клиентском файле конфигурации, допишите порт в конце строки remote.

@ValdikSS Добрый день, только на iPhone при включённом антизапрете не загружает контент из приложения YouTube, если зайти через браузер на YouTube, то все работает. Не сталкивались с такой проблемой ?

Спасибо, переустановил openvpn с другим портом. Ура все заработало!

Еще вопрос.

  1. Как сделать дополнительный файл с ключами? или я могу использовать один и тот же на разных роутерах?
  2. куда можно прописать определенный сервер, что бы при подключении к нему трафик шел через VPN?

Добрый день. Стал замечать, что при заходе на страницы пользователей ВКонтакте трафик идет через Antizapret (допустим, фото профилей грузятся существенно медленнее при включенном VPN). Это все касается только мобильного приложения, в веб-версии все работает корректно.
Можете подсказать где искать проблему?

Не сталкивался. Затрудняюсь предположить, в чём может быть проблема, но пальцем в небо: резолв определённых доменов из контейнера выдаёт «неправильные» адреса, которые, по какой-то причине, заблокированы или фильтруются.
Начните отладку со сбора адресов, это можно сделать через tcpdump:
tcpdump -n -i vpn-tcp port 53.

Можете использовать один общий конфигурационный файл. Дополнительные ключи можно создать вручную, например, так (внутри контейнера):

cd /root/easy-rsa-ipsec/easyrsa3
./easyrsa build-client-full "client2" nopass nodatetime

Файлы будут расположены в ./pki/issued/client2.crt и ./pki/private/client2.key. Конфигурационный файл OpenVPN необходимо будет создать вручную (замените сертификат <cert> и ключ <key> в существующем).

Не понял вопроса. Если речь о добавлении доменов (не из списка Реестра), которые должны маршрутизироваться через VPN, то вот здесь описано, как это сделать: Контейнер VPN АнтиЗапрета для установки на собственный сервер - #127 by ValdikSS

Фото профилей могут грузиться не из-за маршрутизации трафика через VPN, а из-за геораспределения IP-адресов на домене: VPN-серверу выдаются адреса, условно, той страны, где расположен сервер, а не Российские IP.
Можно начать отладку с tcpdump, как описано в этом посте выше. Смотрите, на какие домены идёт ответ с адресами 10.224.x.x — адреса из этого диапазона маршрутизируются в VPN.

У меня на компьютере под win настроен майнинг через пул ethermine.org, который заблокировал русских пользователей. Он использует сервер eu1.ethermine.org через порт 4444.
Прописать в host - эффекта нет. Приходиться гнать весь трафик через vpn.
Подскажите как добавить сервер в существующую конфигурацию?

Если по какой-то причине не работает с доменом, добавьте маршрут: Контейнер VPN АнтиЗапрета для установки на собственный сервер - #81 by ValdikSS

Есть проблема.
Не могу скачать lxd контейнер, ругается на версию tls.

root@am:~# lxc image import https://antizapret.prostovpn.org/container-images/az-vpn --alias antizapret-vpn-img
Error: Head “https://antizapret.prostovpn.org/container-images/az-vpn”: remote error: tls: protocol version not supported

сам lxd - свежий, поставлен через snap:
root@am:~# lxc version
Client version: 5.0.0
Server version: 5.0.0
root@am:~# snap list lxd
Name Version Rev Tracking Publisher Notes
lxd 5.0.0-c5bcb80 22826 latest/stable canonical✓ -

система - Debian 11:
root@am:~# uname -a
Linux am 5.10.0-13-amd64 #1 SMP Debian 5.10.106-1 (2022-03-17) x86_64 GNU/Linux

Помогло вот что:
systemctl edit snap.lxd.daemon
Затем сразу ПОД строчками

### Editing /etc/systemd/system/snap.lxd.daemon.service.d/override.conf
### Anything between here and the comment below will become the new contents of the file

добавляем это:

[Service]
Environment=LXD_INSECURE_TLS=true

(если добавить в конец файла, то изменения не сохранятся)
выполняем systemctl reload snap.lxd.daemon
и проблема уходит

Может, у вас какие-то устаревшие сертификаты, или еще что-то? На сервере сертификат актуальный, работает в любых браузерах. Вы обновляли систему (apt update && apt upgrade?)

Разумеется, первым делом.

Может кому будет полезна идея…
У меня такая ситуация - есть зарубежный vps, откуда есть доступ к заблокированным ресурсам.
Но.
Там мало оперативки, плюс уже крутятся некоторые сервисы, которые её тоже кушают.
То есть ставить дополнительно контейнер, который будет отъёдать ОЗУ - нецелесообразно.

На зарубежном vps уже поднят wireguard сервер.
В общем, не буду ходить вокруг да около - я запустил контейнер на своём сервере, у меня достаточно ресурсов. Затем зашёл в контейнер, установил там wireguard, в конфиге wireguard прописал подключение к своему удалённому vps, указав там в параметрах пира AllowedIPs = 0.0.0.0/0

Таким образом, контейнер ВСЕГДА выходит в интернет через туннель wireguard, любой трафик от него идёт через него, ничего не блокируется. Сам сервер, на котором работает контейнер, об этом ничего не знает, его задача лишь запустить контейнер. И соответственно, значительно снижаются требования к зарубежному vps, от него нужно лишь обеспечить работоспособность wireguard, с чем справится даже самый дохлый комп.
А контейнер с антизапретом можно запускать хоть на домашнем компьютере, главное требование - наличие белого IP адреса, если есть нужда подключаться к нему не только из дома.

у кого нибудь контейнер работает с pi hole на одном впс? никак не получается заставить их совместно работать
по отдельности нормально устанавливаются и работают
но если установлен уже контейнер и при попытке установить pi hole днс не работает(DNS service is NOT running)
если Pi hole установлен, то не получается поставить контейнер, после выполнения команды lxc file pull antizapret-vpn/root/easy-rsa-ipsec/CLIENT_KEY/antizapret-client-tcp.ovpn antizapret-client-tcp.ovpn выходит ошибка error

@ValdikSS
knot resolver какие upstream dns использует? Берёт из resolf.conf?
Там прописаны 8.8.8.8 и 9.9.9.9

Хочу добавить upstream серверы в исключения маршрутизации wireguard, чтобы запросы к ним шли не через туннель. Для того, чтобы если вдруг удалённая vps упадёт, чтобы хотя-бы незаблокированные ресурсы работали. Для этого надо знать, какие dns используются kresd для резолвинга.