Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't install on Debian 12 LXC #54

Open
Goosegit11 opened this issue Nov 20, 2024 · 10 comments
Open

Can't install on Debian 12 LXC #54

Goosegit11 opened this issue Nov 20, 2024 · 10 comments

Comments

@Goosegit11
Copy link

Goosegit11 commented Nov 20, 2024

log.txt

dpkg: error processing package amneziawg-dkms (--configure):
 installed amneziawg-dkms package post-installation script subprocess returned error exit status 10
dpkg: dependency problems prevent configuration of amneziawg:
 amneziawg depends on amneziawg-dkms (>= 0.0.20200121-2) | amneziawg-modules (>= 0.0.20191219); however:
  Package amneziawg-dkms is not configured yet.
  Package amneziawg-modules is not installed.
It is likely that 5.15.152-1-pve belongs to a chroot's host
Building for 6.1.0-27-amd64

Почему он начинает ставить модуль для 6.1.0?
У меня 5.15, ядро хоста.

awg-quick говорит

Warning: `/etc/amnezia/amneziawg/wg0.conf' is world accessible
[#] ip link add wg0 type amneziawg
Error: Unknown device type.
Unable to access interface: Protocol not supported
[#] ip link delete dev wg0
Cannot find device "wg0"
@MuadipDebua
Copy link

Полностью такая же проблема. Очень актуально. Есть ли решения?

@corpix
Copy link

corpix commented Nov 24, 2024

Попробуйте на хост поставить, а не в LXC. Я не знаком с proxmox, но сильно сомневаюсь что получится загрузить модуль ядра, находясь в контейнере
Кстати, было бы любопытно посмотреть на вывод вот этих команд:

dkms status
ls -l /usr/src/linux-headers-*
uname -r

@Goosegit11
Copy link
Author

root@pi-hole:~# dkms status
ls -l /usr/src/linux-headers-*
uname -r

amneziawg/1.0.0: added
/usr/src/linux-headers-6.1.0-27-amd64:
total 1684
-rw-r--r-- 1 root root 56 Nov 1 04:23 Makefile
-rw-r--r-- 1 root root 1709359 Nov 1 04:23 Module.symvers
drwxr-xr-x 3 root root 4096 Nov 19 20:54 arch
drwxr-xr-x 4 root root 4096 Nov 19 20:54 include
lrwxrwxrwx 1 root root 34 Nov 1 04:23 scripts -> ../../lib/linux-kbuild-6.1/scripts
lrwxrwxrwx 1 root root 32 Nov 1 04:23 tools -> ../../lib/linux-kbuild-6.1/tools

/usr/src/linux-headers-6.1.0-27-common:
total 80
-rw-r--r-- 1 root root 71990 Nov 1 04:23 Makefile
drwxr-xr-x 15 root root 4096 Nov 19 20:54 arch
drwxr-xr-x 31 root root 4096 Nov 19 20:54 include
lrwxrwxrwx 1 root root 34 Nov 1 04:23 scripts -> ../../lib/linux-kbuild-6.1/scripts
lrwxrwxrwx 1 root root 32 Nov 1 04:23 tools -> ../../lib/linux-kbuild-6.1/tools
5.15.152-1-pve
root@pi-hole:~#

@Goosegit11
Copy link
Author

Goosegit11 commented Nov 24, 2024

А толку, от того что я поставлю awg на хост?
И опять же, мне не обязательно модуль ядра, просто хоть как-то уже поставить его

@corpix
Copy link

corpix commented Nov 24, 2024

Предполагаю что в /usr/src/ должны быть исходники для соответствующей хостовой версии ядра, которую репортит uname -r. Без этого dkms скорее всего продолжит падать с ошибкой.

А толку, от того что я поставлю awg на хост?

На хосте нужен модуль ядра чтобы работал awg.

Кажется если хочется это все в контейнере запустить то проще использовать userspace реализацию протокола https://github.com/amnezia-vpn/amneziawg-go, которая работает без модуля ядра

Поправка: В readme amneziawg-go указано:

When an interface is running, you may use amneziawg-tools to configure it, as well as the usual ip(8) and ifconfig(8) commands.

Так что awg будет работать и без модуля ядра, проблема только его поставить в контейнере, возможно подойдет бинарный релиз https://github.com/amnezia-vpn/amneziawg-tools/releases/tag/v1.0.20241018

@Goosegit11
Copy link
Author

Goosegit11 commented Nov 25, 2024

так вот же

awg-quick говорит

Warning: `/etc/amnezia/amneziawg/wg0.conf' is world accessible
[#] ip link add wg0 type amneziawg
Error: Unknown device type.
Unable to access interface: Protocol not supported
[#] ip link delete dev wg0
Cannot find device "wg0"

@corpix
Copy link

corpix commented Nov 25, 2024

Все верно. amneziawg-tools будут работать только с существующим интерфейсом. Он может быть создан через amneziawg-go.
Добавление интерфейса через ip link add wg0 type amneziawg не будет работать без модуля ядра

@Goosegit11
Copy link
Author

запустил интерфейс
image

пытаюсь его сконфигурировать
image

он опять пытается через модуль ядра это делать, как быть?

@corpix
Copy link

corpix commented Dec 27, 2024

Судя по

https://github.com/amnezia-vpn/amneziawg-tools/blob/c0b400c6dfc046f5cae8f3051b14cb61686fcf55/src/wg-quick/linux.bash#L92

https://github.com/amnezia-vpn/amneziawg-tools/blob/c0b400c6dfc046f5cae8f3051b14cb61686fcf55/src/wg-quick/linux.bash#L328-L330

  1. Интерфейс будет удален если существует
  2. awg-quick автоматически фолбечится на amneziawg-go при отсутствии модуля ядра и присутствии инструмента в PATH, в противном случае используется путь из WG_QUICK_USERSPACE_IMPLEMENTATION

Соответственно быстрое решение, которое вероятно заработает: sudo WG_QUICK_USERSPACE_IMPLEMENTATION=./amneziawg-go ./awg-quick up wg0

@Goosegit11
Copy link
Author

Goosegit11 commented Dec 27, 2024

спасибо

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants