Kortti käynnistyy yhteisestä levykuvasta, saa DHCP-vuokran ja valmisteluskripti ajetaan ennen kuin kukaan on koskenut laitteeseen. Jossakin tuossa skriptissä sen on hankittava WireGuard-identiteetti, joka kuuluu tälle kortille eikä millekään muulle, saatava identiteetti valtuutetuksi ja kirjoitettava profiili, jonka yhdyskäytävä hyväksyy. Levykuva voi sisältää asiakasohjelmiston, tarkistetun mallin ja yhdyskäytävän julkisen avaimen. Mitä se ei koskaan saa sisältää, on yksi yksityinen avain, jonka koko laivue jakaa, koska se tekee yhdestä varastetusta kortista koko laivuetta koskevan tapauksen. Alla oleva järjestys pitää identiteetin paikallisena ja valtuutuksen eksplisiittisenä.

Mitä levykuva sisältää ja mitä ei

Toimita paketti, paikkamerkkejä sisältävä malli, yhdyskäytävän julkinen avain ja rekisteröintiasiakasohjelma. Malli on muoto, ei salaisuus: sen pitäisi olla valmistelukäyttäjän luettavissa eikä sisältää avainmateriaalia.

Yksityinen avain luodaan laitteessa ensimmäisellä käynnistyksellä eikä se koskaan poistu sieltä. Vain julkinen puolisko matkustaa, rekisteröintipyynnön sisällä, jonka valtuuttaa jokin muu kuin laitteen oma väite siitä, kuka se on. Juuri tämä ero estää varastettua korttia muuttumasta koko laivueen ongelmaksi. Ja se on myös se osa, jonka useimmat ensimmäisen käynnistyksen skriptit tekevät väärin.

Vaihe 1: luo avain paikallisesti

Suorita luonti suojatussa hakemistossa sen jälkeen, kun alla oleva verkkoyhteys on hyväksytty ja toimii. Alikuori pitää umask-muutoksen paikallisena tälle toiminnolle, ja set -C kieltäytyy korvaamasta olemassa olevaa tiedostoa:

(
    umask 077
    set -C
    wg genkey > /etc/wireguard/device.key &&
        wg pubkey < /etc/wireguard/device.key > /etc/wireguard/device.pub
)

WireGuardin pika-aloitus dokumentoi avainten luontisuhteen, johon nämä kaksi komentoa nojaavat. Jos luonti keskeytyy, jätä laite rekisteröimättä ja anna työnkulun sovittaa tiedostot. Älä poista olemassa olevaa identiteettiä vain siksi, että skripti kulkisi siististi alusta.

Säilytä odottava avain uusien yritysten yli. Identiteetin luominen uudelleen jokaisen tilapäisen verkkohäiriön jälkeen on se tapa, jolla laivueelle jää orpoja peer-yhteyksiä, joita kukaan ei voi yhdistää laitteeseen.

Vaihe 2: valtuuta laitetietue

Oletetaan, että inventaario kutsuu tätä korttia nimellä device-042 ja antaa sille 10.90.0.42/32. Rekisteröintipalvelun on varmistettava, että tällä pyytäjällä on oikeus kyseiseen tietueeseen. Lomakkeeseen kirjoitettu sarjanumero ei ole todiste, koska sarjanumerot on painettu laatikon ulkopuolelle.

Laittekohtainen käynnistystunnus, operaattorin hyväksyntä tai laitteistopohjainen attestointi voi vahvistaa väitteen. Suojaa pyynnön eheys ja vastauksen aitous, äläkä korvaa yhtä jaettua VPN-salaisuutta yhdellä jaetulla tehdastunnuksella.

Rekisteröity tietue sitoo laitteen, sen julkisen avaimen, sille annetun osoitteen ja sallitun hallintaroolin. WireGuard itse ei määrittele rekisteröintirajapintaa, joten tuo palvelu on jotakin, jonka rakennat ja jota käytät tarkoituksella.

Vaihe 3: kirjoita kaksi yhteensopivaa kokoonpanoa

Laite tarvitsee profiilin, joka reitittää hallintaprefiksit tunneliin, ja yhdyskäytävä tarvitsee peer-merkinnän, joka sallii vain tämän laitteen oman lähdeosoitteen. Kun yhdyskäytävä on 10.90.0.1 ja hallintaverkko 10.60.0.0/16, laitteen puoli näyttää tältä:

[Interface]
PrivateKey = <device-042 private key>
Address = 10.90.0.42/32

[Peer]
PublicKey = <trusted gateway public key>
Endpoint = vpn.example.com:51820
AllowedIPs = 10.90.0.1/32, 10.60.0.0/16
PersistentKeepalive = 25

Hakasulkeissa olevat arvot ovat paikkamerkkejä, eivät avaimia. Keepalive on tärkeä, kun kortti on NAT:n takana ja sen on pysyttävä tavoitettavana; sitä ei tarvita kaikkialla, ja tottumuksesta lisääminen pitää radion hereillä ilman syytä.

Yhdyskäytävässä peer-merkintä on tarkoituksella kapea:

[Peer]
PublicKey = <device-042 public key>
AllowedIPs = 10.90.0.42/32

Älä kopioi laitteen kohdeluetteloa yhdyskäytävän peer-merkintään. Laitteessa luettelo kertoo, mitä tunneliin reititetään; yhdyskäytävässä se kertoo, mitä lähdeosoitteita tämä peer saa käyttää, ja ne ovat eri väitteitä.

Edelleenlähetys, palomuurisäännöt ja paluupolku hallintaverkkoon on yhä sallittava hyväksytty käyttö. Rekisteröity peer ei ole lupa jokaiseen sen takana olevaan sovellukseen.

Vaihe 4: vahvista rekisteröinti elinkaaren tilaksi

Käytä yhdyskäytävän tietue ja laiteprofiili sen kautta, joka omistaa kunkin kokoonpanon, ja merkitse rekisteröinti valmiiksi vasta kun aiottu identiteetti ja osoite hyväksytään. Uusien yritysten pitäisi sovittaa sama tietue sen sijaan, että ne jakaisivat toisen peerin tai toisen osoitteen.

Pidä palautumispolku keskeytyneelle valmistelulle, mukaan lukien tapaus, jossa yhdyskäytävä hyväksyi avaimen eikä laite koskaan kirjoittanut profiiliaan.

Kun kortti vaihdetaan tai poistetaan käytöstä, poista sen julkinen avain ja sen valtuutus yhdessä. Uusi avain on tarkoituksellinen uudelleenrekisteröinti, ei levykuvan uudelleenluonnin sivuvaikutus. Työjärjestys: luo paikallisesti, valtuuta inventaariota vasten, kirjoita molemmat puolet, vahvista tila ja testaa sitten yksi hallintapyyntö tunnelin kautta.

Aiheeseen liittyvät artikkelit