Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
public:gnupg:gnupg-card_auth [2017/09/12 11:52] – [Nutzung für ssh] jankow@datenkollektiv.net | public:gnupg:gnupg-card_auth [2020/04/17 11:03] (aktuell) – [Voraussetzungen] jankow@datenkollektiv.net | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Login und Authentifizierung ====== | ====== Login und Authentifizierung ====== | ||
- | ===== Login in lokalen Linux-Rechner ===== | ||
- | Die Linux-Pam und die verschiedenen Session-Manager können mit GnuPG-Card umgehen. | + | ===== Nutzung für ssh ===== |
- | * http:// | + | ==== Voraussetzungen ==== |
- | Die dort verwendeten Optionen für poldi-ctrl scheinen in der wheezy-Version noch nicht zu existieren. Folgendes Information hilft weiter: | + | **Deaktivierung des ssh-agent** |
- | * http:// | + | Der gpg-agent ist in der Lage, auch ssh-Authentifizierungen zu erledigen |
- | ==== Einrichten des Poldi-Moduls: ==== | + | In diesem Fall darf aber der ssh-agent nicht gestartet werden, da dieser die Umgebungsvariable überschreiben würde. |
- | (alle Kommandos als Root oder mit sudo) | + | Leider gibt es keine einheitliche Funktionsweise, |
- | Das Packet muss installiert werden: | + | * einige werten die ''/ |
- | apt-get install libpam-poldi | + | * andere haben eine eigene Startroutine |
+ | * wieder andere nutzen wohl neuerdings auch den systemd. | ||
- | <WRAP center round info 60%> | + | **gnome-keyring-manager darf sich weder für ssh noch für gpg verantwortlich fühlen** |
- | Unter Debian Jessie findet poldi das Binary von scdaemon nicht mehr. Ein | + | |
- | ln -s / | + | |
- | als Root schafft einfache Abhilfe. | + | |
- | </ | + | |
+ | Noch komplizieter ist die Lage beim gnome-keyring-manager, | ||
- | Ein | + | * [[http:// |
+ | * [[http:// | ||
+ | * [[https:// | ||
- | poldi-ctrl -d | + | <WRAP center round tip 60%> Leider hat sich die Interaktion zwischen gnome-keyring-daemon, gpg-agent und ssh-agent in Debian stretch wiederum geändert. Hinweise dazu gibt es hier: |
- | testet, ob die Karte erkannt wird. | + | * [[https:// |
- | | + | |
- | Mit | + | |
- | poldi-ctrl -s | + | In Stretch ist jetzt die user-Session von systemd verantwortlich für den Start des gpg-agent. Die verschiedenen Anleitungen, |
+ | </ | ||
- | finden wir die Seriennummer der Karte heraus ('' | + | ==== Vorgehen ==== |
- | + | ||
- | Jetzt müssen wir unter / | + | |
- | echo " | + | **ssh-Support im gpg-agent konfigurieren** |
- | Unter /etc/poldi/localdb/ | + | < |
+ | echo " | ||
+ | </code> | ||
- | poldi-ctrl -s > serialno.txt | + | Gleichzeitig soll verhindert werden, dass der ssh-agent beim Starten einer Desktop-Umgebung startet. Dazu editieren wir die '' |
- | poldi-ctrl -k | tee -a /etc/poldi/localdb/ | + | |
- | Damit sollte Poldi fertig konfiguriert sein. | + | < |
+ | # | ||
+ | </ | ||
- | ==== Einrichten der Authentifizierung ==== | + | aus. |
+ | **Konflikt mit Gnome-Keyring Manager lösen** | ||
- | Nach der grundlegenden Einrichtung der Smartcard, kann das Pam-Poldi-Modul zur /etc/pam.d/ | + | In manchen (älteren Umgebungen |
< | < | ||
- | --- a/pam.d/common-auth | + | /etc/xdg/autostart/gnome-keyring-ssh.desktop |
- | +++ b/pam.d/common-auth | + | / |
- | @@ -13,6 +13,8 @@ | + | |
- | # pam-auth-update to manage selection of other modules. See | + | |
- | # pam-auth-update(8) for details. | + | |
- | + | ||
- | +# with smartcard | + | |
- | +auth sufficient pam_poldi.so | + | |
- | # here are the per-package modules (the " | + | |
- | | + | |
- | # here's the fallback if no module succeeds | + | |
</ | </ | ||
+ | jeweils um, in dem wir z.B. ein '' | ||
- | ====== Login und Authentifizierung ====== | + | In manchen [[http:// |
- | ===== Login in lokalen Linux-Rechner ===== | + | |
- | Die Linux-Pam und die verschiedenen Session-Manager können mit GnuPG-Card umgehen. | + | < |
+ | apt-get remove libpam-gnome-keyring | ||
+ | </ | ||
- | * http://www.schiessle.org/ | + | zu deinstallieren. Das scheint nicht zwingend notwendig. |
- | Die dort verwendeten Optionen für poldi-ctrl scheinen in der wheezy-Version noch nicht zu existieren. Folgendes Information hilft weiter: | + | Auch ein |
- | * http:// | + | < |
+ | gconftool-2 --set -t bool /apps/gnome-keyring/ | ||
+ | </code> | ||
- | ==== Einrichten des Poldi-Moduls: | + | wird in anderen Howtos genannt, scheint aber nicht in allen Umgebungen nötig zu sein. |
- | (alle Kommandos als Root oder mit sudo) | + | ==== Einzelne Desktop-Umgebungen ==== |
- | Das Packet muss installiert werden: | + | === XFCE-Desktop in Debian Stretch === |
- | apt-get install libpam-poldi | + | |
- | <WRAP center round info 60%> | + | Da xfce4 den gnome-keyring-Daemon |
- | Unter Debian Jessie findet poldi das Binary von scdaemon | + | |
- | ln -s / | + | |
- | als Root schafft einfache Abhilfe. | + | |
- | </ | + | |
+ | Das lässt sich auf User-Ebene mit folgendem Kommando erreichen: | ||
- | Ein | + | xfconf-query -c xfce4-session -p / |
- | poldi-ctrl -d | + | Per Default ist diese Eigenschaft nicht gesetzt. |
- | testet, ob die Karte erkannt wird. | + | Klappt alles nicht, kann ein |
- | + | ||
- | Mit | + | |
- | poldi-ctrl -s | + | < |
+ | SSH_AUTH_SOCK=/ | ||
+ | </ | ||
- | finden wir die Seriennummer der Karte heraus ('' | + | in die ~/.bashrc geschrieben werden. Damit wird die Umgebungsvariable gesetzt, mit dem ssh dann den gpg-agent findet, |
- | + | ||
- | Jetzt müssen wir unter / | + | |
- | echo " | + | === Mate-Desktop in Debian Stretch=== |
- | Unter /etc/poldi/localdb/ | + | Mate scheint den gnome-keyring-manager autonom zu starten - ohne Berücksichtigung der Startskripte unter /etc/xdg/autostart. |
- | poldi-ctrl -s > serialno.txt | + | Daher kann Abhilfe auf User-Ebene Abhilfe geschaffen werden: |
- | poldi-ctrl -k | tee -a / | + | |
- | Damit sollte Poldi fertig konfiguriert sein. | + | < |
+ | gsettings set org.mate.session gnome-compat-startup " | ||
+ | </ | ||
- | ==== Einrichten der Authentifizierung ==== | + | Sieht man sich vorher mit |
- | + | ||
- | + | ||
- | Nach der grundlegenden Einrichtung der Smartcard, kann das Pam-Poldi-Modul zur / | + | |
< | < | ||
- | --- a/pam.d/ | + | gsettings get org.mate.session gnome-compat-startup |
- | +++ b/pam.d/common-auth | + | |
- | @@ -13,6 +13,8 @@ | + | |
- | # pam-auth-update to manage selection of other modules. | + | |
- | # pam-auth-update(8) for details. | + | |
- | + | ||
- | +# with smartcard | + | |
- | +auth sufficient pam_poldi.so | + | |
- | # here are the per-package modules (the " | + | |
- | | + | |
- | # here's the fallback if no module succeeds | + | |
</ | </ | ||
+ | die Einstellungen an, sieht man, dass nun keyring verschwunden ist. | ||
- | ===== Nutzung für ssh ===== | + | Zusätzlich deaktiviert mensch mit |
+ | < | ||
+ | mate-session-properties | ||
+ | </ | ||
- | * http:// | + | den Autostart vom "GPG-Passwort-Agent". |
- | * http:// | + | |
- | * https:// | + | |
- | Wir müssen ssh-Support im gpg-agent | + | Nach dem nächsten Neustart sollte der gpg-agent |
- | echo " | + | [[http:// |
- | Gleichzeitig soll verhindert werden, dass der ssh-agent beim Starten einer Desktop-Umgebung startet. Dazu editieren wir die ''/ | + | ==== ssh über mehrere Server (ForwardAgent) ==== |
- | | + | |
- | aus. | + | Damit das funktioniert, |
- | ==== Konflikt mit Gnome-Keyring Manager ==== | + | * / |
+ | * / | ||
- | In Gnome-Desktops (auch Mate, Cinnamon), gibt es einen Konflikt zwischen dem gpg-agent und dem gnome-keyring Manager, in dessen Folge der gpg-Agent nicht startet. | + | < |
+ | Host * | ||
+ | ForwardAgent yes | ||
+ | </ | ||
- | Um dem Gnome-Keyring-Manager abzugewöhnen, | + | Eine ausführliche Beschreibung findet |
- | /etc/xdg/autostart/gnome-keyring-ssh.desktop | + | |
- | | + | |
- | jeweils um, in dem wir z.B. ein '' | + | ==== Innerhalb von screen-sessions ==== |
- | In manchen [[http:// | + | Hier steht was dazu: |
- | | + | |
- | zu deinstallieren. Das scheint nicht zwingend notwendig. | + | Aber ab debian-wheezy sollte das out of the box funktionieren. |
- | Auch ein | ||
- | |||
- | gconftool-2 --set -t bool / | ||
- | |||
- | wird in anderen Howtos genannt, scheint aber nicht in allen Umgebungen nötig zu sein. | ||
==== ssh über mehrere Server (ForwardAgent) ==== | ==== ssh über mehrere Server (ForwardAgent) ==== | ||
- | * http:// | + | * [[http:// |
Damit das funktioniert, | Damit das funktioniert, | ||
- | |||
* / | * / | ||
* / | * / | ||
- | | + | < |
- | ForwardAgent yes | + | Host * |
+ | ForwardAgent yes | ||
+ | </ | ||
Eine ausführliche Beschreibung findet sich hier: | Eine ausführliche Beschreibung findet sich hier: | ||
- | * http:// | + | * [[http:// |
==== Innerhalb von screen-sessions ==== | ==== Innerhalb von screen-sessions ==== | ||
Zeile 195: | Zeile 174: | ||
Hier steht was dazu: | Hier steht was dazu: | ||
- | * http:// | + | * [[http:// |
Aber mit debian-wheezy sollte das out of the box funktinieren. | Aber mit debian-wheezy sollte das out of the box funktinieren. | ||
- | ==== Konflikt mit Gnome-Keyring Manager | + | ===== Login in lokalen Linux-Rechner ===== |
- | In Gnome-Desktops (auch Mate, Cinnamon), gibt es einen Konflikt zwischen dem gpg-agent | + | Die Linux-Pam und die verschiedenen Session-Manager |
- | Um dem Gnome-Keyring-Manager abzugewöhnen, | + | * [[http:// |
- | / | + | Die dort verwendeten Optionen für poldi-ctrl scheinen in der wheezy-Version noch nicht zu existieren. Folgendes Information hilft weiter: |
- | / | + | |
- | jeweils um, in dem wir z.B. ein '' | + | * [[http:// |
- | In manchen [[http:// | + | ==== Einrichten des Poldi-Moduls: ==== |
- | apt-get remove libpam-gnome-keyring | + | (alle Kommandos als Root oder mit sudo) |
- | zu deinstallieren. | + | Das Packet muss installiert werden: |
- | Auch ein | + | < |
+ | apt-get install libpam-poldi | ||
+ | </ | ||
- | gconftool-2 --set -t bool / | + | <WRAP center round info 60%> Unter Debian Jessie findet poldi das Binary von scdaemon nicht mehr. Ein |
- | wird in anderen Howtos genannt, scheint aber nicht in allen Umgebungen nötig zu sein. | + | < |
- | ==== ssh über mehrere Server (ForwardAgent) ==== | + | ln -s / |
+ | </ | ||
- | * http:// | + | als Root schafft einfache Abhilfe. </WRAP> |
- | Damit das funktioniert, | + | Ein |
+ | < | ||
+ | poldi-ctrl -d | ||
+ | </ | ||
- | * / | + | testet, ob die Karte erkannt wird. |
- | * /home/user/.ssh/config (per user) | + | |
- | Host * | + | Mit |
- | ForwardAgent yes | + | |
- | Eine ausführliche Beschreibung findet sich hier: | + | < |
+ | poldi-ctrl -s | ||
+ | </ | ||
- | * http:// | + | finden wir die Seriennummer der Karte heraus ('' |
- | ==== Innerhalb von screen-sessions ==== | + | Jetzt müssen wir unter / |
- | Hier steht was dazu: | + | < |
+ | echo " | ||
+ | </ | ||
- | * http://www.bootc.net/archives/2013/ | + | Unter /etc/poldi/localdb/keys/ muss jetzt für jede Karte eine Datei mit der Seriennummer als Dateiname angelegt werden, die den public Key der Karte enthält. Das geht einfach mit: |
- | Aber mit debian-wheezy sollte das out of the box funktinieren. | + | < |
+ | poldi-ctrl -s> serialno.txt | ||
+ | poldi-ctrl -k | tee -a / | ||
+ | </ | ||
+ | Damit sollte Poldi fertig konfiguriert sein. | ||
+ | |||
+ | ==== Einrichten der Authentifizierung ==== | ||
+ | |||
+ | Nach der grundlegenden Einrichtung der Smartcard, kann das Pam-Poldi-Modul zur / | ||
+ | |||
+ | < | ||
+ | --- a/ | ||
+ | +++ b/ | ||
+ | @@ -13,6 +13,8 @@ | ||
+ | # pam-auth-update to manage selection of other modules. | ||
+ | # pam-auth-update(8) for details. | ||
+ | |||
+ | +# with smartcard | ||
+ | +auth sufficient pam_poldi.so | ||
+ | # here are the per-package modules (the " | ||
+ | | ||
+ | # here's the fallback if no module succeeds | ||
+ | </ |