may24x
Anmeldungsdatum: 26. April 2016
Beiträge: 107
|
Hallo zusammen. Bekannterweise werden ja verschiedene "Verschlüsselungs Verfahren" von ssh unterstützt.
Die kann man sich auch recht einfach mit '-Q' anzeigen lassen.
Doch wie kommt die Auswahl des Verfahrens zustande ? Initiiert des Client das ? Und wenn Ja wie ?
Sagt der Server: "Ich kann das ..." und wenn der Client sagt: "... Ich nicht" probiert er die nächste Methode ? Kann ich den Client zwingen eine bestimmte Verschlüsselung zu benutzen/priorisieren bzw. abzulehenn ? Und wenn ja, wie ? ... derzeit habe ich nämlich das Problem das sich noch "Legacy Geräte" mit "DSS public key algorithm" in meinem Netzwerk tummeln.
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13938
|
may24x schrieb: Kann ich den Client zwingen eine bestimmte Verschlüsselung zu benutzen/priorisieren bzw. abzulehenn ? Und wenn ja, wie ?
Versuch mal z. B. mit:
Ciphers aes256-ctr
KexAlgorithms ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256
MACs hmac-sha2-512,hmac-sha2-256
in der config-Datei des Clienten und des Servers. Und danach als Test, mit was ganz Anderem, entweder beim Server oder beim Client.
|
sinusQ
Anmeldungsdatum: 27. Oktober 2010
Beiträge: 193
Wohnort: Neudau
|
Hi,
Kann ich den Client zwingen eine bestimmte Verschlüsselung zu benutzen/priorisieren bzw. abzulehenn ? Und wenn ja, wie ?
du kannst in der Konfiguration vom SSH-Server (/etc/ssh/sshd_config) gewisse Ciphers, Key-Exchange-Algorithms und MACs erlauben. Mehr Informationen findest du in der Manpage von ssh.
Initiiert des Client das ? Und wenn Ja wie ? Sagt der Server: "Ich kann das ..." und wenn der Client sagt: "... Ich nicht" probiert er die nächste Methode ?
Wenn du den Server mit -d (debug) startest und dich dann mit einem Client mit -vvv (verbose) verbindest, siehst du wie sich Server und Client die Verbindungseigenschaften aushandeln.
|
may24x
(Themenstarter)
Anmeldungsdatum: 26. April 2016
Beiträge: 107
|
Hm ... in diesem Tutorial - allerdings für openssh 6.7 und nicht wie bei mir 7.2 - wird folgendes empfolen: KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com Für eine meiner Boxen ist ein Internet Zugang konfiguriert. Hier möchte ich natürlich die stärkste Verschlüsselung einsetzen.
Vorschläge ?
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13938
|
may24x schrieb: Vorschläge ?
Z. B.:
Ciphers aes256-ctr
KexAlgorithms ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256
MACs hmac-sha2-512,hmac-sha2-256
|
sinusQ
Anmeldungsdatum: 27. Oktober 2010
Beiträge: 193
Wohnort: Neudau
|
Für eine meiner Boxen ist ein Internet Zugang konfiguriert. Hier möchte ich natürlich die stärkste Verschlüsselung einsetzen. Vorschläge ?
Vor allem Login mit Passwort verbieten, nur mit Keys arbeiten. Und root-Login verbieten. Vielleicht dein Tutorial mit diesem Paper abgleichen..
|
may24x
(Themenstarter)
Anmeldungsdatum: 26. April 2016
Beiträge: 107
|
Das mit Password und root-login versteht sich von selbst ... 😉 Warum nicht Cipher: curve25519-sha256@libssh.org ?
Und: Sind die 128bit Sachen noch up-to-date ? Sollte mittlerweile nicht 256 "Standard" sein ? Vorschlag #2:
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes256-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13938
|
may24x schrieb: Vorschlag #2:
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
Funktioniert nicht überall. Z. B.:
:~$ ssh -v yxyxyxyx
OpenSSH_5.9p1 Debian-5ubuntu1.8, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /home/##/.ssh/config
debug1: /home/##/.ssh/config line 1: Applying options for *
Unsupported KEX algorithm "curve25519-sha256@libssh.org"
/home/##/.ssh/config line 16: Bad SSH2 KexAlgorithms 'curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256'.
|
sinusQ
Anmeldungsdatum: 27. Oktober 2010
Beiträge: 193
Wohnort: Neudau
|
Warum nicht Cipher: curve25519-sha256@libssh.org ?
Weil curve25519-sha256@libssh.org kein Cipher, sondern ein KEX-Algorithmus ist.
Und: Sind die 128bit Sachen noch up-to-date ? Sollte mittlerweile nicht 256 "Standard" sein ?
Weiß ich nicht, vielleicht kann da jemand anders aushelfen ☺ Mein Vorschlag wäre, vorausgesetzt du hast ein halbwegs statisches Setup (also nicht zu viele wechselnde Clients): | ssh -Q key
ssh -Q cipher
ssh -Q mac
|
Auf Server + Client ausführen, vergleichen, und dann eben nur die stärksten 1-2 Möglichkeiten am Server erlauben. lubux schrieb: Funktioniert nicht überall. Z. B.:
:~$ ssh -v yxyxyxyx
OpenSSH_5.9p1 Debian-5ubuntu1.8, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /home/##/.ssh/config
debug1: /home/##/.ssh/config line 1: Applying options for *
Unsupported KEX algorithm "curve25519-sha256@libssh.org"
/home/##/.ssh/config line 16: Bad SSH2 KexAlgorithms 'curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256'.
curve25519-sha256@libssh.org wurde mit September 2013 in die libssh implementiert (hier). Ich würde ein Update von openssh empfehlen ☺
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13938
|
sinusQ schrieb: Ich würde ein Update von openssh empfehlen ☺
Wie kommst Du auf die Idee, dass mein openssh nicht uptodate ist? 😉 BTW: Für Version-Nr. und Datum ist der maintainer des packages, zuständig und eine alte Version-Nr. bzw. ein altes Datum bedeutet nicht, dass der maintainer hier nicht gepatcht hat (... aber anscheinend nicht ausreichend). EDIT: Z. B.:
:~$ apt-get changelog ssh | head -n 10
Holen:1 Änderungsprotokoll (Changelog) für ssh (http://changelogs.ubuntu.com/changelogs/pool/main/o/openssh/openssh_5.9p1-5ubuntu1.8/changelog) [177 kB]
openssh (1:5.9p1-5ubuntu1.8) precise-security; urgency=medium
* SECURITY UPDATE: information leak and overflow in roaming support
- debian/patches/CVE-2016-077x.patch: completely disable roaming option
in readconf.c.
- CVE-2016-0777
- CVE-2016-0778
-- Marc Deslauriers <marc.deslauriers@ubuntu.com> Wed, 13 Jan 2016 10:49:17 -0500 :~$ apt-get changelog openssl | head -n 32
Holen:1 Änderungsprotokoll (Changelog) für openssl (http://changelogs.ubuntu.com/changelogs/pool/main/o/openssl/openssl_1.0.1-4ubuntu5.35/changelog) [118 kB]
openssl (1.0.1-4ubuntu5.35) precise-security; urgency=medium
* SECURITY UPDATE: side channel attack on modular exponentiation
- debian/patches/CVE-2016-0702.patch: use constant-time calculations in
crypto/bn/asm/x86_64-mont5.pl, crypto/bn/bn_exp.c,
crypto/perlasm/x86_64-xlate.pl, crypto/constant_time_locl.h.
- CVE-2016-0702
* SECURITY UPDATE: double-free in DSA code
- debian/patches/CVE-2016-0705.patch: fix double-free in
crypto/dsa/dsa_ameth.c.
- CVE-2016-0705
* SECURITY UPDATE: BN_hex2bn/BN_dec2bn NULL pointer deref/heap corruption
- debian/patches/CVE-2016-0797.patch: prevent overflow in
crypto/bn/bn_print.c, crypto/bn/bn.h.
- CVE-2016-0797
* SECURITY UPDATE: memory leak in SRP database lookups
- debian/patches/CVE-2016-0798.patch: disable SRP fake user seed and
introduce new SRP_VBASE_get1_by_user function that handled seed
properly in apps/s_server.c, crypto/srp/srp.h, crypto/srp/srp_vfy.c,
util/libeay.num, openssl.ld.
- CVE-2016-0798
* SECURITY UPDATE: memory issues in BIO_*printf functions
- debian/patches/CVE-2016-0799.patch: prevent overflow in
crypto/bio/b_print.c.
- CVE-2016-0799
* debian/patches/preserve_digests_for_sni.patch: preserve negotiated
digests for SNI when SSL_set_SSL_CTX is called in ssl/ssl_lib.c.
(LP: #1550643)
-- Marc Deslauriers <marc.deslauriers@ubuntu.com> Mon, 29 Feb 2016 08:01:48 -0500
:~$ apt-cache policy openssh-client openssl | grep -i installiert
Installiert: 1:5.9p1-5ubuntu1.8
Installiert: 1.0.1-4ubuntu5.35
|
may24x
(Themenstarter)
Anmeldungsdatum: 26. April 2016
Beiträge: 107
|
Das Paket mag ja aktuell sein. Aver Version 5.9 ist gelinde gesagt: ziemlich alt ! Aktuell ist 7.2 ... Aber egal. Ich hab jetzt folgendes gemacht und es läuft soweit super. Nochmal kurz: Es geht hier um die serverseitige Configuration: cd /etc/ssh
rm ssh_host_*
vi sshd_config
hier folgendes eintragen/ersetzen ...
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
# HostKey /etc/ssh/ssh_host_dsa_key
# HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes256-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com
ServerKeyBits 4096 Obwohl das mit den RSA 4096 bit Schlüssel nicht unbedingt notwendig ist. Es sei denn ihr verwendet Protokoll 1 ... Jetzt noch die keys neu erzeugen: sudo ssh-keygen -A
bzw. wenn ein 4096 bit RSA Codeschlüssel erzeugt werden soll dann das hier noch nachschieben:
ssh-keygen -q -f /etc/ssh/ssh_host_rsa_key -N '' -b 4096 -t rsa
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13938
|
may24x schrieb: Das Paket mag ja aktuell sein. Aver Version 5.9 ist gelinde gesagt: ziemlich alt ! Aktuell ist 7.2 ...
D. h., man müsste entweder aus Fremdquellen installieren/updaten oder selber kompilieren/patchen?
|
may24x
(Themenstarter)
Anmeldungsdatum: 26. April 2016
Beiträge: 107
|
lubux schrieb: may24x schrieb: Das Paket mag ja aktuell sein. Aver Version 5.9 ist gelinde gesagt: ziemlich alt ! Aktuell ist 7.2 ...
D. h., man müsste entweder aus Fremdquellen installieren/updaten oder selber kompilieren/patchen?
Wenn's das für deine Distri nicht gibt ... ja http://www.openssh.com/
|