내 OpenVPN runit 서비스가 반복적으로 생성됩니다.

내 OpenVPN runit 서비스가 반복적으로 생성됩니다.

저는 OpenVPN과 함께 작동하도록 Void Linux 시스템을 얻으려고 노력 중입니다. 이것은 나만의 runit 서비스를 만드는 첫 번째 시도입니다. Void Linux의 OpenVPN 패키지는 초기화 파일이나 구성 파일을 제공하지 않습니다./etc/openvpn

사용자를 생성 openvpn하고 /etc/openvpn/client다음 프로필을 생성했습니다.

client
dev tun
proto udp

verb 5

#Server IP and Port
remote [redacted] 1194

user openvpn
group openvpn

resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
ca /etc/openvpn/client/ca.crt
cert /etc/openvpn/client/client.crt
key /etc/openvpn/client/client.key
tls-auth /etc/openvpn/client/ta.key 1
remote-cert-tls server

그런 다음 디렉토리를 생성하여 OpenVPN용 runit 서비스를 생성하고 /etc/sv/openvpn다음 내용이 포함된 실행 파일을 생성했습니다./etc/sv/openvpn/run

#!/bin/sh

[ -r conf ] && . ./conf
exec /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon $OPTS

서비스 파일을 실행 가능하게 만든 후 다음 명령을 사용하여 OpenVPN 프로세스를 시작했습니다.

# sv start openvpn
ok: run: openvpn: (pid 858) 0s

작동하는 것 같아서 tun0 인터페이스가 실행 중인지 확인했는데 다음과 같습니다.

4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 500
    link/none
    inet 10.8.0.102 peer 10.8.0.101/32 scope global tun0
       valid_lft forever preferred_lft forever
    inet6 fe80::475f:cd8d:32e1:2af3/64 scope link stable-privacy
       valid_lft forever preferred_lft forever

그러나 몇 초 후에 또 다른 터널 인터페이스가 생성됩니다.

5: tun1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 500
    link/none 
    inet 10.8.0.102 peer 10.8.0.101/32 scope global tun1
       valid_lft forever preferred_lft forever
    inet6 fe80::fa30:8bfb:2168:6d7b/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever
6: tun2: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 500
    link/none 
    inet 10.8.0.102 peer 10.8.0.101/32 scope global tun2
       valid_lft forever preferred_lft forever
    inet6 fe80::8366:3479:ee34:5f47/64 scope link stable-privacy 
       valid_lft forever preferred_lft forever

어떤 이유로 내 runit 서비스가 OpenVPN을 계속 생성합니다. 프로세스는 다음과 같습니다.

openvpn    865  0.1  0.5   9636  5864 ?        Ss   19:22   0:00 /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon
root       869  0.2  0.5   9636  5784 ?        Ss   19:22   0:00 /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon
root       871  0.0  0.5   9636  5784 ?        Ss   19:22   0:00 /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon
root       877  0.3  0.5   9636  5892 ?        Ss   19:22   0:00 /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon
openvpn    879  0.3  0.5   9636  5912 ?        Ss   19:22   0:00 /usr/bin/openvpn --config /etc/openvpn/client/client.conf --daemon

답변1

문제는 자체적으로 --daemon관리하는 데몬이 runit백그라운드로 들어가서는 안 된다는 것입니다. 그것이 어떻게 이루어졌는지 sshd, exec /usr/bin/sshd -D $OPTS그리고 -D그것이 무엇을 의미하는지 알아보세요 sshd will not detach and does not become daemon.

관련 정보