Sinulla on WireGuard-profiili tiedostossa /etc/wireguard/wg0.conf ja haluat sen olevan ylhäällä kirjoittamatta wg-quick up käsin jokaisen uudelleenkäynnistyksen jälkeen. Paketin systemd-malli tekee juuri sen: [email protected] ajaa wg-quickia profiilille nimeltä wg0. Se asentaa myös osoitteet, reitit, DNS:n ja kaikki profiilin ilmoittamat koukut, mikä on enemmän kuin pelkän avaimen lataaminen ytimeen. Tarkista, että malli on järjestelmässäsi, ennen kuin oletat sen olevan.

Loput tästä läpikäynnistä noudattaa sitä järjestystä, jossa todella tekisit sen.

Etsi unit ja profiili, jota se lukee

Listaa unit-tiedostot komennolla systemctl list-unit-files 'wg-quick*'. Jakeluissa, jotka paketoivat sen, näet [email protected], ja instanssin nimi otetaan profiilista. Instanssi ratkeaa osoitteeseen /etc/wireguard/<name>.conf, joten wg-quick@wg0 lukee vain wg0.conf eikä mitään muuta. Jos lista on tyhjä, työkalupakettia ei ole asennettu eikä mikään määrä käyttöönottoa auta.

Pidä profiili tilassa 600 ja rootin omistuksessa. Se sisältää yksityisen avaimen, ja unit toimii mielellään huonommilla oikeuksilla, jos annat sen.

Nosta se ylös ja lue journalia

Käynnistä instanssi komennolla systemctl start wg-quick@wg0, tarkista sitten systemctl status wg-quick@wg0 ja journalctl -u wg-quick@wg0 -b. Unit, joka käynnistyy ja poistuu heti, sisältää yleensä profiilivirheen, ja journal nimeää rivin. Varmista komennolla wg show, että rajapinta on olemassa ja että viimeisin kättely on tuore. wg-quickin käsikirja luettelee, mitä skripti tekee rajapinnan lisäksi.

Määritetty rajapinta ilman kättelyä on polku- tai avainongelma, ei palveluongelma.

Pidä yksi hallinta vastuussa

Jos NetworkManager tai jokin muu asiakas omistaa tunnelin jo, systemd-unitin käynnistäminen luo toisen omistajan samalle rajapinnalle, reiteille ja DNS:lle. Oireet ovat hämmentäviä: tunneli nousee, sitten reitit katoavat tai DNS palaa takaisin muutaman sekunnin kuluttua. Valitse yksi hallinta ja poista toinen käytöstä kyseiselle profiilille. Journal näyttää haltuunoton yleensä reitti- tai ratkaisumuutoksina heti, kun unit ilmoittaa onnistumisesta.

Kaksi hallintaa ei jaa omistajuutta. Ne kirjoittavat toistensa yli.

Testaa pysäytys, uudelleenkäynnistys ja käynnistys

Aja systemctl stop wg-quick@wg0 ja varmista, että rajapinta on poissa ja reitit poistettu. Käynnistä se sitten uudelleen ja tarkista, että reitit palaavat, koska purun virheet näkyvät jäljelle jääneinä reitteinä eivätkä epäonnistuneina käynnistyksinä. Lopuksi ota se käyttöön käynnistyksessä komennolla systemctl enable --now wg-quick@wg0 ja käynnistä kerran uudelleen.

Käynnistyksessä päätepisteen nimi on ratkaistava ennen kuin unit toimii. Jos DNS ei ole vielä ylhäällä, unit epäonnistuu ja pysyy epäonnistuneena, kunnes käynnistät sen käsin.

Kirjaa omistaja

Kirjoita muistiin, mitä profiilia unit lukee, mikä hallinta omistaa rajapinnan ja mistä tiedosto tuli. Kun joku myöhemmin tuo saman tunnelin työpöytäasiakkaaseen, tuo muistiinpano on ero migraation ja yhdestä osoitteesta kinaavan kahden käyttöönoton välillä. Kirjaa myös rajapinnan nimi, koska kaksi samannimistä profiilia on tavallinen sekaannuksen lähde.

Tunneli, jolla on kaksi omistajaa, toimii ensimmäiseen uudelleenkäynnistykseen asti, ja sitten se on mysteeri. Siksi muistiinpano kuuluu tietovarastoon eikä chat-ketjuun.

Aiheeseen liittyvät artikkelit