it-swarm.com.de

Wie ssh zu localhost ohne Passwort?

EDIT: Genau setzen, was gemacht wurde

Ich brauche SSH localhost ohne Passwort, die übliche Art und Weise (mit öffentlichen Schlüsseln) funktioniert nicht.

[email protected]:~$ rm -rf .ssh/*
[email protected]:~$ ssh-keygen -t rsa > /dev/null 
Enter file in which to save the key (/home/user/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
[email protected]:~$ ls .ssh/
id_rsa  id_rsa.pub
[email protected]:~$ ssh-copy-id -i localhost 
The authenticity of Host 'localhost (::1)' can't be established.
RSA key fingerprint is f7:87:b5:4e:31:a1:72:11:8e:5f:d2:61:bd:b3:40:1a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
[email protected]'s password: 
Now try logging into the machine, with "ssh 'localhost'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

[email protected]:~$ ssh-agent $Shell
[email protected]:~$ ssh-add -L
The agent has no identities.
[email protected]:~$ ssh-add 
Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa)
[email protected]:~$ ssh-add -L
ssh-rsa ...MY KEY HERE

[email protected]:~$ ssh-copy-id -i localhost 
[email protected]'s password: 
Now try logging into the machine, with "ssh 'localhost'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

[email protected]:~$ ssh localhost echo 'testing'
[email protected]'s password: 

[email protected]:~$ 

Wie Sie im letzten Befehl sehen können, wird immer noch das Passwort abgefragt. Wie kann ich das beheben? Ubuntu-10.04, OpenSSH_5.3p1

EDIT2:

Hinzufügen von Informationen zur sshd

[email protected]:~$ cat /etc/ssh/sshd_config | grep Authentication
# Authentication:
RSAAuthentication yes
PubkeyAuthentication yes
RhostsRSAAuthentication no
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
ChallengeResponseAuthentication no
# PasswordAuthentication yes

EDIT3: Ergebnis von $ ssh -vv localhost

$ssh -vv localhost
...
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/user/.ssh/identity
debug1: Offering public key: /home/user/.ssh/id_rsa
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /home/user/.ssh/id_dsa
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
[email protected]'s password: 
50
canesin

Ich habe die folgenden 3 Schritte ausgeführt, um das Login ohne Passwort zu erstellen

1. ssh-keygen -t rsa
Press enter for each line 
2. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3. chmod og-wx ~/.ssh/authorized_keys 
123
user2402070

Habe das Problem entdeckt.

Server mit Debugging ausführen:

$sshd -Dd

Ich habe festgestellt, dass es nicht möglich war, den auth_key zu lesen

$chmod 750 $HOME

Behoben.

16
canesin

Eine andere mögliche Antwort: Die authorized_keys-Datei ist möglicherweise vorhanden und kann gelesen werden. Wenn es jedoch gruppen- oder weltweit beschreibbar ist, werden Sie trotzdem zur Eingabe des Kennworts aufgefordert. Die Antwort auf dieses Problem ist

chmod og-wx ~/.ssh/authorized_keys
12
shipr

Führen Sie die folgenden Schritte aus

ssh-keygen -t rsa -C "[email protected]"
# Creates a new ssh key, using the provided email as a label
# Generating public/private rsa key pair.

Verwenden Sie die Standarddatei und die leere Passphrase (drücken Sie einfach die Eingabetaste in den nächsten 2 Schritten).

# start the ssh-agent in the background
eval "$(ssh-agent -s)"
# Agent pid 59566
ssh-add 

Kopieren Sie den Inhalt von ~/.ssh/id_rsa.pub nach ~/.ssh/authorised_keys

Stellen Sie sicher, dass folgende Berechtigungen gelten

 ls -l .ssh/
 total 20
-rw-r--r--. 1 swati swati  399 May  5 14:53 authorized_keys
-rw-r--r--. 1 swati swati  761 Jan 12 15:59 config
-rw-------. 1 swati swati 1671 Jan 12 15:44 id_rsa
-rw-r--r--. 1 swati swati  399 Jan 12 15:44 id_rsa.pub
-rw-r--r--. 1 swati swati  410 Jan 12 15:46 known_hosts 

Stellen Sie außerdem sicher, dass die Berechtigungen für das .ssh-Verzeichnis vorhanden sind. Das ist auch wichtig

drwx------.   2 swati swati    4096 May  5 14:56 .ssh
5
swatisinghi

Zwei einfache Schritte:

ssh-keygen -t rsa <Press enter for each line>
ssh-copy-id localhost

Passwort eingeben und fertig.

4
Rohit Patwa

wie die akzeptierte Antwort, , wenn Sie auf ein Problem von 

    Agent admitted failure to sign using the key.

du musst 

    ssh-add
1
J.stack

Der richtige und sichere Weg, dies zu tun, ist das Kopieren der Schlüssel, wie hier gesagt wurde. 

In anderen Fällen kann sshpass nützlich sein.

sshpass -p raspberry ssh [email protected]

Denken Sie daran, dass dies überhaupt nicht sicher ist. Die Verwendung in sicheren Umgebungen ist zwar keine gute Idee, kann jedoch für Skripte, automatisierte Tests usw. nützlich sein.

dies kann mit kombiniert werden

ssh -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no [email protected]

um Bestätigungsfragen zu vermeiden, die das Scripting verhindern.

Verwenden Sie dies wiederum nur in Entwicklungssystemen, in denen verschiedene Maschinen eine IP-Adresse verwenden und Sicherheit nicht wichtig ist.

https://ownyourbits.com/2017/02/22/easy-passwordless-ssh-with-sshh/

1
nachoparker

Ich hatte das gleiche Problem, auch nachdem ich alle Empfehlungen befolgt hatte, aber ich fand heraus, dass es sich um eine Störung des Gnome-Keyring handelte.

Lösung:

  1. Gehen Sie zur Suche und suchen Sie nach "Startanwendungen".
  2. Wenn "SSH Key Agent" angezeigt wird, deaktivieren Sie das Kontrollkästchen
  3. Starten Sie den Computer neu und stellen Sie eine Verbindung zu localhost her.
0
Ananth Joshi

Zu Centos 7

LÖSUNG

1 create rsa key
2 vim /etc/ssh/ssh_config
3
#   IdentityFile ~/.ssh/identity
uncoment this line > IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa

Hinweis * Ich habe dies nach dem Kopieren des Schlüssels und einiger der anderen Antworten vor diesem getan. Aber ich bin mir ziemlich sicher, dass dies alles ist, was Sie tun müssen, aber wenn nicht, würde ich den RSA-Schlüssel an Authorized_keys anhängen und auch die 

ssh-copy-id an Benutzername @ localhost

0
Don Davis

Ich habe das ssh-Login-Problem auf diese Weise gelöst. 

Ich generiere die Schlüsselpaare auf meiner Serverseite und scp dann den privaten Schlüssel zu meinem Windows 10-Computer zurück. Jetzt kann ich mich ohne Passwort anmelden.

Früher habe ich Schlüsselpaare verwendet, die von meinem Windows 10-Laptop generiert wurden, und es gab überhaupt kein Glück.

0
LazyRay