Udgivelse af Nebula 1.5, et system til at skabe P2P-overlay-netværk

Udgivelsen af ​​Nebula 1.5-projektet er tilgængelig, der tilbyder værktøjer til at bygge sikre overlejringsnetværk. Netværket kan forene fra flere til titusindvis af geografisk adskilte værter, der hostes af forskellige udbydere, og danner et separat isoleret netværk oven på det globale netværk. Projektet er skrevet i Go og distribueret under MIT-licensen. Projektet er grundlagt af Slack, som udvikler en corporate messenger af samme navn. Understøtter Linux, FreeBSD, macOS, Windows, iOS og Android.

Noder på Nebula-netværket kommunikerer direkte med hinanden i P2P-tilstand - direkte VPN-forbindelser oprettes dynamisk, da data skal overføres mellem noder. Identiteten af ​​hver vært på netværket bekræftes af et digitalt certifikat, og tilslutning til netværket kræver godkendelse - hver bruger modtager et certifikat, der bekræfter IP-adressen i Nebula-netværket, navn og medlemskab i værtsgrupper. Certifikater er underskrevet af en intern certificeringsmyndighed, implementeret af netværksopretteren på dennes faciliteter og bruges til at certificere autoriteten for værter, der har ret til at oprette forbindelse til overlay-netværket.

For at skabe en autentificeret, sikker kommunikationskanal bruger Nebula sin egen tunnelprotokol baseret på Diffie-Hellman nøgleudvekslingsprotokollen og AES-256-GCM-chifferet. Protokolimplementeringen er baseret på færdiglavede og gennemprøvede primitiver leveret af Noise frameworket, som også bruges i projekter som WireGuard, Lightning og I2P. Projektet siges at have gennemgået en uafhængig sikkerhedsrevision.

For at opdage andre noder og koordinere forbindelser til netværket oprettes specielle "fyrtårns"-knuder, hvis globale IP-adresser er faste og kendte af netværksdeltagere. Deltagende noder er ikke bundet til en ekstern IP-adresse; de ​​identificeres af certifikater. Værtsejere kan ikke foretage ændringer i signerede certifikater på egen hånd, og i modsætning til traditionelle IP-netværk kan de ikke foregive at være en anden vært blot ved at ændre IP-adressen. Når en tunnel oprettes, verificeres værtens identitet med en individuel privat nøgle.

Det oprettede netværk tildeles en bestemt række af intranetadresser (f.eks. 192.168.10.0/24), og de interne adresser er knyttet til værtscertifikater. Grupper kan dannes fra deltagere i overlejringsnetværket, for eksempel til separate servere og arbejdsstationer, hvorpå der anvendes separate trafikfiltreringsregler. Forskellige mekanismer er tilvejebragt til at omgå adresseoversættere (NAT'er) og firewalls. Det er muligt at organisere routing gennem overlejringsnetværket af trafik fra tredjepartsværter, der ikke er en del af Nebula-netværket (usikker rute).

Det understøtter oprettelsen af ​​firewalls til at adskille adgang og filtrere trafik mellem noder i Nebula-overlejringsnetværket. ACL'er med tag-binding bruges til filtrering. Hver vært på netværket kan definere sine egne filtreringsregler baseret på værter, grupper, protokoller og netværksporte. I dette tilfælde filtreres værter ikke efter IP-adresser, men af ​​digitalt signerede værtsidentifikatorer, som ikke kan forfalskes uden at kompromittere det certificeringscenter, der koordinerer netværket.

I den nye udgivelse:

  • Tilføjet et "-rå" flag til print-cert-kommandoen for at udskrive PEM-repræsentationen af ​​certifikatet.
  • Tilføjet understøttelse af den nye Linux-arkitektur riscv64.
  • Tilføjet en eksperimentel remote_allow_ranges-indstilling for at binde lister over tilladte værter til specifikke undernet.
  • Tilføjet pki.disconnect_invalid mulighed for at nulstille tunneler efter tillidsafslutning eller certifikatets levetid udløber.
  • Tilføjet unsafe_routes mulighed. .metrisk for at tildele vægt til en specifik ekstern rute.

Kilde: opennet.ru

Tilføj en kommentar