• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst mit vorbehalt] Paket openssh-hpn

Hallo,

ich möchte testen, ob sich die Geschwindigkeit im SSH Tunnel steigern lässt. Dafür gibt es einen vielversprechenden Patch: http://www.psc.edu/index.php/hpn-ssh

Dazu gab es im security repo fertige rpm's. https://build.opensuse.org/package/show?package=openssh-hpn&project=security

Jetzt steht dort aber "disabled". Woher kann ich das Paket bekommen? Ich würde nur notfalls selber kompilieren wollen.

Danke und Gruß
schnurzelat
 

spoensche

Moderator
Teammitglied
Das disabled bedeutet, dass noch kein Build durcchgeführt worden ist. Folglich müsstest du selber bauen. Du installierst die Sourcen von OpenSSH, und lädts den Patch passend zu deiner SSH Version runter.
 
OP
S

schnurzelat

Member
Danke für die Antwort.

Bei mir ist openssh-5.8p2 installiert. Nachem ich mit zypper si die sourcen installiert habe, kam ein openssh-5.8p2.tar.bz2 (aus dem Update Repo), sowie einige Patchfiles:

Code:
/usr/src/packages/SOURCES

-rw-r--r-- 1 root   root   3147 Feb  4  2011 openssh-5.8p1-askpass-fix.diff
-rw-r--r-- 1 root   root   7320 Feb  4  2011 openssh-5.8p1-audit.patch
-rw-r--r-- 1 root   root   1285 Feb  4  2011 openssh-5.8p1-blocksigalrm.diff
-rw-r--r-- 1 root   root    441 Feb  4  2011 openssh-5.8p1-default-protocol.diff
-rw-r--r-- 1 root   root   1182 Feb  4  2011 openssh-5.8p1-eal3.diff
-rw-r--r-- 1 root   root   3930 Feb  4  2011 openssh-5.8p1-engines.diff
-rw-r--r-- 1 root   root   9691 Feb  4  2011 openssh-5.8p1-gssapimitm.patch
-rw-r--r-- 1 root   root   8565 Feb  4  2011 openssh-5.8p1-homechroot.patch
-rw-r--r-- 1 root   root    650 Feb  4  2011 openssh-5.8p1-host_ident.diff
-rw-r--r-- 1 root   root    639 Feb  4  2011 openssh-5.8p1-pam-fix2.diff
-rw-r--r-- 1 root   root    463 Feb  4  2011 openssh-5.8p1-pam-fix3.diff
-rw-r--r-- 1 root   root    797 Feb  4  2011 openssh-5.8p1-pts.diff
-rw-r--r-- 1 root   root    672 Feb  4  2011 openssh-5.8p1-saveargv-fix.diff
-rw-r--r-- 1 root   root   1231 Feb  4  2011 openssh-5.8p1-send_locale.diff
-rw-r--r-- 1 root   root    727 Feb  4  2011 openssh-5.8p1-sshconfig-knownhostschanges.diff
-rw-r--r-- 1 root   root   1595 Feb  4  2011 openssh-5.8p1-sshd_config.diff
-rw-r--r-- 1 root   root   1169 Feb  4  2011 openssh-5.8p1-xauth.diff
-rw-r--r-- 1 root   root   2245 Feb  4  2011 openssh-5.8p1-xauthlocalhostname.diff

Von psc.edu habe ich das patchfile 'OpenSSH 5.8p1 OpenSSH-5.8p1-hpn13 v11' heruntergeladen.

Mir scheint es, als würden die Patchfiles (die alten und das neue) nicht zu der installierten openssh version passen. Ein p1 Version scheint es nicht zu geben.

Was kann ich tun?

Gruß schnurzelat
 

spoensche

Moderator
Teammitglied
Für openssh-5.8.p2 gibt es bei psc.edu keinen Patch. Du müsstest also ausprobieren, ob der 5.8p1 Patch sich auf die Sourcen von 5.8p2 anwenden lässt.
 
OP
S

schnurzelat

Member
Ich habe mal in die diff files geschaut: Die angegebenen lines stimmen nicht überein. Von daher brauche ich wohl eine ganz andere Version.
 

spoensche

Moderator
Teammitglied
schnurzelat schrieb:
Ich habe mal in die diff files geschaut: Die angegebenen lines stimmen nicht überein. Von daher brauche ich wohl eine ganz andere Version.

Wir testen das mal zusammen:

Code:
zypper si openssh # si => source install, openSSH Quellpaket installieren
tar-xzf /usr/src/packages/SOURCES/openssh-5.8p2.tar.bz2
cd openssh*

Wir habe jetzt das Quellpaket installiert, entpackt und sind das Verzeichnis openssh-5.8p2 gewechselt. Jetzt müssen wir den Patch anwenden:

Code:
patch -Np1 --dry-run < /pfad/zum/hpn-patch.diff

