OpenConnect - OpenConnect
| Alkuperäinen kirjoittaja | David Woodhouse |
|---|---|
| Kehittäjä (t) | Daniel Lenski, Nikos Mavrogiannopoulos |
| Ensimmäinen julkaisu | 18. maaliskuuta 2009 |
| Vakaa julkaisu | 8.10 / 14.5.2020
|
| Varasto | |
| Tyyppi | VPN |
| Lisenssi | GNU LGPL v2.1 |
| Verkkosivusto | www |
OpenConnect on avoimen lähdekoodin ohjelmistosovellus , joka muodostaa yhteyden virtuaalisiin yksityisiin verkkoihin (VPN), jotka toteuttavat suojattuja pisteestä-pisteeseen -yhteyksiä.
Se oli alun perin kirjoitettu avoimen lähdekoodin korvaaja Ciscon n oma AnyConnect SSL VPN-asiakas, joka tukee useita Ciscon reitittimet . OpenConnect -asiakas lisäsi tukea Juniper Networksin SSL VPN: lle versiossa 7.05. Haarukka kehitti tuen Palo Alto Networksin GlobalProtect VPN: lle, joka sisältyi version 8.00 julkaisuun.
Palvelin
Vuodesta 2013 lähtien OpenConnect-projekti tarjoaa myös AnyConnect-yhteensopivan palvelimen, ocservin , ja tarjoaa siten täyden asiakas-palvelin- VPN-ratkaisun.
OpenConnect ja ocserv toteuttavat nyt laajennetun version AnyConnect VPN -protokollasta, jota on ehdotettu Internet -standardiksi . Sekä OpenConnect että ocserv pyrkivät ylläpitämään taaksepäin yhteensopivuutta Cisco AnyConnect -palvelimien ja -asiakkaiden kanssa.
Pöytäkirjat
Cisco AnyConnect
Cisco AnyConnect VPN -palvelut käyttävät TLS -protokollaa todentamaan ja määrittämään reitityksen, sitten DTLS salaamaan ja kuljettamaan tehokkaasti tunneloitua VPN -liikennettä, ja ne voivat palata TLS -pohjaiseen siirtoon, jossa palomuurit estävät UDP -pohjaisen liikenteen. Cisco AnyConnect -palvelimien käyttämä DTLS-protokolla perustui epätyypilliseen, julkaisua edeltävään DTLS 1.0 -luonnokseen, kunnes DTLS 1.2 -standardin tuki lisättiin vuonna 2018.
OpenConnectin AnyConnect -protokollan toteutus on riittävän täydellinen, jotta osa Ciscon omista IP -puhelinlaitteista upottaa hyvin vanhan OpenConnect -julkaisun (eikä Ciscon omaa ohjelmistoa) voidakseen muodostaa yhteyden Ciscon SSL -VPN -verkkoihin.
DTLS
Ciscon omat AnyConnect-asiakkaat ja -palvelimet rakennettiin alun perin vuonna 2007 julkaistua OpenSSL 0.9.8f -julkaisua vastaan, joka toteutti DTLS -julkaisua edeltävän version, joka ei ollut yhteensopiva RFC 4347 -standardin mukaisen DTLS 1.0 -version kanssa . Tämän vuoksi oli vaikeaa saada OpenConnect toteuttamaan Cisco-yhteensopiva DTLS-versio ilman linkitystä OpenSSL: ää vastaan.
Selkeä tuki Ciscon ei-standardille DTLS-versiolle sisällytettiin OpenSSL 0.9.8m: ään (jossa se tunnetaan nimellä DTLS1_BAD_VER) ja sitten GnuTLS 3.2.1: een (jossa se tunnetaan nimellä GNUTLS_DTLS0_9). Ciscon AnyConnect-asiakkaiden ja -palvelimien uudemmat versiot tukevat DTLS 1.2 -standardia standardoidussa langattomassa muodossa ( RFC 6347 ), vaikka ne käyttävät edelleen epätyypillistä mekanismia (joka perustuu istunnon jatkamiseen) DTLS-avainten vaihtoon.
Nykyaikaiset OpenConnect -versiot voidaan rakentaa käyttämään joko GnuTLS- tai OpenSSL -protokollaa TLS: lle , DTLS: lle ja salausprimitiiville.
Muut protokollat
OpenConnect Asiakas myös toteuttaa Kataja , Junos Pulse ja GlobalProtect VPN protokollia. Niiden rakenne on hyvin samanlainen kuin AnyConnect-protokollan: ne todentavat ja määrittävät reitityksen TLS: n kautta, paitsi että ne käyttävät ESP : tä tunnelin liikenteen tehokkaaseen, salattuun siirtoon (DTLS: n sijasta), mutta myös ne voivat palata TLS-pohjaiseen siirtoon. Toukokuusta 2020 lähtien useiden PPP-pohjaisten protokollien tuki on kehitteillä.
Arkkitehtuuri
OpenConnect -asiakas on kirjoitettu pääasiassa C -kielellä , ja se sisältää suuren osan tarvittavasta infrastruktuurista, jotta voidaan lisätä muita samankaltaisia virtoja käyttäviä VPN -protokollia ja muodostaa yhteys niihin yhteisen käyttöliittymän kautta:
- Ensimmäinen yhteys VPN -palvelimeen TLS: n kautta
- Todennusvaihe HTTPS: n kautta (käyttämällä HTML -lomakkeita , asiakasvarmenteita , XML : ää jne.)
- Palvelimen tarjoama reitityskokoonpano protokolla-agnostisessa muodossa, joka voidaan käsitellä vpnc-komentosarjalla
- Tiedonsiirtovaihe UDP-pohjaisen tunnelin (DTLS tai ESP) kautta, ja palautus TLS-pohjaiseen tunneliin
- Sisäänrakennettu tapahtumasilmukka kuolleiden vertaisvalvonnan , säilytyksen , uudelleentoiston jne.
OpenConnect voidaan rakentaa käyttämään joko GnuTLS tai OpenSSL kirjastot TLS , DTLS ja kryptografisia.
Alustat
OpenConnect on saatavana Solaris- , Linux- , OpenBSD- , FreeBSD- , MacOS -käyttöjärjestelmille , ja sillä on graafiset käyttöliittymäasiakkaat Windowsille , GNOMElle ja KDE: lle . Graafinen asiakas OpenConnectille on saatavana myös Android -laitteille, ja se on integroitu reitittimen laiteohjelmistopaketteihin, kuten OpenWrt .
Viitteet
Ulkoiset linkit
Hyödyllisiä käyttötietoja.