Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Change OpenSSH & OpenSSL versions in Git Bash (msysgit) on Windows

The versions of OpenSSH & OpenSSL in Git Bash are really old. As of this posting, when inputting ssh -V the versions are:

OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007

My question is, how do we upgrade these (safely, without breaking anything, etc.)? This article has a solution, but it only mentions upgrading OpenSSH, not OpenSSL, although I'm sure you could find OpenSSL files to transfer as well. However, it requires installing Cygwin, which may not be wanted. There is a way to download the Cygwin modules but not install them, though, but this does not seem to add some DLL's like cygcrypto.dll & cygwin1.dll.

Even if this works, is there another way? Can you just download some files from openssh.com/openssl.org and change a couple config files?

like image 405
trysis Avatar asked Jan 01 '14 22:01

trysis


People also ask

Can we change SSH port?

Changing the SSH port numberOpen the /etc/ssh/sshd_config file in your preferred text editor (nano, vi, etc.). Remember that for security reasons, A2 Hosting uses port 7822 for SSH connections instead of the default port 22. Change 7822 to the new port number that you want to use.

What is the default SSH port?

The default port for SSH client connections is 22; to change this default, enter a port number between 1024 and 32,767.


2 Answers

UPDATE: This is the file list i am using at the moment to make cygwin ssh work with git bash.

From the cygwin installation directory, copy the below filelist to your git bash installation directory.

Be aware, if you have configured ~/.ssh/config then you need to set correct permissions from cygwin for ssh to work properly.

cygasn1-8.dll cygattr-1.dll cygbz2-1.dll cygcom_err-2.dll cygcrypt-0.dll cygcrypto-1.0.0.dll cygedit-0.dll cygform-10.dll cygformw-10.dll cyggcc_s-1.dll cyggmp-10.dll cyggmp-3.dll cyggssapi-3.dll cygheimbase-1.dll cygheimntlm-0.dll cyghistory7.dll cyghx509-5.dll cygiconv-2.dll cygintl-8.dll cygkafs-0.dll cygkrb5-26.dll cyglsa.dll cyglsa64.dll cyglua-5.1.dll cyglzma-5.dll cygmagic-1.dll cygmenu-10.dll cygmenuw-10.dll cygmp-3.dll cygmpfr-4.dll cygncurses++-10.dll cygncurses++w-10.dll cygncurses-10.dll cygncursesw-10.dll cygpanel-10.dll cygpanelw-10.dll cygpcre-0.dll cygpcre-1.dll cygpopt-0.dll cygreadline7.dll cygroken-18.dll cygsqlite3-0.dll cygssl-1.0.0.dll cygssp-0.dll cygstdc++-6.dll cygtic-10.dll cygticw-10.dll cygwin1.dll cygwind-0.dll cygwrap-0.dll cygz.dll ssh-add.exe ssh-agent.exe ssh-copy-id ssh-host-config ssh-keygen.exe ssh-keyscan.exe ssh-user-config ssh.exe sshfiles

like image 197
Rasmus Østergaard Kjær Voss Avatar answered Sep 30 '22 06:09

Rasmus Østergaard Kjær Voss


Note: the last Git for Windows release (the Git 2.12.1, March 2017) uses now a much more recent OpenSSL version.
The Windows port uses now OpenSSL's implementation of SHA-1 routines

See commit 2cfc70f (09 Feb 2017) by Jeff Hostetler (jeffhostetler).
(Merged by Junio C Hamano -- gitster -- in commit 033328a, 13 Mar 2017)

mingw: use OpenSSL's SHA-1 routines

Use OpenSSL's SHA-1 routines rather than builtin block-sha1 routines.
This improves performance on SHA1 operations on Intel processors.

OpenSSL 1.0.2 has made considerable performance improvements and support the Intel hardware acceleration features.

C:\tools\gits\latest\usr\bin>openssl version
OpenSSL 1.0.2k  26 Jan 2017

See:

  • (Intel) Improving OpenSSL Performance
  • Intel® SHA Extensions

And yes, OpenSSH is more recent too:

C:\tools\gits\latest\usr\bin>ssh -V
OpenSSH_7.3p1, OpenSSL 1.0.2k  26 Jan 2017
like image 35
VonC Avatar answered Sep 30 '22 07:09

VonC