Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:ssh

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:ssh [2019/02/13 04:38] – [mit authorized_keys command] ingo_wichmannadmin_grundlagen:ssh [2025/08/14 12:24] (aktuell) – [Syntax prüfen] ingo_wichmann
Zeile 1: Zeile 1:
 ====== ssh ====== ====== ssh ======
 +
 +===== ssh in firewalld freischalten =====
 +
 +**Enable firewall rule for ssh.**
 +
 +  sudo firewall-cmd --permanent --add-service=ssh
 +  success
 +
 +**Reload firewall rules.**
 +
 +  sudo firewall-cmd --reload
 +  success
 +
 +oder Firewall abschalten:
 +
 +  systemctl stop firewalld.service
 +
 +
 ===== Einsatzzwecke von ssh ===== ===== Einsatzzwecke von ssh =====
   * Fernadministration   * Fernadministration
Zeile 20: Zeile 38:
   scp <Datei> <Benutzer>@<Rechner>:   scp <Datei> <Benutzer>@<Rechner>:
  
 +====== Syntax sshd prüfen ======
 +Vor dem Neustart des Dienstes die Konfigurationsdatei auf Syntaxfehler prüfen:
 +  sshd -t
 +oder ausführlicher:
 +  sshd -dddt
 ====== Server Keys ====== ====== Server Keys ======
 ===== Fingerprint Hostkey überprüfen ===== ===== Fingerprint Hostkey überprüfen =====
-  ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub+  ssh-keygen -l -f /etc/ssh/ssh_host_ed25519_key.pub
  
 ===== Server Key aus known_hosts entfernen ===== ===== Server Key aus known_hosts entfernen =====
Zeile 31: Zeile 54:
  
 ===== Server Keys neu erzeugen ===== ===== Server Keys neu erzeugen =====
-=== Debian ===+löschen:
   rm /etc/ssh/ssh_host_*key*   rm /etc/ssh/ssh_host_*key*
 +=== Debian ===
   dpkg-reconfigure openssh-server   dpkg-reconfigure openssh-server
 +=== SuSE / RedHat ===
 +  service sshd restart
  
 ====== Public-Private-Key Authentifizierung ====== ====== Public-Private-Key Authentifizierung ======
Zeile 43: Zeile 69:
  
 ===== Public-Key auf anderen Rechner übertragen ===== ===== Public-Key auf anderen Rechner übertragen =====
-  ssh-copy-id -i .ssh/id_rsa.pub nutzer05@notebook06+  ssh-copy-id nutzer05@notebook06
 oder von Hand: oder von Hand:
   ssh nutzer05@notebook06 'mkdir -m 700 ~/.ssh'   ssh nutzer05@notebook06 'mkdir -m 700 ~/.ssh'
-  ssh nutzer05@notebook06 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub +  ssh nutzer05@notebook06 'cat >> .ssh/authorized_keys' < ~/.ssh/id_ed25519.pub 
-  ssh nutzer05@notebook06 'chmod 400 .ssh/authorized_keys'+  ssh nutzer05@notebook06 'chmod 600 .ssh/authorized_keys'
  
 ===== Serverseitig Passwortauthentifizierung abschalten ===== ===== Serverseitig Passwortauthentifizierung abschalten =====
  
-<file txt /etc/ssh/sshd_config> +<file txt /etc/ssh/sshd_config.d/keyonly.conf>
-  UsePAM no +
-  PasswordAuthentication no +
-</file> +
- +
-Alternativ (CentOS 7) +
-<file txt /etc/ssh/sshd_config>+
   UsePAM yes   UsePAM yes
-  ChallengeResponseAuthentication no+  KbdInteractiveAuthentication no
   PasswordAuthentication no   PasswordAuthentication no
 </file> </file>
 +
 +==== Syntax prüfen ====
 +  sshd -t
 +
 +==== Dienst neu starten ====
 +  systemctl restart ssh.service
  
 ===== ssh-agent ===== ===== ssh-agent =====
 Schlüssel dem ''ssh-agent'' hinzufügen: Schlüssel dem ''ssh-agent'' hinzufügen:
-  ssh-add .ssh/id_dsa+  ssh-add .ssh/id_rsa
  
 ((Bei openSuSE 11.0 wird der ''ssh-agent'' bei der Anmeldung nur gestartet, wenn das Verzeichnis ''~/.ssh'' existiert: ((Bei openSuSE 11.0 wird der ''ssh-agent'' bei der Anmeldung nur gestartet, wenn das Verzeichnis ''~/.ssh'' existiert:
Zeile 76: Zeile 102:
 ===== Nutzer Zugriff beschränken ===== ===== Nutzer Zugriff beschränken =====
 ==== mit authorized_keys command ==== ==== mit authorized_keys command ====
-//Problem: die Datei ''~/.ssh/authorized_keys'' gehört dem Nutzer, den man einschränken möchte. //+//Problem: die Datei ''~/.ssh/authorized_keys'' gehört dem Nutzer, den man einschränken möchte. Mögliche Lösung: AuthorizedKeysFile, AuthorizedKeysCommand und AuthorizedKeysCommandUser //
  
 <file txt ~/.ssh/authorized_keys> <file txt ~/.ssh/authorized_keys>
-command="/usr/bin/who",no-agent-forwarding,no-X11-forwarding,no-port-forwarding ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHBqUtiLsRTLKquoVXKwhrPRD92CzaN9EOkVEfWoHfdC nutzer26@notebook26+restrict,command="/usr/bin/who" ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHBqUtiLsRTLKquoVXKwhrPRD92CzaN9EOkVEfWoHfdC nutzer26@notebook26
 </file> </file>
 ==== mit Match ==== ==== mit Match ====
Zeile 154: Zeile 180:
 </file> </file>
  
 +<file txt ~/.ssh/authorized_keys>
 +restrict,port-forwarding ssh-rsa AAAAB3NzaC1yc2EAXXXXXXXXXXXXXXXXXXXXXXXXX
 +</file>
 ===== Agent-Forwarding nutzen ===== ===== Agent-Forwarding nutzen =====
   ssh -A notebook17   ssh -A notebook17
admin_grundlagen/ssh.1550032710.txt.gz · Zuletzt geändert: 2019/02/13 04:38 von ingo_wichmann