Ero sivun ”Apple/macOS” versioiden välillä

DigiWikistä
Siirry navigaatioon Siirry hakuun
Ei muokkausyhteenvetoa
Ei muokkausyhteenvetoa
 
(34 välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 1: Rivi 1:
'''Applen macOS''' käyttöjärjestelmistä on useita eri versioita, viimeisin niistä on Catalina.
'''Applen macOS''' käyttöjärjestelmästä on useita eri versioita, viimeisin niistä on '''Monterey'''. macOS käyttää [https://en.wikipedia.org/wiki/Keychain_(software) Keychain Access]-ohjelmaa varmennevarastona jossa aiemmin [[Tokend]]-rajapintaa käytettäessä näkyivät myös [[Henkilökortti|henkilökortin]] varmenteet. Uudemmat versiot macOS-versiot käyttävät CryptoTokenKit-rajapintaa (CTK) ja varmenteet eivät enää näy Keychain Access ohjelmassa.  


macOS käyttää [https://en.wikipedia.org/wiki/Keychain_(software) Keychain Access]-ohjelmaa varmennevarastona jossa näkyvät myös [[HSM]]-laitteet.
KeyChain ongelmasta seuraa, ettei mm Applen oma Safari-selain tai sähköpostiohjelma näe käyttäjän kortilla olevia varmenteita. Ongelmaa pystyi aiemmin kiertämään asentamalla vapaan lisenssin [[OpenSC]]-väliohjelmiston, mutta se ei enää toimi 2017 alusta myönnettyjen, eli [[Henkilökortti#Versiot|G3 sukupolven]] korttien kanssa koska sieltä puuttuu uuden [[Henkilökortti/Oberthur|Oberthur]]-kortin ajuri.


Henkilökorttien tuki on ennen Catalina-versiota ollut tuettuna avointa lähdekoodia tekevän [[OpenSC]]-projektin [[Tokend]]-rajapinnalla, Catalina ja uudemmat käyttävät Applem tekemää [[CryptoTokenKit]]-rajapintaa.
Kaikesta edelläolevasta seuraa, että macOS-käyttäjille ainoa realistinen vaihtoehto on käyttää [[Firefox]]-selainta.


Etäyhteyttä käytettäessä (VNC ikkunointi, ssh pääteyhteys) macOS ei rajoita varmennekorttien käsittelyä paikallisiin istuntoihin kuten Windows tekee tietoturvasyistä.  
Etäyhteyttä käytettäessä (VNC ikkunointi, ssh pääteyhteys) macOS ei rajoita paikallisten varmennekorttien käsittelyä paikallisiin istuntoihin kuten [[Windows]] tekee tietoturvasyistä.  
 
== Historia ==
'''Mac OS X Lion 10.7 -10.12'''<ref name='jamf-pumaska'>[https://www.jamf.com/resources/technical-papers/macos-smart-card-overview/macOS jamf.com Smart Card Overview]</ref> henkilökorttien tuki ollut tuettuna [[Tokend]]-rajapinnalla. Siitä tehtiin avointa lähdekoodia ja se siirrettiin macosforge- ja github kehitysportaaleihin. Kehittäjät ilmeisesti olleet [[OpenSC]]-projektin aktiiveja.
 
'''Mac OS X Sierra 10.12 - High Sierra 10.13''' [[CryptoTokenKit]]-rajapinnan (CTK) käyttöönotto.
 
'''macOS Mojave''' Keyring toimii, käyttäjä-varmenne-pairing toimii.
 
'''macOS Catalina 10.15.0''' Tokend poistettu, ainoastaan CryptoTokenKit tuettu.
 
'''macOS Big Sur 11.2.2''' samat CTK-ongelmat jatkuvat. '''sc_auth''' komento, keyring eivät toimi oletetusti.
 
'''macOS Monterey 12.0.1''' DigiSign 4.2.0b näyttäisi toimivan Firefoxin kanssa, CTK- ja Keyring- ja Safari ongelmat jatkuvat.
 
== Kortinlukijat ==
Toimii:
* Gemalto (was Gemplus) GemPC Twin SmartCard Reader (usb: 08e6:3437)
 
Ei toimi:
* OmniKey AG CardMan 3021 / 3121 (usb: 076b:3021)
 
== Asennus ==
 
Henkilökortin käyttö vaatii väliohjelmiston asennuksen.
 
 
=== Digisign Client ===
Digiviraston webistä on poistettu siellä aiemmin ollut ''ei toimi Safari 12 version kanssa'' varoitus (2021-11-07), mutta siitä huolimatta Safari ei tunnu toimivan kuten ennenkään.
 
* [https://dvv.fi/mac-versiot dvv.fi/mac-versiot]
 
Ohjelmiin asettava PKCS11 kirjaston polku on:
/Library/mPolluxDigiSign/libcryptoki.dylib
 
=== OpenSC ===
 
Osalle tarvittavia ohjelmia ei ole saatavilla Applen .dmg levykuvaa ja/tai natiivia .pkg pakettia. Asentamalla ns [https://brew.sh/ Home Brew pakettienhallintaohjelmiston], ohjelmien asennuksen ja päivittäminen helpottuu huomattavasti. Sen asennusohjeet löytyvät omilta sivuiltaan.
 
Komentotulkki-ikkunassa:
% sudo brew install opensc
 
 
Asennuksen jälkeen voi kokeilla näkeekö OpenSC kortinlukijan:
% opensc-tool -l
# Detected readers (pcsc)
Nr.  Card  Features  Name
0    No              Gemalto PC Twin Reader
 
Ja toimivatko varmenteiden listaaminen:
% pkcs15-tool -c
Using reader with a card: Gemalto PC Twin Reader
X.509 Certificate [todentamis- ja salausvarmenne]
        Object Flags  : [0x00]
        Authority      : no
        Path          : 3f004331
        ID            : 45
        Access Rules  : read:<always>;
        Encoded serial : 02 04 3BC409C1
X.509 Certificate [allekirjoitusvarmenne]
        Object Flags  : [0x00]
. . .
 
Ohjelmiin asettava PKCS11 kirjaston versiosidonnainen polku on:
/usr/local/Cellar/opensc/0.22.0/lib/onepin-opensc-pkcs11.so
 
== Sovellukset ==
 
=== Firefox ===
 
Firefoxin turvaväline-asetuksiin ladattava pkcs11-oduuli toimii ongelmitta.
=== Chrome ===
PKCS11-tuen asettelu Chrome-selaimeen vaatisi modutil komennon joka on osa nss-tools pakettia. Ohjelmasta on vain lähdekoodit joten sen asentaminen vaatisi nss-tools paketin kääntämistä kääntäjällä.
 
== Ongelmanratkaisut ==
 
* '''Finder -> Applications -> Utilities -> System Information.app''' listaa järjestelmän tietoja.
** '''Hardware -> Card Reader''' osiossa näkyy älykortinlukijat.
** '''Software -> SmartCards''' osiossa näkyy ajurien ja prosessien tietoja ([[Tokend]]/[[CryptoTokenKit]]). Samat tiedot näkyvät komennolla:
% system_profiler SPSmartCardsDataType
 
* CryptoTokenKit palvelun tila:
% sudo launchctl print system/com.apple.ctkd | grep state
        state = running
 
* Listaa älykortit:
% security list-smartcards
No smartcards found.
 
* Listaa varmenteet:
% security smartcards token -l
 
* Vanhan Tokend aktivointi on mahdollista Mojavessa jos sitä jostain syystä tarvitsisi ([https://www.unix.com/man-page/mojave/7/SmartCardServices-legacy/ SmartCardServices-legacy]):
% sudo defaults write /Library/Preferences/com.apple.security.smartcard Legacy -bool true
Mojavea uudemmissa versioissa Tokend on kokonaan poistettu.
 
* '''Safari ei toimi henkilökortin kanssa''' Catalinassa ja uudemmissa, ennen vuoden 2017 alkua myönnetyillä korteilla asentamalla OpenSC ongelma korjaantuu. Muuten [[Firefox]]in käyttö DigSign PKCS11-pluginin kanssa on ainoa vaihtoehto.
 
* '''SmartCard pairing failed''' ''Cannot pair SmartCard with the current user. The operation couldn't be completed. (OSStatus error -67808 - RSA signature verification failed, no match)''. Korjaus ongelmaan on poistaa Digiviraston [[DigiSign Client]] ohjelmapaketti, asentaa [[OpenSC]] ja uudelleenkäynnistää kone. Sen jälkeen käyttäjätilin ja varmenteen paritus onnistuu ja jopa Safari-selain toimii tunnistusvarmenteella. [[Tiedosto:MacOS.Catalina.smartcard.pairing.failed.png|right|200px|thumb|Virhe 67808: Varmenteen tarkistus epäonnistuu.]]


== Katso myös ==
== Katso myös ==
* [[Apple]]
* [[Apple]]
* [[OpenVPN/macOS]]
* [[OpenVPN/macOS]]
* [[Firefox]]
* [[Chrome]]
== Aiheesta muualla ==
* [https://ludovicrousseau.blogspot.com/search/label/Mac%20OS%20X Ludovic Rousseau - smartcards and macOS]
* [https://github.com/kenh/keychain-pkcs11 github.com/kenh/keychain-pkcs11] tarjoaa pkcs#11 rajapinnan älykorteilta ja keychain-varastosta.


== Lähteet ==
<references/>


[[Luokka:Käyttöjärjestelmät]]
[[Luokka:Käyttöjärjestelmät]]

Nykyinen versio 24. huhtikuuta 2024 kello 14.54

Applen macOS käyttöjärjestelmästä on useita eri versioita, viimeisin niistä on Monterey. macOS käyttää Keychain Access-ohjelmaa varmennevarastona jossa aiemmin Tokend-rajapintaa käytettäessä näkyivät myös henkilökortin varmenteet. Uudemmat versiot macOS-versiot käyttävät CryptoTokenKit-rajapintaa (CTK) ja varmenteet eivät enää näy Keychain Access ohjelmassa.

KeyChain ongelmasta seuraa, ettei mm Applen oma Safari-selain tai sähköpostiohjelma näe käyttäjän kortilla olevia varmenteita. Ongelmaa pystyi aiemmin kiertämään asentamalla vapaan lisenssin OpenSC-väliohjelmiston, mutta se ei enää toimi 2017 alusta myönnettyjen, eli G3 sukupolven korttien kanssa koska sieltä puuttuu uuden Oberthur-kortin ajuri.

Kaikesta edelläolevasta seuraa, että macOS-käyttäjille ainoa realistinen vaihtoehto on käyttää Firefox-selainta.

Etäyhteyttä käytettäessä (VNC ikkunointi, ssh pääteyhteys) macOS ei rajoita paikallisten varmennekorttien käsittelyä paikallisiin istuntoihin kuten Windows tekee tietoturvasyistä.

Historia

Mac OS X Lion 10.7 -10.12[1] henkilökorttien tuki ollut tuettuna Tokend-rajapinnalla. Siitä tehtiin avointa lähdekoodia ja se siirrettiin macosforge- ja github kehitysportaaleihin. Kehittäjät ilmeisesti olleet OpenSC-projektin aktiiveja.

Mac OS X Sierra 10.12 - High Sierra 10.13 CryptoTokenKit-rajapinnan (CTK) käyttöönotto.

macOS Mojave Keyring toimii, käyttäjä-varmenne-pairing toimii.

macOS Catalina 10.15.0 Tokend poistettu, ainoastaan CryptoTokenKit tuettu.

macOS Big Sur 11.2.2 samat CTK-ongelmat jatkuvat. sc_auth komento, keyring eivät toimi oletetusti.

macOS Monterey 12.0.1 DigiSign 4.2.0b näyttäisi toimivan Firefoxin kanssa, CTK- ja Keyring- ja Safari ongelmat jatkuvat.

Kortinlukijat

Toimii:

  • Gemalto (was Gemplus) GemPC Twin SmartCard Reader (usb: 08e6:3437)

Ei toimi:

  • OmniKey AG CardMan 3021 / 3121 (usb: 076b:3021)

Asennus

Henkilökortin käyttö vaatii väliohjelmiston asennuksen.


Digisign Client

Digiviraston webistä on poistettu siellä aiemmin ollut ei toimi Safari 12 version kanssa varoitus (2021-11-07), mutta siitä huolimatta Safari ei tunnu toimivan kuten ennenkään.

Ohjelmiin asettava PKCS11 kirjaston polku on:

/Library/mPolluxDigiSign/libcryptoki.dylib

OpenSC

Osalle tarvittavia ohjelmia ei ole saatavilla Applen .dmg levykuvaa ja/tai natiivia .pkg pakettia. Asentamalla ns Home Brew pakettienhallintaohjelmiston, ohjelmien asennuksen ja päivittäminen helpottuu huomattavasti. Sen asennusohjeet löytyvät omilta sivuiltaan.

Komentotulkki-ikkunassa:

% sudo brew install opensc


Asennuksen jälkeen voi kokeilla näkeekö OpenSC kortinlukijan:

% opensc-tool -l
# Detected readers (pcsc)
Nr.  Card  Features  Name
0    No              Gemalto PC Twin Reader

Ja toimivatko varmenteiden listaaminen:

% pkcs15-tool -c 
Using reader with a card: Gemalto PC Twin Reader
X.509 Certificate [todentamis- ja salausvarmenne]
       Object Flags   : [0x00]
       Authority      : no
       Path           : 3f004331
       ID             : 45
       Access Rules   : read:<always>;
       Encoded serial : 02 04 3BC409C1

X.509 Certificate [allekirjoitusvarmenne]
       Object Flags   : [0x00]
. . .

Ohjelmiin asettava PKCS11 kirjaston versiosidonnainen polku on:

/usr/local/Cellar/opensc/0.22.0/lib/onepin-opensc-pkcs11.so

Sovellukset

Firefox

Firefoxin turvaväline-asetuksiin ladattava pkcs11-oduuli toimii ongelmitta.

Chrome

PKCS11-tuen asettelu Chrome-selaimeen vaatisi modutil komennon joka on osa nss-tools pakettia. Ohjelmasta on vain lähdekoodit joten sen asentaminen vaatisi nss-tools paketin kääntämistä kääntäjällä.

Ongelmanratkaisut

  • Finder -> Applications -> Utilities -> System Information.app listaa järjestelmän tietoja.
    • Hardware -> Card Reader osiossa näkyy älykortinlukijat.
    • Software -> SmartCards osiossa näkyy ajurien ja prosessien tietoja (Tokend/CryptoTokenKit). Samat tiedot näkyvät komennolla:
% system_profiler SPSmartCardsDataType
  • CryptoTokenKit palvelun tila:
% sudo launchctl print system/com.apple.ctkd | grep state
       state = running
  • Listaa älykortit:
% security list-smartcards
No smartcards found.
  • Listaa varmenteet:
% security smartcards token -l
% sudo defaults write /Library/Preferences/com.apple.security.smartcard Legacy -bool true

Mojavea uudemmissa versioissa Tokend on kokonaan poistettu.

  • Safari ei toimi henkilökortin kanssa Catalinassa ja uudemmissa, ennen vuoden 2017 alkua myönnetyillä korteilla asentamalla OpenSC ongelma korjaantuu. Muuten Firefoxin käyttö DigSign PKCS11-pluginin kanssa on ainoa vaihtoehto.
  • SmartCard pairing failed Cannot pair SmartCard with the current user. The operation couldn't be completed. (OSStatus error -67808 - RSA signature verification failed, no match). Korjaus ongelmaan on poistaa Digiviraston DigiSign Client ohjelmapaketti, asentaa OpenSC ja uudelleenkäynnistää kone. Sen jälkeen käyttäjätilin ja varmenteen paritus onnistuu ja jopa Safari-selain toimii tunnistusvarmenteella.
    Virhe 67808: Varmenteen tarkistus epäonnistuu.

Katso myös

Aiheesta muualla

Lähteet