openvpn3 session-start ignoréiert Är Datei mat den Zougangsdaten
Den 3.x-Client hëlt d'Zougangsdaten beim Ufank vun enger Sitzung an liest keng gespäichert Datei. Benotz de Prompt oder den autoload-Wee an akzeptéier, wat jiddereen späichert.
Verbind dech mam 2.x-Client an de Profil funktionéiert; gëff déiselwecht Datei dem 3.x-Client an hie stoppt bei engem Passwuert-Prompt. Gëff --auth-user-pass creds.txt dem openvpn3 session-start an d'Resultat ass datselwecht, well den neie Client keng Etapp huet, déi d'Datei liest. D'Refusatioun ass bewosst: Zougangsdaten gehéieren zu enger Sitzung, an eng Sitzung gëtt vun engem Service erstallt an net vum Prozess an Ärem Terminal. Wielt tëscht dem interaktiven Prompt an dem autoload-Helfer a wësst, wat jiddereen späichert.
Firwat déi gespäichert Datei keng Plaz huet fir hinzegoen
Am neien Design sinn d'Konfiguratiounsverwaltung an d'Sitzungsverwaltung getrennt Servicer, déi iwwer de Systembus schwätzen. Dës Trennung ass et, déi engem normale Benotzer erlaabt eng Sitzung ze starten, ouni datt en privilegiéierten Daemon eng geschützt Passwuertdatei a sengem Numm liest. Dateibaséiert Zougangsdaten hunn an deem Modell keng Plaz, well et keen Start op der Daemon-Säit gëtt, dee se liese géif. D'Refusatioun ass eng Konsequenz vun der Architektur, keng fehlend Funktioun.
Et lount sech dat aalt Muster ze nennen, fir et méi einfach ze vergiessen: e Profil verweist op eng Zougangsdaten-Datei, an den Daemon liest se, wann den Tunnel start. Am neie Modell gehéieren d'Zougangsdaten zu enger Sitzung a ginn uginn, wann déi Sitzung ufänkt. openvpn3 session-start --config work.ovpn frot se an --auth-user-pass creds.txt gëtt verworf, well näischt op deem Wee d'Datei géif opmaachen. All 2.x-Rezept, dat Dir fannt, setzt eng Etapp viraus, déi et net méi gëtt.
Konfiguratioun a sitemlokal Astellunge sinn och getrennt, wat eng zweet Iwwerraschung erkläert. E Profil kann komplett ausgesinn, wärend der Verbindung, déi en produzéiert, Routing- a Resolver-Konfiguratioun feelt. Déi Deeler ginn als sitemlokal Astellunge applizéiert, getrennt vun der importéierter Datei.
De Prompt-Wee an d'Sitzung, déi en hannerléisst
D'Passwuert beim Start vun der Sitzung ze ginn ass de virgesinnene Workflow. Den Client frot eemol, gëtt d'Zougangsdaten un de Sitzungs-Backend a fiert weider:
openvpn3 session-start --config work.ovpn
openvpn3 sessions-list
Op deem Wee gëtt näischt op d'Disk geschriwwen. D'Sitzung leeft och weider, nodeems den Terminal zou ass, wat Leit iwwerrascht, déi erwaarden, datt de Prozess mat hirer Shell stierft. Dat ass de Punkt, fir d'Sitzungsbehandlung an e Service ze verleeën. D'Sitzung iwwerlieft den Terminal, deen se ugefrot huet, a muss explizit gestoppt ginn.
Fir eng Workstation mat engem Mënsch dervir ass dat och déi sécherst Optioun, well et kee gespäicherte Geheimnis gëtt, deen ze schützen oder ze vergiessen ass. Se ass nëmmen do ongëeegent, wou keen do ass fir ze tippen.
Automatiséierung ouni eng Persoun op der Tastatur
Wou eng Maschinn ouni Persoun muss verbannen, liwwert de Projet openvpn3-autoload. En liest en Verzeechnes vu Profiler an e passenden Deskriptor pro Profil, an den Deskriptor gëtt d'Zougangsdaten am Kloertext. Den Helfer ass eng separat Binär, meeschtens ënner /usr/sbin/openvpn3-autoload, keen Flag vum session-start. En anzestellen heescht d'Verzeechnes ze schafen, de Profil ënner dem Numm ze kopéieren, deen den Deskriptor erwaart, an den Deskriptor ze schreiwen.
Eng Astellung pro Benotzer gesäit esou aus, ausgefouert mam Kont, deen d'Sitzung besëtze wäert. De Verzeechnes-Modus hält aner lokal Benotzer dobaussen:
mkdir -m700 -p ~/.openvpn3/autoload
cp work.ovpn ~/.openvpn3/autoload/client.conf
$EDITOR ~/.openvpn3/autoload/client.autoload
Den Deskriptor nennt d'Zougangsdaten a frot en automatesche Start. Halt de Passwuertwäert aus der Versiounskontroll:
{
"autostart": true,
"user-auth": {
"autologin": true,
"username": "svc-vpn",
"password": "change-this-value"
}
}
Ruff dann den Helfer eemol op a bestäteg, datt d'Sitzung erschéngt. Déi zweet Kommando ass d'Kontroll, keen anere Setup-Schrëtt:
/usr/sbin/openvpn3-autoload --directory ~/.openvpn3/autoload
openvpn3 sessions-list
Beim Boot benotzt eng gepackte Eenheet mam Numm openvpn3-autoload.service dat systemwäit Verzeechnes /etc/openvpn3/autoload, net dat pro Benotzer. Déi Plaz brauch Root-Besëtz an e méi strenge Modus, an den Deskriptor hält d'Passwuert nach ëmmer am Kloertext. Den Handel ass explizit: d'Passwuert sëtzt elo op der Disk, also behandelt dat Verzeechnes als Geheimnis, schléisst et aus Off-Host-Backups aus, a wielt den interaktive Wee ëmmer, wann eng Persoun do ass.
Bus-Feeler, déi wéi Passwuert-Feeler ausgesinn
E puer Feeler, déi den Zougangsdaten zougeschriwwe ginn, sinn näischt vun där Aart. E Permissiounsfeeler, deen den Aktivéierungswee vum Service nennt, bedeit eng vun zwou Saachen: den Backend leeft net, oder den Uruffer huet keng Permissioun, en ze aktivéieren. Keng Profilännerung wäert een vun deenen zwou änneren. Préif de Service-Status an d'geliwwert Bus-Politik, ier Dir d'Konfiguratioun beréiert.
D'Kommandos ënnendrënner trennen déi zwou. Déi éischt mellt, ob den Backend leeft; déi zweet weist déi rezent Bus-Feeler:
systemctl status openvpn3-service-client
journalctl -b -u openvpn3-service-client --no-pager | tail -20
Déi aner heefeg falsch Liesung ass eng Sitzung, déi erschéngt an direkt verschwënnt. Dat Muster bedeit meeschtens, datt déi sitemlokal Astellungen ni applizéiert goufen, sou datt den Tunnel ouni d'Routen an d'Resolver-Ännerunge eropkomm ass, déi en nëtzlech maachen. Liest d'Sequenz an net déi lescht Linn: ob d'Sitzung erstallt gouf, ob se e verbonne Status erreecht huet an ob se iwwerlieft huet, sinn dräi getrennt Fakten.
Wann den eelere Client nach benotzt gëtt
Den 2.x-Client akzeptéiert nach eng Zougangsdaten-Datei, an e Schlësselrank kann op säi Prompt äntweren, ouni datt de Geheimnis je op d'Disk kënnt. E Wrapper léist den Entrée op, sou datt d'Datei d'Lookup nennt an net d'Passwuert. Dës Opstellung hänkt vun engem entspaarten Schlësselrank of, deen e Container ouni Login-Sitzung oder eng Eenheet, déi start, ier een sech aloggt, net kënne liwweren. D'Lookup-Tool mellt dann eng Sammlung, an déi et net schreiwe kann, sou datt de Feeler wéi e Zougangsdaten-Fehler ausgesäit, wann en e Schlësselrank-Fehler ass.
Ier Dir iergendeppes dovu baut, préift, ob eng keepalive-Astellung am Profil d'Notwendegkeet vun engem Neistart komplett ewechhëlt. Eng Sitzung, déi u bleift, erreecht ni de Prompt, deen Dir versicht ze automatiséieren.