OpenVPN Ubuntu käivitamisel: NetworkManager või systemd?
Sülearvuti ja ekraanita server vajavad erinevaid käivitusradasid. Võrrelge NetworkManageri teisest ühendust openvpn-client@ ja selle mandaadifailiga.
Enamik juhendeid esitab valiku kosmeetilisena: kas lasete NetworkManageril tunnel üles tõsta või lubate systemd-i eksemplari ja ongi kõik. Kaks rada erinevad ühes asjas, mis otsustab tulemuse ekraanita masinas, ja sellel pole midagi pistmist sellega, milline tööriist on uuem. NetworkManager avab saladusi sessiooni kaudu; systemd-i eksemplaril pole sessiooni, mida avada. Valige see, mille saladuste käsitlemine sobib teie ees oleva masinaga.
Kõik muu, marsruutide paigaldamisest kuni uuesti ühendamise käitumiseni, tuleneb sellest esimesest otsusest.
Võtmerõngas on erinevus, mida keegi ei maini
Kui NetworkManageril on VPN-profiil, võib parool elada sisselogimise võtmerõngas, mis avatakse, kui kasutaja sisse logib. Sülearvutis töötab see hästi: inimene on kohal, võtmerõngas avaneb, tunnel tõuseb. Serveris, mis käivitub järelevalveta, pole kedagi, kes midagi avaks, seega ootab profiil saladust, mida kunagi ei tule. Ühendus näib seadistatud ja ei aktiveeru kunagi.
systemd-i eksemplar väldib seda probleemi, lugedes kettalt mandaadifaili, mis teeb failist selle, mida te kaitsete. chmod 400 pluss rooti omand on miinimum, ja fail peaks jääma väljapoole varukoopiaid ja pildimalle, mida te ei kontrolli.
VPN-i kinnitamine ühenduse külge ei taga käivitust
Valige jaotises nm-connection-editor VPN-i asemel juhtmega või juhtmeta ühendus, avage vahekaart General, märkige automaatse VPN-iga ühendamise valik ja nimetage profiil. Seejärel aktiveerib NetworkManager VPN-i teisese ühendusena, kui esmane jõuab ühendatud olekusse. See on sõltuvus, mitte tulemüürireegel. Paketid võivad siiski välja minna sekundite jooksul enne tunneli tõusmist, ja salvestatud saladus, mida ei õnnestu avada, jätab masina ilma selleta võrku.
Kui nõue on, et midagi ei läheks välja ilma tunnelita, öelge seda ja ehitage turvalüliti, sest see säte seda ei anna. Testige ka peatamist ja jätkamist, kuna teisest ühendust hinnatakse tagasiteel uuesti.
systemd-i eksemplar vajab sobivat failinime
Pange profiil kliendikataloogi, mida pakett ootab, näiteks /etc/openvpn/client/office.conf, ja viidake sealt sees mandaadifailile käsuga auth-user-pass office.cred. Eksemplari nimi on faili nimi ilma laiendita, seega openvpn-client@office loeb faili office.conf. Lubage see käsuga sudo systemctl enable --now openvpn-client@office ja kinnitage vastavus käsuga systemctl cat openvpn-client@office, selle asemel et usaldada blogi näidet.
Profiili sees olevad teed lahendatakse üksuse töökataloogi, mitte profiili enda suhtes, seega suhteline rida ca või auth-user-pass võib käivitamisel ebaõnnestuda, kuigi käsitsi testides töötab. Kasutage absoluutseid teid kõige jaoks, mida üksus peab leidma. Seejärel lugege pärast tõelist käivitust välja journalctl -u openvpn-client@office -b; üksus, mis teatab aktiivsusest ilma tunnelita, nimetab selles logis tavaliselt puuduva faili.
Vanemad paketid toovad teistsuguse mallinime, seega systemctl list-unit-files 'openvpn*' otsustab, milline neist selles hostis olemas on.
Uuesti ühendamise käitumine on eraldi otsus
Profiil, millel on ping-restart, ehitab tunneli pärast kukkumist uuesti üles, ja taaskäivitusdirektiiviga üksus teeb teenuse tasandil midagi sarnast. Need on poliitikad, mille te valite, mitte vaikeväärtused, mille te pärite. Kui ühendus peaks tõusma ainult nõudmisel, eemaldage taaskäivituse käitumine teadlikult ja kirjutage üles, miks. Kui üksus käivitub enne, kui võrk on kasutatav, vajab see korduskatse poliitikat, sest üks ebaõnnestunud katse käivitamisel ei kordu iseenesest.
Peatamine on sama sõnasõnaline: sudo systemctl disable --now openvpn-client@office peatab töötava eksemplari ja eemaldab käivituslingi. Ainult keelamine jätab tunneli tööle kuni järgmise taaskäivituseni, mis üllatab igaüht, kes testib keelamise teel ja näeb, et liides jääb üles.
Taaskäivitage ja seejärel kontrollige nelja asja järjekorras
Teenuse taaskäivitamine testib teenust; masina taaskäivitamine testib käivitusrada. Pärast taaskäivitust kinnitage, et üksus tõusis, seejärel et kaugvõrgu alamsõle jaoks on marsruut olemas, seejärel millist aadressi masin internetile esitab, ja lõpuks et nimed lahenevad tunneli kaudu. Need neli kontrolli ebaõnnestuvad selles järjekorras, kui midagi on valesti, mis teeb esimese ebaõnnestumise kasulikuks.
Aktiivne üksus ilma marsruudita tähendab tavaliselt, et profiil ühendus, kuid server ei saatnud ühtegi marsruuti, või et marsruut paigaldati liidesele, mis hiljem kadus. Marsruut, millel puudub toimiv nimeotsing, osutab pigem DNS-i seadistusele kui tunnelile endale.
Otsustage eelnevalt, mis peaks juhtuma, kui tunnel ei saa tõusta. Tavapärasele ühenduvusele tagasi langemine on poliitika ja see tuleks kirja panna, selle asemel et jätta see haldurile, mis käivitus esimesena.