Re: SSH Tunneling implementation

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: SSH Tunneling implementation
Date: 2012-07-06 14:26:31
Message-ID: CA+OCxoweFL3dAFGLbLDHAcGmJPEikauQs07k5ueZCYP1j4ipKg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi

On Thu, Jul 5, 2012 at 2:07 PM, Akshay Joshi
<akshay(dot)joshi(at)enterprisedb(dot)com> wrote:
> Hi All
>
> I have implemented SSH tunneling using libssh2 library and added the logic
> into pgAdmin3. With current implementation SSH tunnel will be created using
> password as authentication mode. I'll work on the certificate based
> authentication. I have attached two patch files 1) SSHTunnel.patch 2)
> vcxproj.patch (Only for Windows).
>
> Below are the steps to build pgadmin
>
> Download libssh2 source code from http://www.libssh2.org/
>
> On Windows:-
>
> Compile libssh2 library on Windows
>
> "libssh2.dsw" file is available in win32 folder.
> Specify path of the OpenSSL's include folder in
> "Properties->C++->General->Additional Include Directories"
> Specify path of the OpenSSL and Zlib's lib folder in
> "Properties->Linker->General->Additional Library Directories"
>
> Create new environment variable LIBSSH2 and set the path of the libssh2
> folder.
> Compile pgAdmin3.
>
> On Linux:-
>
> To compile libssh2 run ./configure, make and make install.
> Compile pgAdmin3.

OK, a few issues when testing on Mac:

- The SSH tab should follow the SSL tab I think.

- The Certificate/Password options should align with the text boxes,
and have a title. Eg.

Authentication (*) Password ( ) Certificate

- The left hand edge of the cert/key text boxes is misaligned.

- We seem to be unable to decide whether labels on dialogues should
look like "Foo Bar" or "Foo bar" (in many places). Let's not continue
that trend - please use "Foo bar" style in all cases, except where
"bar" is an acronym or initialed abbreviation, eg. "Foo ID"

- The version of libssh2 supplied with MacPorts at present is 1.2.7,
which is missing the libssh2_session_handshake function. Please add a
configure check to ensure we don't try to use a version of libssh2
that's too old.

- When connecting, I got two error messages (see attached). The first
is not very helpful, though I appreciate that may come from libssh2,
in which case you cannot do much about it. The second shouldn't end in
!!!, but with a simple full stop.

- The logs the second dialogue directed me to, don't actually contain
any more info than the dialogues gave me already, so the second
message doesn't help and is redundant. Perhaps the first should be
changed to something like "SSH error: $ERROR".

Otherwise, I agree with Guillaume; when complete this will be a much
needed feature. Which I suppose is unsurprising given that I asked you
to write it :-D

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment Content-Type Size
image/png 28.4 KB
image/png 29.6 KB

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Magnus Hagander 2012-07-06 14:29:57 Re: SSH Tunneling implementation
Previous Message Guillaume Lelarge 2012-07-05 20:43:32 Re: SSH Tunneling implementation