Absichern

Was für Chips und MAC’s werden unterstützt:
  • ssh -Q mac                  <– MACs in sshd_config
  • ssh -Q kex                   <– KexAlgorithms in sshd_config
  • ssh -Q cipher              <– Ciphers im sshd_config
  • ssh -Q key                   <– HostKeyAlgorithms in sshd_config

Obige Befehle auf Client sowie Server ausführen, die stärksten gemeinsamen Nenner finden und die /etc/ssh/ssh.conf[sshd.conf] anpassen. Nach dem löschen der veralteten Verfahren nicht vergessen die Eintrage nach Stärke von links nach rechts zu sortieren, den in der Reihenfolge probieren Server & Client eine Verbindung aushandeln. Am Ende sollte es so in der art aussehen (je nachdem was gebraucht wird):
KexAlgorithms sntrup4591761x25519-sha512@tinyssh.org,curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes256-ctr
PubkeyAcceptedKeyTypes ssh-ed25519-cert-v01@openssh.com,ssh-ed25519,ssh-rsa-cert-v01@openssh.com
HostbasedAcceptedKeyTypes ssh-ed25519-cert-v01@openssh.com,ssh-ed25519,ssh-rsa-cert-v01@openssh.com
HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-ed25519,ssh-rsa-cert-v01@openssh.com

Kann sich lohnen da selbst im Jahr 2020 teilweise noch so kram wie MD5 per Default eingetragen ist!

Generell  sollte nichts nicht verwendet werde wo der Name ‚NIST‘ drinnen vorkommt, da es mittlerweile sicher ist das die NSA bei den Vorfahren Hintertüren hat einbauen lassen!

   Tip um einen ed25519 Key mit eindeutiger Zuordnung zu erhalten: 

ssh-keygen -o -a 100 -t ed25519 -C „$(whoami)@$(uname -n)-$(date -I)“
-o // Das neuere OpenSSH-Format. Besser geschützt gegen Brute-Force.
-a // Anzahl der Durchgänge. Mehr ist sicherer aber auch langsamer.
-t // Der Key Typ.
-C // Einen Kommentar zur eindeutigen Zuordnung anhängen.

Falls von der Gegenseite benötigt, den Public Key in das RFC-4716 Format konvertieren:
ssh-keygen -e -f ~/.ssh/id_ed25519.pub | grep -v „Comment:“ > ~/.ssh/id_rsa_ed25519_rfc.pub

Eindeutigen RSA Key mit neuem Verfahren (-o) erstellen:
ssh-keygen -o -a 100 -t rsa -b 4096 -f ~/.ssh/id_$(whoami)@$(hostname -f)_rsa -C „$(whoami)@$(hostname -f)-$(date -I)“

SSH Configuration Test:
  • sshd -t ( Am besten NACH jeder Änderung und VOR einem Reboot)
  • ssh -G [irgendein-host]
  • ssh -vvv root@[irgendein-host]
  • Mit Lynix (Link) testen.
  • Mit ssh-audit (Link) alles abklopfen.
 
Passwort Dateien auf Fehler Prüfen:
  • pwck -r /etc/passwd
  • pwck -r /etc/shadow
Für jeden Host optimieren 

Im Home Verzeichnis in dem versteckten Ordner .shh eine Neue Datei ‚config‘ anlegen, um für jeden Zielrechner automatisch die stärksten Parameter zu verwenden.

nano[Lieblings-Editor] ~/.ssh/config

HOST *
      Protocol 2
      Compression no
      CheckHostIP yes

Host [IP oder Name falls in der /etc/hosts hinterlegt]
      Hostname [name für ’ssh user@…‘].fritz.box
      User root
      Port 22
      MACs hmac-sha2-512-etm@openssh.com
      Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com
      KexAlgorithms curve25519-sha256@libssh.org
      IdentityFile ~/.ssh/id_ed25519-[zielrechner]