Generér et WireGuard-nøglepar lokalt: kommandoer og omhu
To kommandoer genererer parret; arbejdet ligger i umask, filens placering og i at vide, at kun den offentlige halvdel går til modparten. En lokal gennemgang.
To kommandoer genererer et WireGuard-nøglepar, og begge følger med standardværktøjerne, så denne opgave har ikke brug for et websted, der tilbyder at lave en nøgle for dig. Det, der går galt, er aldrig kurvearitmetikken; det er tilladelsesbittene, stedet filen lander, og hvad der bagefter sendes til den anden ende. Sekvensen nedenfor begynder i en tom mappe og ender ved en modpart, der bærer trafik. Læs den én gang, før du kører den, fordi den første linje kun betyder noget, hvis den næste kører i samme shell.
Generering af parret i én shell
Den dokumenterede arbejdsgang begrænser filoprettelse, før den private værdi findes, og udleder derefter den offentlige værdi af den. Alle tre linjer hører sammen i én shell-session:
umask 077 # applies to files created next, so keep the next line in this shell
wg genkey | tee privatekey | wg pubkey > publickey
wg pubkey < privatekey # re-derive and compare with publickey
wg genkey skriver en 32-byte Curve25519 privat nøgle i base64; wg pubkey læser den og udleder den matchende offentlige nøgle, og tee gemmer den private værdi, mens den sender den videre gennem røret. Den rækkefølge er grunden til, at tilladelseslinjen kommer først, og til at indsættelse af rørledningen i en anden terminal stille mister den. Filnavnene er illustrative, og det afgørende er, at begge filer lander et sted, som den ejende enhed kontrollerer. Hvis en privat fil allerede findes med standardtilladelser, retter chmod 600 privatekey den aktuelle fil og gør intet ved kopier, der blev lavet tidligere.
Hold den private halvdel på én enhed
Den private værdi hører på maskinen, der skal eje identiteten, i en mappe som maskinen beskytter, og som dens sikkerhedskopier behandler som en legitimationsoplysning. Den hører ikke i en delt mappe, i en besked til dig selv eller i et uddrag vedhæftet en supportanmodning, og en indlejret kopi gør konfigurationsfilen præcis lige så følsom som nøglen. En nøgle, der har boet tre steder, kan ikke gennemskues senere, og det er den praktiske grund til at holde den på ét.
At ødelægge en pensioneret fil med vilje er en del af samme vane. At lade den ligge i en downloadmappe, indtil nogen opdager det, er ikke.
Hvad modpartens operatør har brug for fra dig
Den anden side har brug for den offentlige værdi og den adresseindretning, som dens operatør har valgt, og intet andet. Send den offentlige streng gennem den kanal, operatøren forventer, og bekræft derefter, hvilken modpartspost den blev knyttet til, før nogen tester den, fordi en korrekt nøgle i det forkerte afsnit fejler på en måde, der ligner et nøgleproblem. Send den som én ubrudt linje, fordi en nøgle brudt over to linjer indsættes i en konfigurationsfil uden klage og derefter aldrig matcher.
At generere en nøgle autoriserer intet i sig selv. Modparten skal konfigureres til at acceptere den, og konfigurationstrinnet tilhører den, der styrer den ende.
Test parret med en rigtig udveksling
Et nøglepar identificerer den ene ende af en tunnel; det opretter ingen rute, ingen resolver-post, ingen videresendelsesregel og ingen firewall-tilladelse. Når modparten er klargjort, test udvekslingen frem for filen: et håndtryk, der vises i wg show, en adresse, der svarer inde i tunnelen, og en enkelt applikationsanmodning, der afhænger af ruten. Den trio adskiller en nøgle, der er forkert, fra en nøgle, der er fin, og en sti, der mangler.
Hold én identitet per enhed, når udrulningen tillader det, så en tabt enhed kan tilbagekaldes alene i stedet for at tvinge alle til at generere nøgler igen. Den beslutning er også det, der gør udskiftningsproceduren nedenfor sikker at køre.
Udskiftning af en nøgle uden hul
Generér erstatningen på enheden, føj den nye offentlige nøgle til som en ekstra modpart, bekræft, at den bærer trafik, og fjern først derefter den gamle. At gøre det i den rækkefølge betyder, at tunnelen aldrig har et øjeblik uden gyldig identitet, og tilbagerulningen er simpelthen at slette den post, du netop har tilføjet.
Behold den erstattede private fil, indtil den nye modpart er bekræftet, og ødelæg den derefter med vilje. WireGuard-hurtigstarten er referencen for selve kommandoerne, og den er kort nok til at læse i sin helhed, før du begynder.