2009-01-06 1 views
5

Ich muss ein Skript erstellen, die automatisch einen SSH-Tunnel einrichten. Ich denke, dass ein dedizierter SSH-Schlüssel ohne Passwort ein guter Anfang ist, aber ich konnte nicht finden, ob dies möglich ist und wie es gemacht wird. Dieser Schlüssel sollte begrenzte Privilegien haben (nur den Tunnel aufstellen), aber ich brauche einen anderen privaten Schlüssel (mit einem Passwort) für mich.Erstellen Sie einen passwortlosen sekundären SSH-Schlüssel zum Einrichten eines SSH-Tunnels

Danke!

Antwort

8

Ok, ich habe die Antwort gefunden.

Zuerst ssh-keygen -f theNewPrivateKey andernfalls wird der alte private Schlüssel überschrieben. Zweitens, ssh -i theNewPrivateKey [email protected] Die Option -i ändert den für die Authentifizierung verwendeten privaten Schlüssel.

Jetzt kann ich mein Skript ausprobieren.


Edit: Wie funktioniert meine neue Schlüssel hat eine begrenzte Privilegien:

Wenn der öffentliche Schlüssel kopieren zu $ ​​HOME/.ssh/authorized_keys2 Datei des Zielcomputers, habe ich dieses:

command="sleep 99999999999" ssh-dss AAAAB3NzaC1kc3MA... 
(+ the rest of the key) 

Dann ist der einzige Befehl erlaubt, für immer zu warten. Da der Zweck dieses Schlüssels war, einen umgekehrten SSH-Tunnel zu erstellen, sollte dies in Ordnung sein. ich dann erstellen Sie den Tunnel:

ssh -T -R 7878:localhost:22 -i .ssh/mynewkey [email protected] 

Endlich kann ich von meinem Computer zu Hause einloggen:

ssh [email protected] -p7878 

Ich hoffe, dass dies nicht Sicherheitsfragen hat. Wenn das eine schlechte Sache ist, lass es mich wissen!

+1

Wie hätte dieser neue Schlüssel "eingeschränkte Privilegien"? – innaM

+1

Weil es nur eine Sache tun kann, 'sleep'. – Keltia

+0

Danke, dass Sie dies verstanden haben. – innaM

1

Versuchen Sie, die

ssh-keygen

Befehl.

+1

Vergessen Sie nicht die Option -f oder dies überschreibt den alten privaten Schlüssel – ascobol

0

Ich hatte eine ähnliche Situation, wo ich einen Server-Inhalt automatisch synchronisieren musste, ohne das Passwort in meinem Robocopy-Skript weitergeben zu müssen.

Diese Link hat mir geholfen.

Verwandte Themen