ssh-Keys portabel verwahren

Warum Debian? Was muss ich vorher wissen? Wo geht's nach der Installation weiter?
scientific
Beiträge: 2967
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

ssh-Keys portabel verwahren

Beitrag von scientific » 26.04.2018 00:14:31

Ich hab mal eine grundsätzliche Frage.

Ich habe meine Serverlandschaft jetzt so mittels LDAP aufgebaut, dass ich bei jedem Login den sshPublicKey auf den Server übertrage, der dort zu temporären "known Hosts" hinzugefügt wird.
Das ganze läuft mittels sssd auch gecached ziemlich super ab. Den private Key hab ich auf meinem Arbeitsrechner und der ist mittels Passwort geschützt.
Ich hab ein File ~/.ssh/config, in das zu jedem Host ein Kurzname, User, Port und auch der private-Key angegeben ist, sodass ich mit ssh hostname ganz einfach jeden einzelnen Host erreichen kann.

An LDAP-Server ist für jeden User genau ein publicKey gespeichert. Sollte also mein private-Key aus irgend einem Grund verloren gehen oder geleakt werden, reicht es am LDAP-Server den Public-Key auszutauschen, und schon ist der geleakte private Key auf keinem Rechner mehr brauchbar.

Soweit so gut.

Wie verwaltet man solche Keys und Configs aber sinnvollerweise, wenn man auf mehreren Rechnern zu tun hat? Wie nehme ich die am besten mit?
Wenn ich das auf einem USB-Stick speichere, muss ich das Verzeichnis erst recht wieder lokal an die richtige Stelle kopieren/bind-mounten, damit ssh die Userconfig findet...

Und wenn ich von einem zu betreuenden Rechner auf einen anderen zugreifen möchte, benötige ich die Konfig incl. private-Key auch auf diesem Server... Wie bringe ich den ganzen Sermon dort hin?

Genau für solche Szenarien wäre natürlich git mit einem privaten Repo angesagt... Dann kann ich auf einem Rechner die Konfig anpassen und habs beim nächsten pull auch auf den anderen Rechnern aktualisiert.
Oder legt man so etwas in ein NFS-Share, welches beim Login an die entsprechende Stelle gemountet wird? Ist das sicher?

Wie löst ihr so etwas?

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

uname
Beiträge: 9349
Registriert: 03.06.2008 09:33:02

Re: ssh-Keys portabel verwahren

Beitrag von uname » 26.04.2018 09:57:32

scientific hat geschrieben:Wie verwaltet man solche Keys und Configs aber sinnvollerweise, wenn man auf mehreren Rechnern zu tun hat? Wie nehme ich die am besten mit?
Eine wirkliche Lösung habe ich nicht. Aber warum überhaupt mitnehmen? Vielleicht kannst du die Anmeldung auf einen Server auslagern.
scientific hat geschrieben:Den private Key hab ich auf meinem Arbeitsrechner und der ist mittels Passwort geschützt.
Auf einen Anmeldeserver (oder sogar dein Arbeitsrechner mit SSH-Server) legst du einen persönlichen Benutzer inkl. deiner SSH-Konfiguration (Configs und Private Key) ab. Den Server selbst kannst du z. B. per Passwort oder OTP (Debianlibpam-otpw und Debianotpw-bin) erreichen. Da du deinen privaten Key mit einen eigenen Passwort auf den Server schützt sollte es keinen Unterschied machen ob du das Passwort des Private Keys auf einen Client direkt oder über einen Client remote auf einen Anmeldeserver eingibst. Mit screen, tmux und ssh-agent kannst du evtl. den Zugriff vereinfachen. Einen Datentransfer zwischen Client über Server zum Ziel wirst du etwas umständlicher über einen Local-SSH-Port-Forwarding-Tunnel durchführen müssen. Auf den jeweiligen Client benötigst du nur noch einen SSH-Client, dein Benutzername und das Passwort/OTP.

Benutzeravatar
bluestar
Beiträge: 506
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ssh-Keys portabel verwahren

Beitrag von bluestar » 26.04.2018 10:11:12

scientific hat geschrieben: ↑ zum Beitrag ↑
26.04.2018 00:14:31
Wie löst ihr so etwas?
Ich habe erst einmal den dateibasierten SSH-Key abgeschafft und nutze einen Nitrokey Pro (USB Smartcard Stick) wo mein private SSH-Key lagert, so kann ich das leaken schon mal einfacher verhindern, ansonsten nutze ich SSH Agent Forwarding, so das ich von Server A zu Server B springen kann. Eine ssh_config nutze ich nicht, sondern direkt die FQDNs.

Benutzeravatar
cosinus
Beiträge: 189
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: ssh-Keys portabel verwahren

Beitrag von cosinus » 26.04.2018 10:35:00

