LXD yönetimli LXC kapsayıcısında / dev / net / Tun öğesine nasıl izin veririm?


9

Openvpn bir LXD / LXC kapsayıcı içinde çalıştırmak ve kapsayıcı gelen trafiği VPN yönlendirmek çalışıyorum.

Amaç tam olarak bunu yapan tam teşekküllü bir VM'nin yerini almaktır (ve LXD ile oyuncak :-)

Ana DHCP sunucumdan bir IP almayı başardım, trafiği maskelemek / yönlendirmek için iptables kurallarını ayarladım, ancak openvpn'i başlatmaya çalıştığımda, / dev / net / tun cihazının (erişim) olmaması nedeniyle engellendi .

Bu yazıya ServerFault /server/429461/no-tun-device-in-lxc-guest-for-openvpn adresinden geldim , ancak LXC ve / veya mevcut sürümüyle çalışmıyor gibi görünüyor LXD yapılandırmayı yönetiyor ...

EDIT: Bu büyüyü kullanmayı denedim, ancak başarılı olmadı:

lxc config set mycontainer raw.lxc 'lxc.cgroup.devices.allow = c 10:200 rwm'

EDIT2: denedim lxc config device add mycontainer tun unix-char path=/dev/net/tun major=10 minor=200ama bir sonraki durakta / başlattığımda

hata: Aygıt ayarı yapılandırılamadı: Uygulanmadı

Şimdi lxc config device remove mycontainer tunaynı uygulanmadı hatası atıyor bile yapamam . Konteyner kayboldu ...

Yanıtlar:


14

İstediğiniz:

lxc config device add CONTAINER tun unix-char path=/dev/net/tun

1
Bu ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2), bir kapsayıcıdan bir OpenVPN bağlantısı başlatmaya çalıştığım hatayı çözdü . Burada bu yanıtı bu hatayla ilgili Google aramalarına eklemeyi umarak belirtmek. Bu da @ alci'nin sorusunu çözerse, bu cevap kabul edilmelidir.
Jonathan Y.

Şimdi ERROR: Cannot open TUN/TAP dev /dev/net/tun: Operation not permitted (errno=1)yerine alacağımERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)
Jay _silly_evarlast_ Wren

3

Bunu da imtiyazsız bir konteyner içinde yapmak için uğraşıyordum. Sonunda yaptığım şey

mknod /path/to/your/container/root/tun c 10 200
chown 100000:100000 /path/to/your/container/root/tun

sonra kabın içinde

mkdir /dev/net
ln -s /root/tun /dev/net/tun

Bu, lxc conf'de herhangi bir değişiklik yapmak zorunda olmadığım anlamına geliyordu


0

Kapsayıcıyı başlatmadan önce tun cihazını ana bilgisayarda yapmanız gerekir: sudo mknod /path/to/your/container/dev/net/tun c 10 200


Teşekkürler. Düğümü ben yarattım. Sahibini: grubunu 100000: 100000 olarak değiştirdim. Ama hala konteynerin içinden göremiyorum ...
alci
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.