jochenv
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
Hallo zusammen ich möchte mich auf meinem zweiten Server und einem PC, genau so ohne Passwort anmelden wie auf meinem ersten Server.
Leider bekomme ich dies nicht hin und werde immer nach dem Passwort gefragt. Ich würde dann, wenn das funktioniert, gern auch auf die besser Verschlüssel Ed25519 umsteigen. Das aber im Zweiten Schritt. Auf meinem Laptop
ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub jochen@server2:/tmp dann auf der Server2
cat /tmp/id_rsa.pub >>~/.ssh/authorized_keys
sudo service ssh restart sollte doch funktionieren oder habe ich da etwas vergessen ??? Gruß Jochen
|
frostschutz
Anmeldungsdatum: 18. November 2010
Beiträge: 7529
|
Steht was schönes in den Logs? SSH ist empfindlich was die Rechte dieser Dateien (gesamter Pfad zur authorized_keys/id_rsa/usw.) angeht, und ignoriert sie komplett wenn die falsch gesetzt sind und das können sie nach dem cat schon sein, wenns vorher nicht existiert hat oder nicht richtig war. Das cat funktioniert auch nur wenn die Datei am Ende ein Zeilenumbruch hatte. Normalerweise zwar der Fall aber gibt eben auch keine Garantie dafür. Statt das selber mit scp, cat usw. könnte man es auch mit ssh-copy-id probieren.
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13308
|
jochenv schrieb: ... werde immer nach dem Passwort gefragt.
Versuch mal auf dem ssh-Client, mit der Option "PasswordAuthentication no". Wie sind jetzt auf dem Server2, die Ausgaben von:
sudo sshd -t
systemctl status ssh
?
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
frostschutz schrieb: Steht was schönes in den Logs?
in der syslog ... wenn ich mich via ssh anmelde
Mar 21 23:24:55 server08 systemd[1]: session-5.scope: Deactivated successfully.
Mar 21 23:25:52 server08 systemd[1]: Started Session 6 of User jochen.
mehr steht dort nicht für das anmelden.
SSH ist empfindlich was die Rechte dieser Dateien (gesamter Pfad zur authorized_keys/id_rsa/usw.) angeht, und ignoriert sie komplett wenn die falsch gesetzt sind und das können sie nach dem cat schon sein, wenns vorher nicht existiert hat oder nicht richtig war.
ok. kopiere das die Tage noch mal ...und melde mich. Das cat funktioniert auch nur wenn die Datei am Ende ein Zeilenumbruch hatte. Normalerweise zwar der Fall aber gibt eben auch keine Garantie dafür.
habe die Datei unverändert übernommen. Schau ich mir auch noch mal an.
Statt das selber mit scp, cat usw. könnte man es auch mit ssh-copy-id probieren.
Auch das probiere ich dann .. Danke
Gruß Jochen
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
lubux schrieb: jochenv schrieb: ... werde immer nach dem Passwort gefragt.
Versuch mal auf dem ssh-Client, mit der Option "PasswordAuthentication no".
was muss ich auf dem ssh-Client eingeben ?
Wie sind jetzt auf dem Server2, die Ausgaben von:
sudo sshd -t
systemctl status ssh
?
jochen@server08:~$ sudo sshd -t
jochen@server08:~$ systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-03-21 23:17:02 UTC; 21min ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 956 (sshd)
Tasks: 1 (limit: 19002)
Memory: 7.8M
CPU: 158ms
CGroup: /system.slice/ssh.service
└─956 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"
Mär 21 23:17:02 server08 systemd[1]: Started OpenBSD Secure Shell server.
Mär 21 23:18:12 server08 sshd[2039]: Authentication refused: bad ownership or modes for directory /home/jochen/.ssh
Mär 21 23:18:17 server08 sshd[2039]: Accepted password for jochen from 192.168.1.199 port 47072 ssh2
Mär 21 23:18:17 server08 sshd[2039]: pam_unix(sshd:session): session opened for user jochen(uid=1000) by (uid=0)
Mär 21 23:22:59 server08 sshd[2203]: Authentication refused: bad ownership or modes for directory /home/jochen/.ssh
Mär 21 23:23:04 server08 sshd[2203]: Accepted password for jochen from 192.168.1.199 port 57712 ssh2
Mär 21 23:23:04 server08 sshd[2203]: pam_unix(sshd:session): session opened for user jochen(uid=1000) by (uid=0)
Mär 21 23:25:48 server08 sshd[2280]: Authentication refused: bad ownership or modes for directory /home/jochen/.ssh
Mär 21 23:25:52 server08 sshd[2280]: Accepted password for jochen from 192.168.1.199 port 52646 ssh2
Mär 21 23:25:52 server08 sshd[2280]: pam_unix(sshd:session): session opened for user jochen(uid=1000) by (uid=0)
jochen@server08:~$ Gruß Jochen
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13308
|
jochenv schrieb: Mär 21 23:18:12 server08 sshd[2039]: Authentication refused: bad ownership or modes for directory /home/jochen/.ssh
Wie sind die Ausgaben von:
pwd
whoami
ls -la | grep ssh
ls -la .ssh
?
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 7846
Wohnort: Münster
|
jochenv schrieb: […]
jochen@server08:~$ systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-03-21 23:17:02 UTC; 21min ago
Docs: man:sshd(8)
man:sshd_config(5)
[…]
Mär 21 23:17:02 server08 systemd[1]: Started OpenBSD Secure Shell server.
Mär 21 23:18:12 server08 sshd[2039]: Authentication refused: bad ownership or modes for directory /home/jochen/.ssh
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
lubux schrieb:
Wie sind die Ausgaben von:
pwd
whoami
ls -la | grep ssh
ls -la .ssh
?
jochen@server08:~$ pwd
/home/jochen
jochen@server08:~$ cd .ssh
jochen@server08:~/.ssh$ pwd
/home/jochen/.ssh
jochen@server08:~/.ssh$ whoami
jochen
jochen@server08:~/.ssh$ ls -la | grep ssh
jochen@server08:~/.ssh$ ls -la .ssh
ls: cannot access '.ssh': No such file or directory
jochen@server08:~/.ssh$ cd ..
jochen@server08:~$ ls -la | grep ssh
-rw------- 1 jochen jochen 34 Mär 21 23:38 .lesshst
drwxrwxrwx 3 jochen jochen 4096 Mär 19 01:22 .ssh
jochen@server08:~$ ls -la .ssh
total 24
drwxrwxrwx 3 jochen jochen 4096 Mär 19 01:22 .
drwxr-x--- 7 jochen jochen 4096 Mär 21 23:38 ..
-rw-rw-r-- 1 jochen jochen 1894 Mär 19 02:01 authorized_keys
-rw------- 1 jochen jochen 2602 Mär 19 01:20 id_rsa
-rw-r--r-- 1 jochen jochen 569 Mär 19 01:20 id_rsa.pub
jochen@server08:~$ Gruß Jochen
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13308
|
jochenv schrieb: jochen@server08:~$ ls -la | grep ssh
-rw------- 1 jochen jochen 34 Mär 21 23:38 .lesshst
drwxrwxrwx 3 jochen jochen 4096 Mär 19 01:22 .ssh
Ändere die Rechte des .ssh-Verzeichnises, von 777 auf 700:
chmod 700 .ssh jochenv schrieb: jochen@server08:~$ ls -la .ssh
total 24
drwxrwxrwx 3 jochen jochen 4096 Mär 19 01:22 .
drwxr-x--- 7 jochen jochen 4096 Mär 21 23:38 ..
-rw-rw-r-- 1 jochen jochen 1894 Mär 19 02:01 authorized_keys
-rw------- 1 jochen jochen 2602 Mär 19 01:20 id_rsa
-rw-r--r-- 1 jochen jochen 569 Mär 19 01:20 id_rsa.pub
... und die der authorized_keys-Datei, von 664 auf 600:
chmod 600 authorized_keys
BTW: Warum befinden sich die Dateien id_rsa und id_rsa.pub, auf dem Server? Benutzt Du evtl. auch den ssh-Client auf dem Server, für eine ssh-Verbindung (per pubkey) zu einem anderen sshd-Server und hast deshalb, diese keys auf dem Server erzeugt/generiert??
|
Akedia
Anmeldungsdatum: 3. Januar 2018
Beiträge: 69
|
Unter 22.04 ist ssh-rsa nicht mehr in den pubkey accepted algorithms. Entweder musst Du es ausdrücklich zulassen (sshd_config) oder gleich Ed25519 verwenden.
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
lubux schrieb:
Ändere die Rechte des .ssh-Verzeichnises, von 777 auf 700:
chmod 700 .ssh
... und die der authorized_keys-Datei, von 664 auf 600:
chmod 600 authorized_keys
Funktioniert ...
Ich kann jetzt auf beide Server und auf den PC, vom Laptop aus zugreifen ohne das Passwort ein zu geben. Jetzt werde ich, dass mal mit Ed25519 versuchen. Wie ist dass, wenn ich jetzt mit einen zweiten Laptop auf die Server zugreifen möchte ohne das Passwort ein zu geben? Gruß JOchen
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13308
|
jochenv schrieb: Wie ist dass, wenn ich jetzt mit einen zweiten Laptop auf die Server zugreifen möchte ohne das Passwort ein zu geben?
Der zweite Laptop ist dann der zweite bzw. ein anderer (ssh-)Client und für den musst Du seine eigene Schlüssel für die Anmeldung, generieren und benutzen.
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
lubux schrieb: jochenv schrieb: Wie ist dass, wenn ich jetzt mit einen zweiten Laptop auf die Server zugreifen möchte ohne das Passwort ein zu geben?
Der zweite Laptop ist dann der zweite bzw. ein anderer (ssh-)Client und für den musst Du seine eigene Schlüssel für die Anmeldung, generieren und benutzen.
Ja genau, ein anderer (ssh.)Client mit einen Schlüssel. Auf dem Server würden dann ab zwei Dateien (authorized_keys) liegen, sprich mal müsste diese umbenennen z.B. authorized_keys.laptop1 und authorized_keys.laptop2. Wie handhabt man dann den Zugriff ? Vom Client
ssh jochen@laptop1 -i /home/jochen/.ssh/authorized_keys.laptop1 oder besser auf dem Server eine config-Datei $HOME/.ssh/config hinterlegen
Host laptop1
HostName 123.456.789.1
User jochen
IdentityFile /home/jochen/.ssh/authorized_keys.laptop1
Host laptop2
HostName 123.456.789.2
User jochen
IdentityFile /home/jochen/.ssh/authorized_keys.laptop2 Wichtig ist mir, das hinterher auch sshfs mit Eintrag in der fstab funktioniert. Gruß Jochen
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13308
|
jochenv schrieb: Ja genau, ein anderer (ssh.)Client mit einen Schlüssel. Auf dem Server würden dann ab zwei Dateien (authorized_keys) liegen, sprich mal müsste diese umbenennen z.B. authorized_keys.laptop1 und authorized_keys.laptop2.
Nein, keine zwei Dateien. Du kannst in die authorized_keys-Datei, mehrere pubkeys (d. h. auch von verschiedenen ssh-Clients) eintragen. Siehe auch: https://wiki.ubuntuusers.de/SSH/#Public-Key-Authentifizierung
Der (oder die) öffentliche(n) Schlüssel des Benutzers befindet sich dabei in der Datei ~/.ssh/authorized_keys des Zielsystems (Server). jochenv schrieb: Wie handhabt man dann den Zugriff ? Vom Client
ssh jochen@laptop1 -i /home/jochen/.ssh/authorized_keys.laptop1 oder besser auf dem Server eine config-Datei $HOME/.ssh/config hinterlegen
Host laptop1
HostName 123.456.789.1
User jochen
IdentityFile /home/jochen/.ssh/authorized_keys.laptop1
Host laptop2
HostName 123.456.789.2
User jochen
IdentityFile /home/jochen/.ssh/authorized_keys.laptop2
Mit dem Client musst Du in dessen config, den Pfad und die Schlüsseldatei des Clienten benutzen, z. B.:
IdentityFile ~/.ssh/<private_ssh_key>
und nicht die des Servers. Ist doch im UU-Wiki gut erklärt: https://wiki.ubuntuusers.de/SSH/#ssh-config
|
jochenv
(Themenstarter)
Anmeldungsdatum: 23. April 2016
Beiträge: 604
Wohnort: Kurhessen
|
Soo... Keys umgestellt auf Ed25519. Zugriff auf Server ohne Passwort funktioniert.
auf dem Server
tail -f /var/log/auth.log
Mar 27 00:50:31 server06 sshd[5554]: Accepted publickey for jochen from 192.168.1.199 port 35970 ssh2: RSA SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Mar 27 00:50:31 server06 sshd[5554]: pam_unix(sshd:session): session opened for user jochen by (uid=0)
Mar 27 00:50:31 server06 systemd-logind[1004]: New session 113 of user jochen. Laptop ... sshfs:
funktioniert auch ohne Passwort.
sshfs jochen@192.168.1.6:/mnt/video/ /media/server-video/
auf dem Server
tail -f /var/log/auth.log
ar 27 00:54:45 server06 sshd[5685]: Accepted publickey for jochen from 192.168.1.199 port 44062 ssh2: RSA SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Mar 27 00:54:45 server06 sshd[5685]: pam_unix(sshd:session): session opened for user jochen by (uid=0)
Mar 27 00:54:45 server06 systemd-logind[1004]: New session 116 of user jochen. fstab ... Laptop:
...
sshfs#jochen@192.168.1.6:/mnt/video/ /media/server-video/ fuse uid=1000,gid=100,umask=0,allow_other,_netdev 0 0
aufruf
~$ sudo mount -a
jochen@192.168.1.6's password:
~$
auf dem Server
tail -f /var/log/auth.log
Mar 27 01:02:01 server06 CRON[5828]: pam_unix(cron:session): session opened for user root by (uid=0)
Mar 27 01:02:01 server06 CRON[5828]: pam_unix(cron:session): session closed for user root
Mar 27 01:02:16 server06 sshd[5826]: Accepted password for jochen from 192.168.1.199 port 46928 ssh2
Mar 27 01:02:16 server06 sshd[5826]: pam_unix(sshd:session): session opened for user jochen by (uid=0)
Mar 27 01:02:16 server06 systemd-logind[1004]: New session 124 of user jochen. über die fstab wird der User root aufgerufen und nicht ich.
Die Datei authorized_keys habe ich zuvor auf dem Server in /root/.ssh und die Datei id_ed25519 auf dem Laptop in /root/.ssh kopiert.
Die Rechte sind auch noch auf 600. Was habe ich noch vergessen ??? Gruß Jochen
|