Openvpn Service und Slices

zerofool

New member
Hallo!
Ich habe nochmal eine Frage bzgl. VPNS.
Mittels systemd-cgls habe ich mir die CGroups von Systemd ausgeben lassen.
Und ich finde dort
Code:
├─system-openvpn\x2dclient.slice
  │ └─[EMAIL]openvpn-client@Server.service[/EMAIL]
  │   └─196151 /usr/bin/openvpn..........
Ich finde bei Suchen im OpenVPN Code und in der *.service-Datei keinen hinweis auf den Slice.
Wie so vieles kann der ja in SystemD auch on-the-fly erstellt werden.
Nun dachte ich ggf. an CGroups oder aber an andere Konfigurationen wie z.B. User= und Group= , wo ich ggf. die Dokumentation nicht genau genug gelesen habe oder das aber nur nebenbei in einem anderen Bereich von SystemD erwaehnt wurde und ich es somit uebersehen habe.
Aber ich hab die Service-Datei soweit ich konnte eingedampft und finde keinen hinweis auf den Slice.
Code:
# /usr/lib/systemd/system/openvpn-client@.service
[Unit]
Description=OpenVPN tunnel for %I
After=syslog.target network-online.target
Wants=network-online.target
Documentation=man:eek:penvpn(8)
Documentation=[URL]https://community.openvpn.net/openvpn/wiki/Openvpn24ManPage[/URL]
Documentation=[URL]https://community.openvpn.net/openvpn/wiki/HOWTO[/URL]

[Service]
Type=notify
WorkingDirectory=/etc/openvpn/client
ExecStart=/usr/bin/openvpn --group network --user openvpn --suppress-timestamps --nobind --config %i.conf


[Install]
WantedBy=multi-user.target
Da wollte ich mal fragen ob i.j. dort ggf. noch weiterfuehrende Informationen zu hat wie dieser Slice ggf. zustande gekommen sein koennte.

Thx..

zero

P.s.: Ziel ist es hierbei den Netns namespace kontrollieren zu koennen denn selbst wenn ich JoinsNamespaceOf= in der Service-Datei eingebe, wird der globale Namespace konfiguriert. ich kann das mittels ip netns exec machen aber das ist ja nicht sinn der Sache. Ich will dafuer schon gerne SystemD benutzen.

P.P.S.: Wenn man in ExecStart
> /bin/bash -c "nsenter -t $(ps -opid= -C sddm) -n unshare -pf --mount-proc -C /usr/bin/openvpn ....."
Eingibt und meinetwegen noch etwas mit uid und gid mapping in nsenter oder unshare dann funktioniert es und der VPN-Tunnel wird im Private NetNS des Dienstes aufgebaut. Ich wuerde aber gerne SystemD dafuer verwenden aber fuerchte das SystemD und Network Namespaces dort nicht wirklich reibungslos zusammenarbeiten. Wuerde mich ueber andere Ansaetze, Kommentare fuer Verbesserungen meines Ansatzes etc. freuen, denn was mich nervt ist das ich einen privaten NS im SDDM Service definiert habe aber den Rest mit normalen Linuxmitteln CLImaessig loese. Interessanter Weise hat das auf den Slice keinen Einfluss,was ich aber vermutet haette da es ja Services gruppieren soll.

editiert von CDW: QUOTE-Tags zu CODE geändert
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben