{"id":2203,"date":"2025-07-28T15:43:35","date_gmt":"2025-07-28T13:43:35","guid":{"rendered":"https:\/\/www.dirk-hagedorn.de\/?p=2203"},"modified":"2025-07-29T07:23:47","modified_gmt":"2025-07-29T05:23:47","slug":"kurztipp-kartenleser-mit-ubuntu-24-04-lts","status":"publish","type":"post","link":"https:\/\/www.dirk-hagedorn.de\/?p=2203","title":{"rendered":"Kurztipp: Kartenleser mit Ubuntu 24.04 LTS"},"content":{"rendered":"<p>Problem: Nach dem dist-upgrade auf Ubuntu 24.04 LTS funktionierte der ReinerSCT Cyberjack Kartenleser nicht mehr. Der Daemon (pcscd) lief zwar, protokollierte aber nichts Gutes ins syslog:<\/p>\n<pre>\r\npcscd[267998]: CYBERJACK: Started\r\npcscd[267998]: 00000000 auth.c:143:IsClientAuthorized() Process 267997 (user: 1000) is NOT authorized for action: access_pcsc\r\npcscd[267998]: 00000210 winscard_svc.c:355:ContextThread() Rejected unauthorized PC\/SC client\r\n<\/pre>\n<p>Ursache: die &#8222;Treiber&#8220; benutzen nun polkit f\u00fcr die Zugriffskontrolle, und standardm\u00e4\u00dfig ist halt nichts konfiguriert und damit jedem alles verboten.<\/p>\n<p>L\u00f6sung: Man lege zwei polkit-Regeln an (das sind nicht mehr als kleine Textdateien mit ein wenig JavaScript-Code): Eine Regel, um auf den Kartenleser zugreifen zu k\u00f6nnen, und eine weitere Regel, um auf die Karten zugreifen zu k\u00f6nnen. (Details dazu siehe README.polkit aus dem pcscd-Paket, Link siehe unten). Und ja, man k\u00f6nnte auch alles in eine Datei packen, wenn man m\u00f6chte.<\/p>\n<p>Zun\u00e4chst einmal sorgen wir daf\u00fcr, dass \u00fcberhaupt der Kartenleser vom Benutzer angesprochen werden kann (USER entsprechend durch Euren Benutzernamen ersetzen):<\/p>\n<pre>\r\n$ sudo su\r\n\r\n# cd \/etc\/polkit-1\/rules.d\r\n\r\n# vi pcsc-access-reader.rules\r\n\r\npolkit.addRule(function(action, subject) {\r\n    if (action.id == \"org.debian.pcsc-lite.access_pcsc\" &&\r\n        subject.user == \"USER\") {\r\n            return polkit.Result.YES;\r\n    }\r\n});\r\n<\/pre>\n<p>Datei sichern, vi beenden. Neu gestartet werden muss nichts, die Zugriffsregel gilt sofort. <\/p>\n<p>Nun m\u00fcssen wir herausfinden, welchen Namen der Kartenleser hat, da wir diesen f\u00fcr die weitere Zugriffsregel ben\u00f6tigen. Das geht mittels pcsc_scan (steckt im Paket &#8222;pcsc-tools&#8220;, notfalls mit &#8222;sudo apt install pcsc-tools&#8220; installieren):<\/p>\n<pre>\r\n$ pcsc_scan \r\nPC\/SC device scanner\r\nV 1.7.1 (c) 2001-2022, Ludovic Rousseau <ludovic.rousseau@free.fr>\r\nUsing reader plug'n play mechanism\r\nScanning present readers...\r\n0: REINER SCT cyberJack RFID standard (234247110815) 00 00\r\n...\r\n<\/pre>\n<p>Alles was hinter &#8222;0: &#8220; steht, ben\u00f6tigen wir nun f\u00fcr die folgende Regel, die den Zugriff auf die Smartcards regelt. Wie oben wechseln wir als root ins Verzeichnis und legen eine neue Regel an. READER muss entsprechend durch den obigen kompletten Namen (inkl. der ganzen Ziffern am Ende), USER wiederum durch den Namen des Benutzers ersetzt werden:<\/p>\n<pre>\r\n$ sudo su\r\n\r\n# cd \/etc\/polkit-1\/rules.d\r\n\r\n# vi pcsc-access-card.rules\r\n\r\npolkit.addRule(function(action, subject) {\r\n    if (action.id == \"org.debian.pcsc-lite.access_card\" &&\r\n        action.lookup(\"reader\") == 'READER' &&\r\n        subject.user == \"USER\") {\r\n            return polkit.Result.YES;\r\n    }\r\n});\r\n<\/pre>\n<p>Wer auf so viele Details keine Lust hat, kann das alles sicherlich auch mit einer einzigen Regel erledigen, die immer die Erlaubnis erteilt, egal welcher Benutzer gerade welchen Kartenleser verwendet:<\/p>\n<pre>\r\n$ sudo su\r\n\r\n# cd \/etc\/polkit-1\/rules.d\r\n\r\n# vi pcsc-allow-all-users-access-all-readers-and-cards.rules\r\n\r\npolkit.addRule(function(action, subject) {\r\n    if (action.id == \"org.debian.pcsc-lite.access_pcsc\") {\r\n       return polkit.Result.YES;\r\n    }\r\n});\r\n\r\npolkit.addRule(function(action, subject) {\r\n    if (action.id == \"org.debian.pcsc-lite.access_card\") {\r\n       return polkit.Result.YES;\r\n    }\r\n});\r\n<\/pre>\n<p>Links:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/LudovicRousseau\/PCSC\/blob\/master\/doc\/README.polkit\" target=\"_blank\">PCSC \/ doc \/ README.polkit<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Problem: Nach dem dist-upgrade auf Ubuntu 24.04 LTS funktionierte der ReinerSCT Cyberjack Kartenleser nicht mehr. Der Daemon (pcscd) lief zwar, protokollierte aber nichts Gutes ins syslog: pcscd[267998]: CYBERJACK: Started pcscd[267998]: 00000000 auth.c:143:IsClientAuthorized() Process 267997 (user: 1000) is NOT authorized for action: access_pcsc pcscd[267998]: 00000210 winscard_svc.c:355:ContextThread() Rejected unauthorized PC\/SC client Ursache: die &#8222;Treiber&#8220; benutzen nun polkit <a class=\"more-link\" href=\"https:\/\/www.dirk-hagedorn.de\/?p=2203\">Weiterlesen\u00a0\u2026<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[316,22],"tags":[443,441,310,440,442],"class_list":["post-2203","post","type-post","status-publish","format-standard","hentry","category-kurztipp","category-linux","tag-cyberjack","tag-kartenleser","tag-linux","tag-pcsc","tag-reinersct"],"_links":{"self":[{"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/posts\/2203","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2203"}],"version-history":[{"count":8,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/posts\/2203\/revisions"}],"predecessor-version":[{"id":2211,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=\/wp\/v2\/posts\/2203\/revisions\/2211"}],"wp:attachment":[{"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2203"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2203"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dirk-hagedorn.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2203"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}