Aeg-ajalt tekib ülesanne leida seotud andmeid võtmete komplekti põhjal, kuni saavutame vajaliku koguse kirjeid. Kõige „elusam” näide on tuua välja 20 vanimat ülesannet, mis on töötajate nimekirjas (näiteks ühe osakonna raames). Sarnane teema on sageli vajalik erinevates juhtimisdashlodes lühivate väljavõtetega töövaldkondade kohta. Artiklis vaatleme rakendust PostgreSQL-s

Täna tõi Linus endale net-next haru VPN-liideste toetusega WireGuard. Selle sündmuse kohta teatasid WireGuardi postituste nimekirjas.

Aeg-ajalt tekib ülesanne leida seotud andmeid võtmete komplekti põhjal, kuni saavutame vajaliku koguse kirjeid. Kõige „elusam” näide on tuua välja 20 vanimat ülesannet, mis on töötajate nimekirjas (näiteks ühe osakonna raames). Sarnane teema on sageli vajalik erinevates juhtimisdashlodes lühivate väljavõtetega töövaldkondade kohta. Artiklis vaatleme rakendust PostgreSQL-s

Praegu käib koodi kogumine uue Linux 5.6 tuuma jaoks. WireGuard on uus põlvkond VPN, mis rakendab kaasaegset krüptograafiat. Alguses töötati selle välja lihtsama ja mugavama alternatiivina olemasolevatele VPN-idele. Autoriks on Kanadas elav infoturbespetsialist Jason Donenfeld. 2018. aasta augustis sai WireGuard kiitust Linus Torvaldsi poolt. Umbes sel ajal algas töö VPN-i kaasamiseks Linuxi tuuma. Protsess venis veidi.

"Näen, et Jason tegi WireGuard'i tuuma kaasamiseks pull-avalduse, - kirjutas Linus 2. augustil 2018. - Kas ma võin lihtsalt korrata oma armastust selle VPN-i vastu ja loota kiirele ühinemisele? Võib-olla ei ole kood ideaalne, kuid ma vaatasin seda ja võrreldes OpenVPN-i ja IPSec'i õudustega on see tõeliselt kunstiteos."

Hoolimata Linuse soovist viibis ühinemine poolteist aastat. Peamine probleem oli seotud krüptograafiliste funktsioonide spetsiifiliste rakendustega, mida kasutati jõudluse parandamiseks. Pärast pikaajalisi läbirääkimisi septembris 2019 tehti kompromisslahendus patchide viimiseks tuuma olemasolevatesse Crypto API funktsioonidesse, millele WireGuardi arendajatel on esitatud etteheiteid jõudluse ja üldise turvalisuse osas. Kuid otsustati, et WireGuardi natiivsed krüptofunktsioonid eralditakse madalamale tasemele Zinc API-sse ja neid kantakse aja jooksul tuuma. Novembris pidasid tuuma arendajad oma lubadust ja leppisid kokku osa koodist Zincist põhituuma viimesse. Näiteks Crypto API on lisatud WireGuardis ette valmistatud kiireid ChaCha20 ja Poly1305 algoritmide rakendusi.

Lõpuks, 9. detsembril 2019, David Miller, kes vastutab Linuxi tuuma võrgu alamsüsteemi eest, heitis net-next haru alla patchid WireGuardi projekti VPN-liidese rakendusega.

Ja täna, 29. jaanuaril 2020, saadeti muudatused Linusele tuuma kaasamiseks.

Aeg-ajalt tekib ülesanne leida seotud andmeid võtmete komplekti põhjal, kuni saavutame vajaliku koguse kirjeid. Kõige „elusam” näide on tuua välja 20 vanimat ülesannet, mis on töötajate nimekirjas (näiteks ühe osakonna raames). Sarnane teema on sageli vajalik erinevates juhtimisdashlodes lühivate väljavõtetega töövaldkondade kohta. Artiklis vaatleme rakendust PostgreSQL-s

WireGuardi välja reklaamitavad eelised võrreldes teiste VPN lahendustega:

  • Lihtne kasutada.
  • Kasutab kaasaegset krüptograafiat: Noise protokolliraamistik, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF jne.
  • Kompaktne ja loetav kood, lihtsam haavatavuste uurimiseks.
  • Kõrge jõudlus.
  • Selge ja läbimõeldud spetsifikatsioon.

Kogu WireGuardi põhiloogika mahub vähem kui 4000 koodirea, samas kui OpenVPN ja IPSec sisaldavad sadu tuhandeid ridu.

