Ich wollte einen neuen Benutzer auf meinem Digital Ocean Server erstellen und mich dann mit SSH als dieser Benutzer anmelden, erhalte jedoch den Fehler, dass mir der Zugriff verweigert wird. Hier sind die Schritte, die ich versucht habe.
Auf lokaler Maschine:
#create a new key
ssh-keygen -b 1024 -f userblue -t dsa
chmod 600 userblue.pub
#copy the public key over to a temp dir on the target server using my root user/key
scp userblue.pub root@mytargetserver -i id_rsa:/tmp
Jetzt logge ich mich als root auf dem Zielserver ein, um einen neuen Benutzer zu erstellen und den öffentlichen Schlüssel in authorized_keys zu kopieren
#create a new user and make an .ssh dir for this user
useradd -m -d /home/userblue -s /bin/bash userblue
su - userblue
cd /home/userblue
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
#move the public key I created and add it to authorized_keys
mv /tmp/userblue.pub /home/userblue/.ssh/
cat useable.pub >> /home/userblue/.ssh/authorized_keys
Jetzt melde ich mich ab und gehe zurück zu meinem lokalen Computer, wobei ich den privaten Schlüssel userblue benutze, um mich anzumelden
ssh userblue@mytargetserver -i userblue
Erlaubnis verweigert (publickey)
Irgendeine Idee, warum mir die Erlaubnis verweigert wird? Ich habe ssh mit -vvv ausprobiert, aber für mich ist es komplett griechisch. Habe keine Ahnung worauf zu achten ist.
Antworten:
In meiner / etc / sshd-Datei hatte ich Match User, aber mein neuer Benutzer, den ich erstellt habe, war nicht dort, deshalb. Nach dem Hinzufügen eines weiteren ", User userblue" hat es funktioniert!
quelle