OpenVPN/macOS/Tunnelblick

Kohteesta DigiWiki
< OpenVPN‎ | macOS
Versio hetkellä 23. huhtikuuta 2020 kello 10.29 – tehnyt TUOMALA JUHA 10000350X (keskustelu | muokkaukset)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun
Tunnelblick
Tunnelblick-logo.png
Kuvaus VPN yhteysohjelma
Käyttöliittymä GUI
Lisenssi
Kotisivu tunnelblick.net

Tunnelblick (tunnelblick.net) ohjelmalla voi muodostaa etäyhteyden OpenVPN-palveluun. Tunnelblick on graafinen käyttöliittymä, se yhä käyttää alkuperäistä OpenVPN-ohjelmistoa taustalla. Asetustiedostot ovat samoja, *.ovpn astustiedosto (tai sama tiedosto .tblk tarkenteella) ja tunnistusvaremnteet .cer, .crt, .der, .key, .p12, .p7b, .p7c, .pem, or .pfx muotoisina.

Henkilökortin käyttö tunnistautumisessa ei käytä macOS:n Keychain Access varmennevarastoa, sitä on yritetty lisätä siihen vuosina ? - ?, mutta se poistettiin versiossa ? kokonaan. OpenVPN älykorttien (PKCS#11) tuki on olemassa ja se aikanaan toiminut, mutta viimeaikaiset muutokset macOS-käyttöjärjestelmässä ovat rikkoneet sen.

Asennus

Tunnelblick ei ole saatavilla Applen Store sovelluskaupasta vaan kannattaa asentaa brew paketinhallinnalla:

brew cask install tunnelblick
brew install openvpn

Tunnelblick asennuspaketti on toimiva kokonaisuus koska se asentaa vaadittavat OpenVPN-, OpenSC- ja OpenSSL-kirjastot mukanaan. Koska sen kehittäjä on lopettanut älykorttien tukemisen (2020-01), tulee myös asentaa sen ulkopuolinen openvpn.


Asetukset

Jos VPN-palvelun tarjoaja lähettää tunnistautumis- ja yhteysasetukset tiedostoina, ne voi helpoiten ottaa käyttöön pudottamalla tiedosto (itseasiassa hakemistopuu) tilarivin Tunnelblick-ikonin päälle, jolloin ne menevät automaattisesti oikeaan paikkaan.

OpenVPN ei osaa käyttää henkilökorttia oikein ja vaatii käytettävään varmenteeseen varmennekohtaisen kovakoodatun viittauksen (serialized-id):

% /usr/local/sbin/openvpn --show-pkcs11-ids /usr/local/lib/onepin-opensc-pkcs11.so
Certificate
      DN:             C=FI, serialNumber=10000350X, GN=JUHA, SN=TUOMALA, CN=TUOMALA JUHA 10000350X
      Serial:         3BC409C1
      Serialized id:  VRK\x2DFINEID/PKCS\x2315/4600015135155169/HENKILOKORTTI\x20\x28perustunnusluku\x29/45

Serialalized-id muuttuu jos kortti vaihtuu (kerran viidessa vuodessa) ja se tekee myös asetustiedostosta käyttäjäkohtaisen.

Asetustiedoston vaadittavat käyttäjäkohtaiset rivit:

pkcs11-providers /usr/local/lib/onepin-opensc-pkcs11.so
pkcs11-id 'VRK\x2DFINEID/PKCS\x2315/4600015135155169/HENKILOKORTTI\x20\x28perustunnusluku\x29/45'

Toinen, parempi vaihtoehto pkcs11-id tilalle olisi käyttää pkcs11-id-management asetusta joka kysyisi käytettävän varmenteen käyttöliittymässä.

Ongelmaratkaisu

  • Tunnelblick log tiedostot:
    • /var/log/Tunnelblick/tunnelblickd.log
    • /Library/Application\ Support/Tunnelblick/Logs/
  • Versiossa 3.8.2 on bugi #600 joka antaa virheilmoituksen CKR_FUNCTION_FAILED --show-pkcs11-ids listaus ajettaessa eikä PKCS#11 tuki toimi. Tunnelblickin mukana tulee useita openvpn-versioita valmiiksi (hakemistossa /Applications/Tunnelblick.app/Contents/Resources/openvpn eikä niissä kaikissa ole edes PKCS#11 tuki käännettynä mukaan) ja se pystyy käyttämään myös erikseen asennettua OpenVPN-pakettia.

Katso myös

Aiheesta muualla