Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
netzwerke:ssh [2021/06/21 13:31] – [Server] st | netzwerke:ssh [2024/03/14 13:11] (aktuell) – [Vorgehensweise] st |
---|
* [[http://www.freesoftwaremagazine.com/articles/run_any_gnu_linux_app_on_windows_without_any_virtualization|Using SSH to access programs from an Ubuntu box]] | * [[http://www.freesoftwaremagazine.com/articles/run_any_gnu_linux_app_on_windows_without_any_virtualization|Using SSH to access programs from an Ubuntu box]] |
* [[http://www.pro-linux.de/news/1/22882/microsoft-portiert-openssh-auf-windows.html|Microsoft portiert OpenSSH auf Windows]] | * [[http://www.pro-linux.de/news/1/22882/microsoft-portiert-openssh-auf-windows.html|Microsoft portiert OpenSSH auf Windows]] |
| * Powershell einstellen das er sich passphrase merkt: |
| * https://gist.github.com/danieldogeanu/16c61e9b80345c5837b9e5045a701c99 |
| * https://stackoverflow.com/questions/370030/why-git-cant-remember-my-passphrase-under-windows |
| |
| |
=== Clients === | === Clients === |
| |
Das erledigt dieser folgende Befehl: ''ssh-keygen -i -f $Dateiname'' | Das erledigt dieser folgende Befehl: ''ssh-keygen -i -f $Dateiname'' |
| |
| == Pubkey aus private Key erzeugen == |
| |
| Falls der pubkey nicht vorliegt: <code bash>ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub</code> |
| |
| |
==== ForwardAgent / ProxyCommand ==== | ==== ForwardAgent / ProxyCommand ==== |
| |
<code bash> | <code bash> |
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key | ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key |
ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key | ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key |
ssh-keygen -t ecdsa -b 521 -f /etc/ssh/ssh_host_ecdsa_key | ssh-keygen -t ecdsa -b 521 -f /etc/ssh/ssh_host_ecdsa_key |
==== SSH-Passphrase hinzufügen / ändern ==== | ==== SSH-Passphrase hinzufügen / ändern ==== |
| |
Der private Schlüssel sollte mit einem Passwort bzw. einer Passphrase geschützt werden. Änderungen der Passphrase geht einfach mit ''ssh-keygen'': | Der private Schlüssel sollte mit einem Passwort bzw. einer Passphrase geschützt werden. |
| |
| Überprüfen ob Passphrase gesetzt (wenn ja, dann Fehlermeldung "incorrect passphrase supplied to decrypt private key"): ''ssh-keygen -y -P "" -f ~/.ssh/id_rsa'' |
| |
| Änderungen der Passphrase geht einfach mit ''ssh-keygen'': |
| |
<code bash>ssh-keygen -f ~/.ssh/id_dsa -p</code> | <code bash>ssh-keygen -f ~/.ssh/id_dsa -p</code> |
| |
RSA: <code bash>openssl rsa -in ~/.ssh/id_rsa -out private_key_without_pass_phrase</code> | RSA: <code bash>openssl rsa -in ~/.ssh/id_rsa -out private_key_without_pass_phrase</code> |
DSA: ? | ECDSA: ? |
ECDSH: ? | ED25519:? |
==== Verbindungsabbrüche verhindern ==== | ==== Verbindungsabbrüche verhindern ==== |
| |
| |
- **nur Protokollversion 2** benutzen <file>Protocol 2</file> | - **nur Protokollversion 2** benutzen <file>Protocol 2</file> |
- **keine root-logins** zulassen <file>PermitRootLogin no</file>Administration wird ausschließlich über normale Benutzer vorgenommen und dann [[linux:rechte#su/sudo|fallweise per sudo oder bei Bedarf permanent (su) auf root-Rechte wechseln]]. Dazu muss ein Eintrag in der Datei ''/etc/sudoers'' angelegt werden (mit dem Befehl ''visudo''): <file>Benutzer1 ALL=(ALL) ALL</file>Es kann auch die Berechtigung für einzelne Aufgaben vergeben werden (zur Not auch ohne Passworteingabe) | - **keine root-logins** zulassen (Administration wird ausschließlich über normale Benutzer vorgenommen und dann [[linux:rechte#su/sudo|fallweise per sudo oder bei Bedarf permanent (su) auf root-Rechte wechseln]]. Dazu muss ein Eintrag in der Datei ''/etc/sudoers'' angelegt werden (mit dem Befehl ''visudo''): <file>Benutzer1 ALL=(ALL) ALL</file>Es kann auch die Berechtigung für einzelne Aufgaben vergeben werden (zur Not auch ohne Passworteingabe)): |
- **Distributionsbanner** abschalten (Beispiel: SSH-2.0-OpenSSH_5.9p1 //Debian-5ubuntu1.10// - Version wird immer noch angezeigt, dafür gibt es keine Option):[[ubuntu:Ubuntu]]:<file>DebianBanner no</file>RHEL: <file>Banner none</file> | - <file>PermitRootLogin no</file> in der ''/etc/ssh/sshd_config'' anschließend ''systemctl reload sshd'' |
| - oder nur pubkey: <file>PermitRootLogin without-password</file> |
| - Warnmeldung + logout via /root/.ssh/authorized_keys: <file>command="echo 'Please login as the user \"debian\" rather than the user \"root\".';echo;sleep 10;exit 142" ssh-rsa some-key text |
| </file> |
| - **Distributionsbanner** abschalten (Beispiel: SSH-2.0-OpenSSH_5.9p1 //Debian-5ubuntu1.10// :!: Version wird immer noch angezeigt, dafür gibt es keine Option): |
| - [[ubuntu:Ubuntu]]:<file>DebianBanner no</file> |
| - RHEL: <file>Banner none</file> |
- **nur bestimmten Benutzern den Login erlauben**: <file>AllowUsers Benutzer1 Benutzer2</file> | - **nur bestimmten Benutzern den Login erlauben**: <file>AllowUsers Benutzer1 Benutzer2</file> |
- **nur bestimmten Gruppen den Login erlauben**: <file>AllowGroups Gruppe1 Gruppe2</file> | - **nur bestimmten Gruppen den Login erlauben**: <file>AllowGroups Gruppe1 Gruppe2</file> |