Frage Wie kann ich die Verschlüsselung bei openssh deaktivieren?


Ich habe Leistungsprobleme mit der Kombination openssh (Server) und putty (client), um einen Remote-Webproxy zu verwenden. Ich möchte die Verschlüsselung deaktivieren und die Ergebnisse testen, um zu sehen, ob es einen Unterschied macht. Wie kann ich das machen? Gibt es etwas, das ich in der ändern kann? sshd_config. Ich bin sehr neu zu openssh.

Irgendwelche anderen Ideen würden geschätzt.

Ich habe im Grunde meinen IE festgelegt, 127.0.0.1 Socken als Proxy zu verwenden. Ich verbinde meinen Putty mit meinem openssh-Server zu Hause und voila - ich kann damit im Internet surfen. Allerdings ist es unglaublich langsam, obwohl ich weiß, dass ich eine schnelle Verbindung zu meinem Zuhause habe (ftp arbeitet beispielsweise mit über 50 Kbyte / s).


21
2018-02-25 18:43


Ursprung


Es ist schade, dass der rot13 Patch (miranda.org/~jkominek/rot13) nie gefangen ... - Kenster
Ich bezweifle stark, dass die von SSH verwendete Verschlüsselung der Grund für Ihre langsame Verbindung ist, solange Ihr SSH-Server nicht auf einer digitalen Armbanduhr von 1980 läuft. - joschi


Antworten:


Ohne etwas neu zu kompilieren, kann es nicht so weit gemacht werden, wie ich es weiß. Sie können jedoch zu ARC4 oder Blowfish wechseln, die auf moderner Hardware unglaublich schnell sind.

Die BESTE Leistung (soweit Taktzyklen betroffen sind), die Sie erreichen können, ist mit Hinzufügen

compression no

Sie können dies tun, indem Sie ändern

ciphers         aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,
                aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,
                aes256-cbc,arcfour

zu

ciphers         arcfour,blowfish-cbc

Wenn Sie etwas zusätzliche Leistung auf das Risiko der Inkompatibilität auspressen möchten, können Sie ändern

macs  hmac-md5,hmac-sha1,umac-64@openssh.com,
      hmac-ripemd160,hmac-sha1-96,hmac-md5-96

zu

macs  hmac-md5-96

Wenn Sie immer noch denken, dass dies zu viel Overhead ist, können Sie zu v1 zurückkehren oder einfach ein Standard-VPN ausführen.


17
2018-02-25 18:56



Wenn Ihre OpenSSH-Installation (auf beiden Seiten) der Unterstützung der "None" -Ziffer entsprochen wird, können Sie das auch angeben, aber das vereitelt den ganzen Zweck von sichern Schale. - voretaq7
Für die C-Neigung unter uns können Sie hinzufügen {"keine", SSH_CIPHER_NONE, 8, 0, 0, EVP_enc_null}  cipher.c im Cipher-Array. - ŹV -
Ich könnte auch darauf hinweisen, Sie können etwas wie Socat (dest-unreach.org/socat) das Gleiche zu tun und den gesamten SSH-Protokoll-Overhead zu vermeiden. - ŹV -
Ich denke, Umac-64 ist der schnellste dieser Mac-Algorithmen. - James K Polk
96 Bit MD5 ist auf jeden Fall unglaublich schnell. - ŹV -


Wenn der Client oder der Server nicht drastisch unterbewertet ist, würde ich sehr bezweifeln, dass es die Verschlüsselung ist, die Ihre Leistungsprobleme verursacht. Ich benutze regelmäßig einen "-D 8080" SSH Sockets Proxy und habe nie etwas anderes bemerkt als einen sehr leichte Verlangsamung.

Eine Sache zu überprüfen ist, um zu sehen, wie die Latenz zwischen Ihrem Client und dem Server ist. Wenn es sich um eine sehr latente Verbindung handelt, würden Sie bei der Verwendung von HTTP mit Sicherheit eine schlechte Leistung über den Tunnel feststellen, während bei FTP keine Leistungsprobleme auftreten. Sobald eine FTP-Übertragung in Arbeit ist, ist Latenz nicht wirklich wichtig, aber mit HTTP haben Sie es mit Webseiten zu tun, die 50 oder mehr einzelne HTTP-Handshakes haben, die passieren müssen. Verbindungen mit hoher Latenz verlangsamen diesen Prozess wirklich und machen das Surfen unerträglich.

Wie auch immer, die Empfehlungen, die Zephyr Pellerin gemacht hat, sind gut. Wenn Sie wirklich denken, dass es Verschlüsselung ist, die das Problem auf alle Fälle verursacht, wechseln Sie zu einer anderen Chiffre. Ich würde jedoch vorschlagen, zuerst die Latenz zu untersuchen, da dies ein viel wahrscheinlicherer Kandidat zu sein scheint.


7
2018-02-25 19:41