scientific hat geschrieben: ↑ zum Beitrag ↑
26.04.2018 00:14:31
Wie verwaltet man solche Keys und Configs aber sinnvollerweise, wenn man auf mehreren Rechnern zu tun hat? Wie nehme ich die am besten mit?
Wenn musst du das auf doch eh nur 1x pro Rechner machen. Bist du (täglich?) an so vielen verschiedenen Rechnern das erste Mal angemeldet, dass sich das echt lohnt über eine andere Lösung nachzudenken? Also anders als den aktuellen privatekey auf nen Stick zu haben? Und wenn du den Stick nicht dabei hast, den key aber dennoch brauchst, dann könnte man ihn in die dropbox legen oder so.

Benutzeravatar
bluestar
Beiträge: 506
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ssh-Keys portabel verwahren

Beitrag von bluestar » 27.04.2018 00:12:14

cosinus hat geschrieben: ↑ zum Beitrag ↑
26.04.2018 10:35:00
Und wenn du den Stick nicht dabei hast, den key aber dennoch brauchst, dann könnte man ihn in die dropbox legen oder so.
Jaa, packt alle eure private Keys auf die Server von Dropbox

Benutzeravatar
cosinus
Beiträge: 189
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: ssh-Keys portabel verwahren

Beitrag von cosinus » 27.04.2018 08:29:27

bluestar hat geschrieben: ↑ zum Beitrag ↑
27.04.2018 00:12:14
Jaa, packt alle eure private Keys auf die Server von Dropbox
1. war das nur ein Vorschlag, muss ja nicht Dropbox sein :oops:
2. selbstverständlich lädt man den da nicht im Klartext hoch :)

scientific
Beiträge: 2967
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: ssh-Keys portabel verwahren

Beitrag von scientific » 27.04.2018 21:39:04

Ich hab auch an eigenen Filesharing-Server gedacht, nur für mich, nur für diesen Zweck... Statt Dropbox...
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Benutzeravatar
cosinus
Beiträge: 189
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: ssh-Keys portabel verwahren

Beitrag von cosinus » 27.04.2018 23:44:53

scientific hat geschrieben: ↑ zum Beitrag ↑
27.04.2018 21:39:04
Ich hab auch an eigenen Filesharing-Server gedacht, nur für mich, nur für diesen Zweck... Statt Dropbox...
Stinknormaler webspace würde ja schon reichen.

Benutzeravatar
bluestar
Beiträge: 506
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ssh-Keys portabel verwahren

Beitrag von bluestar » 28.04.2018 07:27:19

In meinen Augen führt ihr das Thema ad absurdum... Da kann man doch auch gleich auf Key-Files verzichten und auf Passwörter zum Login setzen.

uname
Beiträge: 9349
Registriert: 03.06.2008 09:33:02

Re: ssh-Keys portabel verwahren

Beitrag von uname » 28.04.2018 20:01:25

Sehe ich anders. Einen privaten Schlüssel per Passphrase zu entschlüsseln ist was ganz anderes als ein Passwort. Genauer ist die Frage wo Passphrase bzw. Passwort eingegeben, hin übertragen und im Klartext vorhanden sein müssen. Vergleiche EC-Karten-PIN mit Facebook-Passwort.

Benutzeravatar
bluestar
Beiträge: 506
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ssh-Keys portabel verwahren

Beitrag von bluestar » 29.04.2018 09:27:11

Ich bin bei dir, wenn der private Schlüssel sorgsam verwahrt ist. Wenn jmd. seinen verschlüsselten Private Key bei Dropbox oder einem anderen File-Hoster, dann hat das mit Sicherheit nicht mehr viel zu tun.

scientific
Beiträge: 2967
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: ssh-Keys portabel verwahren

Beitrag von scientific » 29.04.2018 09:53:58

Wenn ich selbst $FILEHOSTER bin?
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Benutzeravatar
bluestar
Beiträge: 506
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ssh-Keys portabel verwahren

Beitrag von bluestar » 29.04.2018 10:06:21

scientific hat geschrieben: ↑ zum Beitrag ↑
29.04.2018 09:53:58
Wenn ich selbst $FILEHOSTER bin?
Dann schützt du den Zugriff auf den Key per Uername und Passwort, oder?

Benutzeravatar
cosinus
Beiträge: 189
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: ssh-Keys portabel verwahren

Beitrag von cosinus » 01.05.2018 15:28:37

bluestar hat geschrieben: ↑ zum Beitrag ↑
29.04.2018 10:06:21
Dann schützt du den Zugriff auf den Key per Uername und Passwort, oder?
Was wäre dnen die alternative? Mit USB-Sticks jonglieren, die ein verschlüsseltes Filesystem beinhalten? :?

scientific
Beiträge: 2967
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: ssh-Keys portabel verwahren

Beitrag von scientific » 01.05.2018 19:00:40

Die Angriffsfläche ist geringer, weil du den Stick physisch haben musst. Allerdings hast du keine Sperren für brute-force Angriffe auf den Stick.
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Antworten