Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
linux:ssh [2021/02/24 11:14] – [Troubleshooting] adilinux:ssh [2024/02/26 14:23] (aktuell) adi
Zeile 11: Zeile 11:
  
 ===== SSH Ohne Password ===== ===== SSH Ohne Password =====
-Möchte man per Skript einen Befehl über ssh senden, dann würde das Skript immer nach dem Password fragen. +Möchte man per Script einen Befehl über ssh senden, dann würde das Script immer nach dem Password fragen. 
-Wenn dieses Skript dann aber per "cron" laufen soll, muss man hier eine andere Authentifizierungsmethode wählen: Host-Key+Wenn dieses Script dann aber per "cron" laufen soll, muss man hier eine andere Authentifizierungsmethode wählen: Host-Key
  
-==== RSA-Key erstellen ====+==== Public-Key erstellen ====
 So erstellt man einen RSA Host-Key: So erstellt man einen RSA Host-Key:
-  ssh-keygen -t rsa+  ssh-keygen -t [rsa|Ed25519]
 Zunächst fragt das Programm nach dem Pfad zur RSA-Datei. Diesen kann man einfach bestätigen. Zunächst fragt das Programm nach dem Pfad zur RSA-Datei. Diesen kann man einfach bestätigen.
 Nimmt man hier aber einen anderen Dateinamen oder Pfad, muss man bei der SSH-Verbindung den Pfad explizit angeben. Nimmt man hier aber einen anderen Dateinamen oder Pfad, muss man bei der SSH-Verbindung den Pfad explizit angeben.
Zeile 45: Zeile 45:
 echo echo
 echo echo
-echo "Dieses Skript kopiert den öffentlichen SSH-RSA Key auf den unten angegebenen PC."+echo "Dieses Script kopiert den öffentlichen SSH-RSA Key auf den unten angegebenen PC."
 echo "Danach kann man sich mit einer Passphrase am PC anmelden." echo "Danach kann man sich mit einer Passphrase am PC anmelden."
 echo echo
Zeile 108: Zeile 108:
 <code bash>apt install autossh</code> <code bash>apt install autossh</code>
  
-Verbindungsskript zum Aufbau des Reverse SSH Tunnel anlegen.+Verbindungsscript zum Aufbau des Reverse SSH Tunnel anlegen.
  
 Inhalt: Inhalt:
Zeile 114: Zeile 114:
 /usr/bin/autossh -p2000 -fNC -R 10011:<IP_REMOTEZIEL_SERVER | localhost>:22 <USER>@<SSH_GATEWAY_IP></code> /usr/bin/autossh -p2000 -fNC -R 10011:<IP_REMOTEZIEL_SERVER | localhost>:22 <USER>@<SSH_GATEWAY_IP></code>
  
-<code bash>chmod +x <SKRIPT>.sh</code>+<code bash>chmod +x <SCRIPT>.sh</code>
  
-Nun noch das Skript per Crontab starten lassen+Nun noch das Script per Crontab starten lassen
 <code bash>crontab -e</code> <code bash>crontab -e</code>
 Inhalt einfügen: Inhalt einfügen:
-<code>@reboot <PFAD_ZU_SKRIPT.sh></code>+<code>@reboot <PFAD_ZU_SCRIPT.sh></code>
  
 ==== SSH-Tunnel erweitern ==== ==== SSH-Tunnel erweitern ====
Zeile 130: Zeile 130:
 Wenn bei einer Verbindung folgende Antwort kommt: <code>Unable to negotiate with <IP-ADRESSE> port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1</code> Wenn bei einer Verbindung folgende Antwort kommt: <code>Unable to negotiate with <IP-ADRESSE> port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1</code>
 Dann die Verbindung wie folgt aufbauen <code bash>ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 <IP-ADRESSE></code>oder <code bash>ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes256-cbc <IP-ADRESSE></code> oder <code bash>ssh -oHostKeyAlgorithms=+ssh-dss -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes256-cbc <IP-ADRESSE></code> Dann die Verbindung wie folgt aufbauen <code bash>ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 <IP-ADRESSE></code>oder <code bash>ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes256-cbc <IP-ADRESSE></code> oder <code bash>ssh -oHostKeyAlgorithms=+ssh-dss -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes256-cbc <IP-ADRESSE></code>
 +
 +Man kann in der ''~/.ssh/config'' das auch dauerhaft für den Host definieren:
 +<code bash>Host <HOSTNAME> <FQDN>
 +  KexAlgorithms diffie-hellman-group1-sha1
 +  Ciphers 3des-cbc</code>
  
 Ggf. folgendes in der ''/etc/ssh/ssh_config'' einfügen/anpassen um die Parameter automatisch bei Verbindung zu verwenden: <code>KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1 Ggf. folgendes in der ''/etc/ssh/ssh_config'' einfügen/anpassen um die Parameter automatisch bei Verbindung zu verwenden: <code>KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
 Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr</code> Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr</code>
Navigation
Drucken/exportieren
QR-Code
QR-Code SSH (erstellt für aktuelle Seite)