WireGuard kasutab krüpteerimisvõtmete marsruutimise kontseptsiooni, mis tähendab, et igale võrguintervjaalile on seotud privaatvõti, mis kasutatakse avalike võtmete sidumiseks. Avalike võtmete vahetus ühenduse loomiseks toimub SSH põhimõtte järgi. Võtmete kooskõlastamiseks ja ühenduse loomiseks ilma eraldi kasutaja taseme deemonit käivitamata kasutatakse Noise_IK mehhanismi Noise Protokolliraamistik, mis sarnaneb authorized_keys hooldamisega SSH-s. Andmete edastamine toimub UDP-pakettidesse kapseldamise teel. Toetatakse VPN-serveri IP-aadressi muutmist (rändlus) ilma ühenduse katkestamiseta automaatse kliendi seadistamisega, — writes Opennet.

Krüpteerimiseks kasutatakse voogkrüptimist ChaCha20 ja sõnumite autentimise algoritmi (MAC) Poly1305, mille töötas välja Daniel Bernstein (Daniel J. Bernstein), Tanja Lange ja Peter Schwabe. ChaCha20 ja Poly1305 on esitatud kui kiiremad ja turvalisemad alternatiivid AES-256-CTR ja HMAC-le, mille tarkvaraline teostus lubab saavutada fikseeritud käivitusaega ilma erilise riistvaratoe kaasamiseta. Koostöösalajase võtme genereerimiseks kasutatakse elliptsete kõverate põhist Diffie-Hellmani protokolli teostust Curve25519, mille samuti esitas Daniel Bernstein. Hashimiseks kasutatakse algoritmi BLAKE2s (RFC7693)».

Tulemused sooritusvõime testid ametlikult kodulehelt:

Läbilaskevõime (megabit/s)
Aeg-ajalt tekib ülesanne leida seotud andmeid võtmete komplekti põhjal, kuni saavutame vajaliku koguse kirjeid. Kõige „elusam” näide on tuua välja 20 vanimat ülesannet, mis on töötajate nimekirjas (näiteks ühe osakonna raames). Sarnane teema on sageli vajalik erinevates juhtimisdashlodes lühivate väljavõtetega töövaldkondade kohta. Artiklis vaatleme rakendust PostgreSQL-s

Pinging (ms)
Aeg-ajalt tekib ülesanne leida seotud andmeid võtmete komplekti põhjal, kuni saavutame vajaliku koguse kirjeid. Kõige „elusam” näide on tuua välja 20 vanimat ülesannet, mis on töötajate nimekirjas (näiteks ühe osakonna raames). Sarnane teema on sageli vajalik erinevates juhtimisdashlodes lühivate väljavõtetega töövaldkondade kohta. Artiklis vaatleme rakendust PostgreSQL-s

Testimis konfiguratsioon:

  • Intel Core i7-3820QM ja Intel Core i7-5200U
  • Gigabit kaardid Intel 82579LM ja Intel I218LM
  • Linux 4.6.1
  • WireGuardi konfiguratsioon: 256-bitine ChaCha20 koos Poly1305 MAC-iga
  • Esimene IPsec konfiguratsioon: 256-bitine ChaCha20 koos Poly1305 MAC-iga
  • Teine IPsec konfiguratsioon: AES-256-GCM-128 (AES-NI-ga)
  • OpenVPN konfiguratsioon: vastav 256-bitise AES krüptosüsteem HMAC-SHA2-256-ga, UDP režiim
  • Sooritusvõimet mõõdeti iperf3, näidates keskmist tulemuse 30 minuti jooksul.

Teoreetiliselt peaks WireGuard pärast integreerimist töötama veel kiiremini. Kuid tegelikkuses ei pruugi see nii olla, kuna liikudes sisseehitatud krüptograafiliste funktsioonide Crypto API juurde. Võib-olla ei ole kõik neist veel optimeeritud natiivse WireGuard'i jõudluse tasemele.

Minu vaatepunktist on WireGuard kasutajale ideaalne. Kõik madalama taseme lahendused on määratletud spetsifikatsioonis, seega kestab tüüpilise VPN-infrastruktuuri ettevalmistamise protsess vaid paar minutit. Konfiguratsioonis eksida on praktiliselt võimatu, — kirjutanud 2018. aastal Habré. — Paigaldusprotsess on üksikasjalikult kirjeldatud ametlikul veebisaidil, eraldi tahaksin märkida suurepärast OpenWRT tuge. Sellise kasutusmugavuse ja koodibaasi kompaktsete mõõtmete saavutamiseks loobuti võtmete jagamise süsteemist. Siin ei ole keerulist sertifikaatsüsteemi ja kogu seda ettevõtete hirmu, lühikesed krüpteerimisvõtmed jagatakse rohkem nagu SSH-võtmed.

WireGuard'i projekt on arenenud alates 2015. aastast, see on läbinud auditi ja formaalset valideerimist. WireGuardi tugi on integreeritud NetworkManagerisse ja systemd-sse, ning kärped tuumale on kaasatud Debian Unstable, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, Subgraph ja ALT jaotustes.

Allikas: habr.com

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster