Uitgave van Nebula 1.5, een systeem voor het creëren van overlay P2P-netwerken

De release van project Nebula 1.5 is beschikbaar, dat een toolkit biedt voor het opzetten van beveiligde overlay-netwerken. Het netwerk kan van enkele tot tienduizenden geografisch gespreide hosts verbinden, geplaatst bij verschillende providers, waardoor een aparte, geïsoleerde netwerk bovenop het wereldwijde netwerk ontstaat. Het project is geschreven in de programmeertaal Go en wordt verspreid onder de MIT-licentie. Het project is ontwikkeld door Slack, dat de gelijknamige bedrijfscommunicatiemiddel onderhoudt. Ondersteuning voor Linux, FreeBSD, macOS, Windows, iOS en Android is beschikbaar.

Nodes in het Nebula-netwerk communiceren rechtstreeks met elkaar in P2P-modus — naar behoefte worden directe verbindingen dynamisch aangemaakt voor gegevensoverdracht tussen nodes. VPN-verbindingen. De identiteit van elke host in het netwerk wordt bevestigd door een digitaal certificaat, en verbinding maken met het netwerk vereist authenticatie — elke gebruiker ontvangt een certificaat dat het IP-adres in het Nebula-netwerk, de naam en het lidmaatschap van groepen hosts bevestigt. Certificaten worden ondertekend door een interne certificeringsinstantie, die door de netwerkbeheerder op zijn eigen infrastructuur wordt geïmplementeerd en wordt gebruikt om de bevoegdheden van hosts die verbinding maken met het overlay-netwerk te waarborgen.

Voor het creëren van een geauthenticeerde beveiligde communicatietunnel in Nebula wordt een eigen tunnelprotocol gebruikt, gebaseerd op het Diffie-Hellman-sleuteluitwisselingsprotocol en de AES-256-GCM-cypher. De implementatie van het protocol is gebaseerd op bestaande en bewezen principes, verstrekt door het Noise-framework, dat ook wordt toegepast in projecten zoals WireGuard, Lightning en I2P. Er wordt beweerd dat het project een onafhankelijke beveiligingsaudit heeft doorstaan.

Voor het ontdekken van andere nodes en het coördineren van verbindingen met het netwerk worden speciale ‘lighthouse’-nodes aangemaakt, waarvan de globale IP-adressen vast zijn en bekend bij de deelnemers van het netwerk. De deelnemende nodes zijn niet gebonden aan een extern het IP-adres, ze worden geïdentificeerd aan de hand van certificaten. De eigenaren van hosts kunnen geen wijzigingen aanbrengen in de ondertekende certificaten en kunnen, in tegenstelling tot traditionele IP-netwerken, zich niet voordoen als een andere host door eenvoudig het IP-adres te wijzigen. Bij het opzetten van een tunnel wordt de identiteit van de host bevestigd met behulp van een unieke privésleutel.

Aan het te creëren netwerk wordt een bepaald bereik intranet-adressen toegewezen (bijvoorbeeld 192.168.10.0/24) en wordt de binding van interne adressen aan certificaten van hosts gerealiseerd. Groepen kunnen worden gevormd uit de deelnemers aan het overlay-netwerk, bijvoorbeeld om servers en werkstations te scheiden, waaraan aparte verkeersfilterregels worden toegepast. Verschillende mechanismen worden geboden voor het omzeilen van NAT (Network Address Translation) en firewalls. Het is mogelijk om routing via het overlay-netwerk van externe hosts, die geen deel uitmaken van het Nebula-netwerk, te organiseren (unsafe route).

De creatie van firewalls ter scheiding van toegang en verkeersfiltering tussen knooppunten in het Nebula-overlay-netwerk wordt ondersteund. Voor filtering worden ACL's met tagbinding gebruikt. Elke host in het netwerk kan zijn eigen filterregels definiëren op basis van hosts, groepen, protocollen en netwerkpoorten. Hosts worden gefilterd op basis van ondertekende digitale identiteitsidentificaties die niet kunnen worden vervalst zonder compromittering van de coördinerende certificeringsinstantie van het netwerk.

In de nieuwe release:

  • Aan het commando print-cert is de vlag «-raw» toegevoegd voor het weergeven van de PEM-representatie van het certificaat.
  • Ondersteuning voor de nieuwe Linux-architectuur riscv64 is toegevoegd.
  • Een experimentele instelling remote_allow_ranges is toegevoegd om lijsten met toegestane hosts aan specifieke subnetten te koppelen.
  • De optie pki.disconnect_invalid is toegevoegd om tunnels te resetten na het intrekken van vertrouwen of na het verstrijken van de levensduur van het certificaat.
  • De optie unsafe_routes..metric is toegevoegd om een gewicht aan een specifieke externe route toe te kennen.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster