Puncte:2

Scriptul de conectare client openvpn nu poate vedea fișierele locale?

drapel fr

Rulez un server openvpn și mă conectez la el de acasă. IP-ul meu de acasă este dinamic și vreau să îl stochez într-un fișier de pe server.

Sistemul de operare este Debian 10 și OpenVPN 2.4.7.

server.conf:

proto udp
portul 1234
comp-lzo
menține în viață 10 60
ping-timer-rem
persist-tun
cheie-persiste
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
cheie /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
reneg-sec 0
cifrul AES-256-CBC
server 192.168.123.0 255.255.255.0
traseul 192.168.9.0 255.255.255.0
de la client la client
client-config-dir /etc/openvpn/clients
starea /etc/openvpn/status
verbul 3
log /var/log/openvpn.log
script-securitate 3
client-connect /etc/openvpn/openvpn-client-connect.sh

/etc/openvpn/openvpn-client-connect.sh:


awk -F ',' '/192.168.123.5/ { print $3 }' /etc/openvpn/status | awk -F ':' '{ print $1 }' > /home/s/home-ip
chown s:s /home/s/home-ip

Dar nu funcționează și openvpn.log spune:

/etc/openvpn/openvpn-client-connect.sh: linia 3: /home/s/home-ip: Nu există un astfel de fișier sau director

Desigur, /home/s/home-ip există și când execut /etc/openvpn/openvpn-client-connect.sh din shell, totul funcționează. Ce sa întâmplat aici?

drapel in
Verificați permisiunile, /home/s poate fi citit de utilizatorul serviciului openvpn?
Alex avatar
drapel in
Începi openvpn cu systemd? Dacă da, atunci s-ar putea să am o soluție pentru tine
drapel fr
@Alex Da, începe cu systemd (setarea implicită Debian) NiKiZe openvpn rulează ca root, nu există niciun utilizator suplimentar
Alex avatar
drapel in
Vă rugăm să încercați să scrieți conținutul cu tee în loc de >
Tom Yan avatar
drapel in
@Alex scriptul nu este rulat de systemd, ci de openvpn
Tom Yan avatar
drapel in
Cu toate acestea, poate că aveți nevoie de un shebang sau ceva de genul, sau scenariul dvs. este rupt într-un fel (citare proastă etc.). Eroarea nu seamănă cu una care provoacă `chown`un fișier inexistent, ci încercând în schimb să execute un fișier inexistent
Alex avatar
drapel in
Aveam de gând să propun scrierea unui ExecPost cu serviciul systemd, dar care ar lansa scriptul o dată, nu per conexiune și ar trebui să facă câteva verificări periodice cu scriptul, astfel încât să devină inutil să-l aibă în ExecPost. De aceea am întrebat, dar până la urmă m-am răzgândit. OP, scrieți conținutul în fișierul dvs. cu tee nu cu > și vedeți dacă openvpn îi place

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.