Mit der Option --dry-run sagst du dem Patch Kommando es soll den Patchablauf durcharbeiten, aber keine Änderungen vornehmen. Wenn keine Fehlermeldungen auftreten kannst du openSSH jetzt kompilieren.
 
OP
S

schnurzelat

Member
Code:
patching file auth2.c
patching file buffer.c
patching file buffer.h
patching file channels.c
patching file channels.h
patching file cipher.c
patching file cipher-ctr-mt.c
patching file clientloop.c
patching file compat.c
patching file compat.h
patching file HPN-README
patching file kex.c
patching file kex.h
patching file Makefile.in
patching file myproposal.h
patching file packet.c
patching file packet.h
patching file progressmeter.c
patching file readconf.c
patching file readconf.h
patching file scp.c
patching file servconf.c
patching file servconf.h
patching file serverloop.c
patching file session.c
patching file sftp.1
patching file sftp.c
patching file ssh.c
patching file sshconnect2.c
patching file sshconnect.c
patching file sshd.c
patching file sshd_config
patching file version.h
Hunk #1 FAILED at 3.
1 out of 1 hunk FAILED -- saving rejects to file version.h.rej

Ich habe dann ohne dry laufen lassen. Hier die 'version.h.rej'
Code:
--- version.h   2011-02-03 19:48:57.000000000 -0500
+++ version.h   2011-02-15 11:36:21.000000000 -0500
@@ -3,4 +3,5 @@
 #define SSH_VERSION    "OpenSSH_5.8"

 #define SSH_PORTABLE   "p1"
-#define SSH_RELEASE    SSH_VERSION SSH_PORTABLE
+#define SSH_HPN         "-hpn13v11"
+#define SSH_RELEASE    SSH_VERSION SSH_PORTABLE SSH_HPN

Ich habe dann './configure' und 'make' ausgeführt. Der Compiler lief ohne Fehler durch. Dann habe ich mit checkinstall ein rpm erzeugt und mit zypper installiert. In der selbst kompilierten Version fehlen allerdings die init scripte (rcsshd und /etc/init.d/sshd). Ich habe nun erst mal die Originalversion wieder installiert. Müssen vielleicht die anderen patche auch alle angewandt werden?

Ich bin trotzdem verblüfft, dass trotz der falschen Zeilen der Patch funktioniert hat.

Gruß schnurzelat
 

spoensche

Moderator
Teammitglied
Der Fehler beim patchen bezieht sich auf das p1 und ist nicht weiter tragisch. Die anderen Patche solltest du auch noch anwenden.
 
OP
S

schnurzelat

Member
So, ich habe nun alle patche außer chroot angewendet (die datei ist nicht vorhanden) und dann kompiliert und installiert. Leider lassen sich dann keine Verbindungen per ssh mehr aufbauen. Ich habe jetzt das normale rpm wieder installiert.

Ich gebe jetzt auf.

Gruß schnurzelat




Edit: Habe doch nicht aufgegeben. Hier gibt ein RPM. Es funktioniert. Ich habe jetzt bei einem ersten Test etwa 100 kb/s mehr per scp. Die Tunnelperformance mit samba hat sich aber bisher nicht verbessert.
 

spoensche

Moderator
Teammitglied
schnurzelat schrieb:
Edit: Habe doch nicht aufgegeben. Hier gibt ein RPM. Es funktioniert. Ich habe jetzt bei einem ersten Test etwa 100 kb/s mehr per scp. Die Tunnelperformance mit samba hat sich aber bisher nicht verbessert.

SSH ist eigentlich auch nicht für den Tunnel zwischen zwei Netzen entwickelt worden. Dafür eignet sich OpenVPN besser.
 
OP
S

schnurzelat

Member
Ich weiß, aber ich komme nur über einen Proxy auf Port 443 TCP raus..............

Wie kann ich eigentlich auf andere Geräte im Heimnetz zugreifen? Ich habe zwar schon einige Anleitungen gefunden, wurde aber nicht so richtig schau daraus. Man soll irgendwie ein tun device anlegen? Was muss man bei Putty/Kitty einstellen?

Hat jemand einen Tip oder Link?

Gruß schnurzelat
 

spoensche

Moderator
Teammitglied
schnurzelat schrieb:
Ich weiß, aber ich komme nur über einen Proxy auf Port 443 TCP raus..............
D-NAT oder Portforwarding kann dir dabei helfen.

schnurzelat schrieb:
Wie kann ich eigentlich auf andere Geräte im Heimnetz zugreifen? Ich habe zwar schon einige Anleitungen gefunden, wurde aber nicht so richtig schau daraus. Man soll irgendwie ein tun device anlegen? Was muss man bei Putty/Kitty einstellen?

Hat jemand einen Tip oder Link?

Was willst du den jetzt mit Putty und wofür? Unter Linux kannst du das alles per openSSH- Client erledigen. Woraus bist du nicht schlau geworden bzw. was hast du nicht verstanden? Wir können es dir erklären, allerdings müsstest du uns ein paar Infos geben.
 
Oben