+1 für diese ... die Probleme sind höchst unwahrscheinlich die Verschlüsselung und wird wahrscheinlich die Verbindung zu Ihrem Gastgeber zu Hause sein. - DaveG
Ich wünschte, die Leute würden aufhören zu sagen, dass Sie das nicht tun müssen und sich lange über die Vorteile und Nachteile des Verschlüsselungsaufwands (wenn oder wenn nicht) unterhalten und einfach versuchen, die Frage zu beantworten. Ich sehe keinen Grund, eine redundante Verschlüsselung für meine lokale Aufgabe auf meinem lokalen Rechner hinzuzufügen, für die ich mindestens Authentifizierung benötige, aber die Arbeit von localhost zu localhost erfordert wirklich keine Verschlüsselung. - Marius
Nicht wahr, versuche eine große Datei mit scp auf einem Gig-Ethernet zu kopieren. Die Auslastung von Intel iCore 5 beträgt 80%. - lzap
@Izap> Es gibt mehr als nur Verschlüsselung. Übertragen einer großen Datei mit ftp (ohne ssl) bringt mir auch eine 20 bis 40% -ige CPU-Last. Ich beschuldige billiges Gig-Ethernet, das zu viel Aufmerksamkeit von der CPU erfordert. - spectras
Wenn Sie SSH für ZFS senden / empfangen verwenden, ist die CPU ein Engpass;) - Xdg


Dieser Thread hat mich dazu gebracht, meine eigenen Benchmarks zu erstellen und ich habe herausgefunden, dass Performance nicht nur durch verschiedene Cipher / MACs variiert, sondern auch, welche Daten gesendet werden, welche CPUs beteiligt sind und wie das Netzwerk eingerichtet ist.

Also, IMO ist das Richtige, um eigene Tests durchzuführen und die besten Einstellungen für Ihre Situation zu finden.

Wenn jemand interessiert ist, hier sind die Ergebnisse meiner Tests, die einen Intel E5506-gesteuerten Server mit einem Raspberry Pi vergleichen:

--
-- Intel Xeon E5506(4 x 2.13 GHz), 50MB Random binary Data over localhost
--

cipher                      mac                        speed
---------------------------------------------------------------
aes192-cbc                  hmac-sha1                    50MB/s
arcfour256                  hmac-sha2-512              49.9MB/s
arcfour                     hmac-ripemd160             49.8MB/s
aes256-cbc                  hmac-sha1-96               49.7MB/s
aes128-cbc                  hmac-sha1-96               49.7MB/s
aes192-cbc                  hmac-sha1                  48.9MB/s
arcfour                     hmac-ripemd160@openssh.com 48.8MB/s
aes256-cbc                  hmac-sha1-96               48.8MB/s
arcfour                     hmac-ripemd160@openssh.com 48.7MB/s
aes128-cbc                  hmac-sha1                  48.4MB/s


--
-- Raspberry PI B+, 10MB Random binary over localhost
--

cipher                      mac                        speed
---------------------------------------------------------------
arcfour256                  umac-64@openssh.com        2.75MB/s
arcfour128                  umac-64@openssh.com        2.74MB/s
arcfour                     umac-64@openssh.com        2.63MB/s
arcfour                     umac-64@openssh.com        2.54MB/s
arcfour                     hmac-md5-96                2.36MB/s
arcfour128                  hmac-md5                   2.34MB/s
arcfour256                  hmac-md5                   2.34MB/s
arcfour256                  umac-64@openssh.com        2.33MB/s
arcfour256                  hmac-md5-96                2.28MB/s
arcfour256                  hmac-md5-96                2.22MB/s

Aber nur die "Top 10", die kompletten Ergebnisse kann hier gefunden werden.


6
2018-02-05 20:53



Ergebnisse ohne die None-Chiffre sind für dieses Thema unvollständig. Ich habe viele Pogoplugv4 (800Mhz Arm-Version = langsam) und sie hängen oft die CPU mit SSH. Aus diesem Grund suchen Menschen die Nicht-Chiffre. ssh / sshd CPU-Auslastung bei 100% bedeutet, es ist kein Netzwerkproblem! Ich hoffe, ich erinnere mich, zurück zu kommen und die Chiffre = keine Ergebnisse zu posten ... - user2420786
Haben Sie das Skript, mit dem Sie diese Daten erstellt haben? Ich wäre sehr interessiert an der Leistung der aktuellen Chiffren (chacha20-poly1305@openssh.com) auf der heutigen Hardware. - Jakuje
Es ist alles im Kern: gist.github.com/piccaso/b74209cc3396587892b4 - Florian Fida


Ich konnte sshd / ssh mit der Chiffre 'none' mit Hilfe dieses Posts kompilieren: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=24559#58

Es ist ein sehr alter Post, aber Sie müssen 3 kleine Änderungen an der Quellcodedatei cipher.c vornehmen. Dann kompiliere den sshd / ssh Code neu.

