Дзве каманды ствараюць пару ключоў WireGuard, і абедзве пастаўляюцца са стандартнымі сродкамі, таму для гэтай задачы не патрэбны сайт, які прапануе зрабіць ключ за вас. Збой ніколі не ў арыфметыцы крывой; ён у бітах правоў, у месцы, куды трапляе файл, і ў тым, што потым адпраўляецца на далёкі бок. Паслядоўнасць ніжэй пачынаецца ў пустой дырэкторыі і сканчаецца на партнёры, які нясе трафік. Прачытайце яе адзін раз перад запускам, бо першы радок мае значэнне толькі тады, калі наступны выконваецца ў той жа абалонцы.

Стварэнне пары ў адной абалонцы

Задакументаваны працэс абмяжоўвае стварэнне файлаў да таго, як прыватнае значэнне існуе, а затым выводзіць публічнае значэнне з яго. Усе тры радкі належаць разам у адну сесію абалонкі:

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 запісвае 32-байтавы прыватны ключ Curve25519 у base64; wg pubkey чытае яго і выводзіць адпаведны публічны ключ, а tee захоўвае прыватнае значэнне, перадаючы яго далей праз канвеер. Менавіта таму радок правоў ідзе першым і таму ўстаўка канвеера ў другі тэрмінал ціха яго губляе. Імёны файлаў умоўныя, і важна тое, што абодва файлы трапляюць туды, дзе іх кантралюе прылада-уладальнік. Калі прыватны файл ужо існуе з прадвызначанымі правамі, chmod 600 privatekey выпраўляе бягучы файл і нічога не робіць з раней зробленымі копіямі.

Трымайце прыватную палову на адной прыладзе

Прыватнае значэнне належыць машыне, якая будзе валодаць ідэнтычнасцю, у дырэкторыі, якую гэтая машына абараняе і якую яе рэзервовыя копіі трактуюць як уліковыя даныя. Яно не належыць у агульную папку, у паведамленне сабе або ва ўрывак, далучаны да звароту ў падтрымку, а ўбудаваная копія робіць файл канфігурацыі гэтак жа адчувальным, як і ключ. Ключ, які пабываў у трох месцах, потым немагчыма асэнсаваць, і гэта практычная прычына трымаць яго ў адным.

Наўмыснае знішчэнне спісанага файла — частка той жа звычкі. Пакіданне яго ў папцы загрузак, пакуль хтосьці не заўважыць, — не.

Што аператару партнёра патрэбна ад вас

Іншаму боку патрэбна публічнае значэнне і схема адрасоў, якую абраў яго аператар, і нічога больш. Адпраўце гэты публічны радок праз канал, якога чакае аператар, затым пацвердзіце, да якога запісу партнёра яго далучылі, перш чым хтосьці яго праверыць, бо правільны ключ у няправільным раздзеле адмаўляе так, што выглядае як праблема з ключом. Адпраўляйце яго адным неразбітым радком, бо ключ, разбіты на два радкі, без скаргаў устаўляецца ў файл канфігурацыі і потым ніколі не супадае.

Стварэнне ключа само па сабе нічога не дазваляе. Партнёр павінен быць наладжаны прымаць яго, і крок наладкі належыць таму, хто кіруе гэтым бокам.

Праверка пары рэальным абменам

Пара ключоў ідэнтыфікуе адзін канец тунеля; яна не стварае маршруту, запісу рэзалвера, правіла перасылання і дазволу файрвола. Пасля падрыхтоўкі партнёра правярайце абмен, а не файл: рукапоціск, які з'яўляецца ў wg show, адрас, які адказвае ўнутры тунеля, і адзін запыт праграмы, які залежыць ад маршруту. Гэтая тройка аддзяляе няправільны ключ ад правільнага ключа і адсутнага шляху.

Трымайце адну ідэнтычнасць на прыладу, калі разгортванне гэта дазваляе, каб страчаную адзінку можна было адклікаць асобна, а не прымушаць усіх пераствараць ключы. Гэтае рашэнне таксама робіць працэдуру замены ніжэй бяспечнай для запуску.

Замена ключа без прамежку

Стварыце замену на прыладзе, дадайце новы публічны ключ як дадатковага партнёра, пацвердзіце, што ён нясе трафік, і толькі тады выдаліце стары. Выкананне ў такім парадку азначае, што тунель ніколі не мае моманту без сапраўднай ідэнтычнасці, а адкат — гэта проста выдаленне запісу, які вы толькі што дадалі.

Трымайце заменены прыватны файл, пакуль новы партнёр не пацверджаны, затым знішчыце яго наўмысна. Хуткі старт WireGuard — гэта даведнік па саміх камандах, і ён дастаткова кароткі, каб прачытаць яго цалкам перад пачаткам.

Падобныя артыкулы