AnyConnect-yhteensopivan VPN-palvelimen käyttöönotto sertifikaatin vahvistuksella CentOS 7:ssä

AnyConnect on Ciscon kehittämä etäkäyttöratkaisu. Kannetettavuudestaan ​​ja vakaudestaan, erityisesti DTLS-ominaisuudestaan ​​tunnettu AnyConnect on monien yritysten käytössä. Käytämme avoimen lähdekoodin versiota ocserv, joka on yhteensopiva protokollan kanssa.

Aiomme myös ottaa käyttöön varmenteen vahvistuksen. Palvelin tunnistaa asiakkaat tarkistamalla, onko määritetty CA myöntänyt asiakkaan varmenteen. Tämä yksinkertaistaa huomattavasti asiakkaiden määritystä, koska meidän tarvitsee vain tuoda varmenne asiakkaalle (useimmiten pkcs12-tiedosto ( .pfxtai .p12)) eikä salasanoja tarvita. Tämä on myös turvallisempaa, koska salasanoja ei kulje Internetissä.

Aloitetaan.

Edellytykset

  • Äskettäin luotu CentOS 7 -palvelin, jossa on käytössä IPv6
  • Toimiva tietokone (voi olla itse palvelin; tosin vanhentunut (katso alla)), katso huomautus 1
  • Jotkin asiakkaat, joihin on asennettu AnyConnect (tai OpenConnect) -asiakasohjelmisto, katso huomautus 2

Huomautuksia:

  1. Vaikka kaikki on mahdollista (ja melko kätevää) tehdä palvelimella, käyttöönottoprosessi koostuu allekirjoittamiseen käytettävien yksityisten avainten luomisesta ja turvallisuussyistä tämä prosessi tulisi tehdä omalla tietokoneellasi.

  2. Lisenssiongelmien vuoksi en tarjoa linkkejä asiakasohjelmiston lataamiseen. Niiden löytäminen asiakkaallesi on kuitenkin melko helppoa. AnyConnect on App Storessa oleva sovellus tärkeimmille mobiilialustoille (iOS, Android, BlackBerry OS (v10 tai uudempi), UWP), ja yksinkertainen haku tuo ne sinulle. PC-alustoille Google tarjoaa sinulle sopivan ohjelmiston.

Palvelinpuolen ohjelmiston asennus

Vultrin CentOS 7 -koneet on määritetty EPEL-arkistolla. Asennamme ocservvain yum:

yum update
yum install ocserv

Tarvitsemme palvelinvarmenteen, jotta asiat toimisivat. Jos sinulla on verkkotunnus, Let's Encrypt on helpoin valinta.

yum install certbot
certbot certonly

Valitse "pyöritä väliaikainen Web-palvelin" todentaaksesi ACME CA:lla. Jos sinulla ei ole verkkotunnusta, itse allekirjoitettu varmenne myönnetään myöhemmin.

Sertifikaatin luominen ja konfigurointi

Perinteinen PKI on melko hankala käyttää, joten käytämme easyrsaOpenVPN-projektin apuohjelmaa. Asenna git työkoneellesi ja kloonaa arkisto:

git clone https://github.com/OpenVPN/easy-rsa
cd easy-rsa/easyrsa3

Rakennamme varmentajan ja myönnämme varmenteita. Toimi seuraavasti ja kirjoita jonnekin asettamasi PEM-salalause:

./easyrsa init-pki
./easyrsa build-ca

Pidä pki/private/ca.keyturvassa. Vuoto tekee koko infrastruktuuristasi hyödyttömän.

Jos päätät käyttää itse allekirjoitettua palvelinvarmennetta, toimi seuraavasti:

./easyrsa gen-req server

Ja syötä palvelimesi IP-osoite yleisnimeksi.

./easyrsa sign-req server server

Tämä allekirjoittaa varmenteen palvelimelle. Siirrä pki/issued/server.crtja pki/ca.crtettä /etc/ssl/certssekä pki/private/server.keyettä /etc/ssl/privatepalvelimella.

Seuraavaksi luomme asiakasvarmenteita. Tee seuraava:

./easyrsa gen-req client_01
./easyrsa sign-req client client_01

Valitse asiakkaan nimi ja täytä se yleisnimikenttään. Muista tunnuslause!

Seuraavaksi aiomme viedä varmenteen pkcs12-muodossa käytettäväksi mobiilialustoilla. Tehdä:

./easyrsa export-p12 client_01

Valitse vientisalasana, joka sinua pyydetään syöttämään, kun tuot varmenteen puhelimeen. Siirrä pki/private/client_01.p12puhelimeesi ja tuo se.

Palvelimen konfigurointi

Täytämme todistuksen tiedot.

vim /etc/ocserv/ocserv.conf

Etsi server-certosa ja täytä seuraavat tiedot:

# If you use Let's Encrypt
server-cert = /etc/letsencrypt/live/example.com/fullchain.pem
server-key = /etc/letsencrypt/live/example.com/privkey.pem

# If you use self-signed server certificate 
server-cert = /etc/ssl/certs/server.crt
server-key = /etc/ssl/private/server.key

ca-cert = /etc/ssl/certs/ca.crt

Huomaa, että jos käytät itse allekirjoitettu varmenne, muista poistaa tunnuslausetta ensin openssl rsa -in server.key -out server-new.keyniin, että ocservvoivat käyttää yksityistä avainta.

Paikanna authosio. Ota tämä rivi käyttöön:

auth = "certificate"

Ja kommentoi kaikki muut authrivit.

Poista tämän rivin kommentti:

cert-user-oid = 2.5.4.3

Etsi ipv6-networkja täytä palvelimesi ipv6-lohko. Tämä on lohko, josta palvelin antaa vuokrasopimuksia.

ipv6-network = 2001:0db8:0123:4567::/64
ipv6-subnet-prefix = 124 

Aseta DNS-palvelimet.

dns = 8.8.8.8
dns = 8.8.4.4

Ota käyttöön yhteensopivuus Cisco-asiakkaiden kanssa.

cisco-client-compat = true

Avaa portit sinun asettaa tcp-portja udp-portja mahdollistaa naamiaiset sekä IPv4 ja IPv6 firewalld.

Käynnistä palvelin.

systemctl enable ocserv
systemctl start ocserv

Testiaika!

Palvelin on määritetty onnistuneesti. Luo yhteys asiakkaallasi ja muodosta yhteys. Jos asiat menevät pieleen, käytä tätä komentoa virheenkorjaukseen:

journalctl -fu ocserv

IPv6:n pitäisi toimia myös asiakaspuolella, jos asiakasohjelmistosi tukee ipv6:ta, vaikka asiakkaasi verkko ei tarjoa sinulle osoitetta. Mene tälle sivustolle testaamaan.

Valmis! Nauti uudesta AnyConnect-yhteensopivasta VPN-palvelimestasi!

Jätä kommentti

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja