Irudi beretik datozen bi Ubuntu makina, VPN profil bat, aurkako emaitzak saioa hastean: batean tunela altxatuta dago mahaigaina agertu aurretik, eta bestean ez da inoiz altxatzen. Profila ez da hemen aldagaia. Desberdintasuna hiru osagaietariko zeini esan zitzaion hura abiarazteko da, eta hirurok ez dute etengailu bera partekatzen.

Haiek alboz albo konparatzea asmatzea baino azkarragoa da. Bakoitza modu ezagugarrian huts egiten du, eta horrek egiten du konparazioa merezi.

Hiru abiarazle, hiru eragile desberdinekin

Paketatutako openvpn zerbitzua da biderik zaharrena. Bere init scriptak autostart zerrenda bat irakurtzen du hemendik: /etc/default/openvpn. Zerrenda hori iruzkinduta edo hutsik badago, scriptak direktorio horretan aurkitzen duen konfigurazio bakoitza abiarazten du, zuk gehitu zenuen bakarraren ordez. Tunel baterako gehitutako fitxategi batek isilpean hainbat altxa ditzake.

StarterWhat triggers itTypical failure
Init script and templated unitsBoot, plus anything in the autostart listStarts every config, not the one you meant
NetworkManager secondaryActivation of the base Wi-Fi or Ethernet profileNothing happens until that base link comes up
Hand-written unit or wrapperWhatever its WantedBy and ExecStart sayRuns a different binary or environment than your shell

Bigarren errenkada da jendeak gaizki konfiguratzen duena. NetworkManager-ek inportatutako profila dauka eta abiaraziko du, baina beste konexio baten bigarren mailako gisa soilik, hau da, eragilea sare-loturari dagokio, ez VPNari.

Konparatu ezarpen-kostua eta irismena

Init scriptaren bideak lerro bat kostatzen du eta makinako konfigurazio guztiak estaltzen ditu. Hori egokia da router baterako eta okerra sare desberdinetara konektatzen den eramangarri baterako. NetworkManager-en bideak UUID bilaketa bat kostatzen du eta tunela oinarrizko konexio bati lotzen dio. Laneko SSIDan altxatzen da eta hotel-sare batean behera geratzen da.

Eskuz idatzitako unit batek gehien kostatzen du eta kontrol handiena erosten du, beste zerbitzuekiko ordena barne. Irismena da faktore erabakigarria. Makinak sare bat eta tunel bat baditu, paketatutako zerbitzua zintzoa eta aurreikusteko modukoa da. Tunelak Wi-Fi sare jakin bat jarraitu behar badu, bigarren mailakoa da hiruretatik bakarra baldintza hori script gehigarririk gabe adierazten duena.

Aukeratu jabe bat eta kendu besteak

Bi jabek abiarazitako profilak abioen artean aldatzen den denboratzea sortzen du, eta hori mekanismo bakoitzak bere aldetik baino okerragoa da. Aukeratu jabea eta, ondoren, desgaitu bide lehiakidea nahita, ustekabean beharrean.

# who is configured to start something?
grep -v '^#' /etc/default/openvpn
systemctl list-units 'openvpn*'
nmcli -g connection.secondaries connection show 'Work Wi-Fi'

# NetworkManager: attach the tunnel to the base link by UUID
TUNNEL=$(nmcli -g UUID connection show 'Corp Tunnel')
nmcli connection modify 'Work Wi-Fi' +connection.secondaries "$TUNNEL"

Erretiratzen dena paketatutako bidea bada, egin ordena egokian: jarri AUTOSTART none balioan, exekutatu systemctl daemon-reload sortutako unitek zerrenda berria har dezaten, eta gero desgaitu jada nahi ez duzun txantiloi-instantzia. Birkarga saltatzeak unit zaharrak aktibo uzten ditu, eta badirudi aldaketak ez duela inolako eraginik izan.

Zintzilik geratzen den gelditzeak erantzun mugatua duen arazo aparta da. TimeoutStopSec muga da zenbat itxaroten duen systemd-ek SIGKILL bidali aurretik. Drop-in fitxategia da hori ezartzeko leku egokia, paketatutako unita editatzeak hurrengo eguneratzean aldatzea galtzen baita.

Egiaztatu zer abiarazi den benetan

Berrabiarazi eta irakurri frogak konfigurazio-fitxategian fidatu beharrean. Tunelaren jabea den unitak egoera aktiboa eta abioarekin bat datorren hasiera-marka erakutsiko ditu, eta VPN interfazea existituko da saioa hasi aurretik.

systemctl is-enabled openvpn-client@office
systemctl status openvpn-client@office --no-pager
nmcli -f GENERAL.STATE,connection.secondaries connection show 'Work Wi-Fi'
ip -brief link show tun0

Hona hemen beste egiaztapen bat: baieztatu unitaren ExecStart zuk uste duzun binariora seinalatzen duela. Tokian konpilatutako bezeroak edo snap paketeak bide esplizitua edo snap run bilgarria behar izaten du maiz, systemd-ek ez baitu zure shellaren bilaketa-ordena heredatzen. command -v openvpn unit fitxategiarekin alderatzeak segundo batzuetan konpontzen du.

Idatzi aukeratutako jabea makinaren oharretan, profilaren izenaren ondoan. Falta den tunela araztuko duen hurrengo pertsonak lerro horretatik hasiko da, konparazioa errepikatu beharrean.

Erlazionatutako artikuluak