@@ -175,7 +175,7 @@
    for ((p = strsep(&cp, CIPHER_SEP)); p && *p != '\0';
        (p = strsep(&cp, CIPHER_SEP))) {
        c = cipher_by_name(p);
-       if (c == NULL || c->number != SSH_CIPHER_SSH2) {
+       if (c == NULL || (c->number != SSH_CIPHER_SSH2 && c->number != SSH_CIPHER_NONE)) {
            debug("bad cipher %s [%s]", p, names);
            xfree(ciphers);
            return 0;
@@ -343,6 +343,7 @@
    int evplen;

    switch (c->number) {
+   case SSH_CIPHER_NONE:
    case SSH_CIPHER_SSH2:
    case SSH_CIPHER_DES:
    case SSH_CIPHER_BLOWFISH:
@@ -377,6 +378,7 @@
    int evplen = 0;

    switch (c->number) {
+   case SSH_CIPHER_NONE:
    case SSH_CIPHER_SSH2:
    case SSH_CIPHER_DES:
    case SSH_CIPHER_BLOWFISH:

Auch die none Verschlüsselung muss zu Ihrem hinzugefügt werden /etc/ssh/sshd_config

Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr,none

Die folgenden Links helfen Ihnen, ssh-Quellen für Debian- und Ubuntu-Systeme zu erhalten:

Dank an Dean Gaudet für seine Großartigkeit


3
2018-06-19 09:43





Wenn Sie einen komplett unverschlüsselten und unkomprimierten Tunnel ausprobieren möchten, können Sie versuchen, etwas wie rinetd um die Daten anstelle von SSH weiterzuleiten. Dies würde die SSH-Extras minimieren, während stiller einen einfachen binär sicheren Tunnel für TCP-Verbindungen bietet.

Wenn Sie sagen, dass Sie zu Hause eine schnelle Verbindung haben, sind Sie sicher, dass es in beiden Richtungen schnell ist? Viele Heimverbindungen sind sehr asymmetrisch (mein Heim-ADSL zum Beispiel ist ~ 11Mit Downstream und ~ 1,5Mbit Upstream und viele sind schlechter als das, manche kann ich aus Freunden / Familienverbindungen zitieren: 7M / 0,4M, 19M / 1,3M, 20M / 0.75M, ...). Denken Sie daran, dass die Daten, wenn Sie Home als Proxy verwenden, beide Wege durchlaufen müssen und sich somit bewegen bestenfalls bei der langsamsten Ihrer Downstream- und Upstream-Geschwindigkeiten und Sie haben auch einen Teil der zusätzlichen Latenz zu berücksichtigen. Auch Ihr ISP könnte absichtlich die vorgelagerte Kommunikation drosseln (entweder pauschal oder selektiv, so dass Dinge wie E-Mail und ausgewählte populäre Websites nicht betroffen sind), um Leute davon abzuhalten, Server / Proxies von ihren Home-Links zu starten, obwohl dies relativ selten ist.


1
2018-02-25 20:37



SSH ist Standard bei den meisten Maschinen. rinetd ist nicht auf einigen, aber danke für den Vorschlag. - Marius
Dann solltest du netcat / nc ausprobieren - ThorstenS


Laut diesem sehr netten Blogbeitrag

http://blog.famzah.net/2010/06/11/openssh-ciphers-performance-benchmark/

Ich empfehle die folgenden Verschlüsselungen einzurichten. Stellen Sie außerdem sicher, dass die Komprimierung deaktiviert ist, wenn Sie die beste Leistung im LAN erzielen möchten. Bitte beachten Sie, dass dies ein mögliches Sicherheitsrisiko darstellt. Verwenden Sie das Gerät nur im sicheren LAN (z. B. zu Hause).

# cat ~/.ssh/config
Host 192.168.1.*
    Compression no
    Ciphers arcfour256,arcfour128,arcfour,blowfish-cbc,aes128-cbc,aes192-cbc,cast128-cbc,aes256-cbc

Ändern Sie die erste Zeile, um Ihre eigenen IPs in Ihrem LAN aufzulisten. Sie können auch Hostnamen angeben (durch Leerzeichen getrennt). Dies gibt Ihnen die beste scp Leistung im LAN.


1
2018-01-09 16:07





Ich habe gerade umfangreiche Tests durchgeführt, und die Cipher-Suite, die den höchsten Durchsatz erzielte, war aes-128-ctr mit umac64 MAC. Auf einer 4-Kern 3.4GHz-Maschine sah ich fast 900MByte / sec durch localhost (um Netzengpässe aus Gründen des Benchmarking zu beseitigen)

Wenn Sie wirklich so viel Leistung brauchen, wollen Sie die neueste SSH, und möglicherweise die HPN-SSH Patches.


0
2018-06-19 14:25





Dies ist eine clientseitige SSH-Option, die ich für die SSH-Verbindung zu Low-End-Geräten verwendet habe:

ssh -c none -m hmac-md5-96 -oKexAlgorithms=curve25519-sha256@libssh.org ....

In neueren OpenSSH-Versionen wird keine Chiffre nativ unterstützt. Seit 7.6 hat OpenSSH jedoch die SSHv1-Unterstützung entfernt und für die interne Verwendung "none" -Chipher bezeichnet.

#define CFLAG_NONE      (1<<3)
#define CFLAG_INTERNAL      CFLAG_NONE /* Don't use "none" for packets */

Dann müssen Sie für Server- und Clientseite patchen und neu kompilieren.

#define CFLAG_INTERNAL      0

0
2018-02-05 06:35