Archived Forum Post

Index of archived forum posts

Question:

SSH Fails to login on peer-to-peer connection through SSH-2.0 OpenSSH 6.6

Nov 20 '15 at 13:01

Using Chilkat v9.5.0.54 on a two node peer-to-peer network does not login to a SSH-2.0 OpenSSH_6.6 server. When the same two nodes are connected through a network SSH logs in ok. When the SSH server is downgraded to SSH-1.99 OpenSSH_4.3 log in is also successful. In all cases, running a PuTTY window logs in thereby proving the connection supports SSH regardless of the physical and server configuration. Is there something that can be adjusted to enable login through the Chilkat SSH component in the required configuration (peer-to-peer to SSH2.0 OpenSSH 6.6)?

Thanks

Debug Log, peer-to-peer SSH2.0 OpenSSH 6.6:

Connect_Ssh:
    DllDate: Oct 29 2015
    ChilkatVersion: 9.5.0.54
    UnlockPrefix: COPTECSSH
    Username: VS2012:mark
    Architecture: Little Endian; 32-bit
    Language: .NET 4.5
    VerboseLogging: 0
    hostname: 192.168.1.202
    port: 22
    sshConnect:
        connectSocket:
            connect_ipv6_or_ipv4:
                getAddressInfo:
                    (leaveContext)
                (leaveContext)
            (leaveContext)
        Established TCP/IP connection with SSH server
        clientIdentifier: SSH-2.0-PuTTY_Release_0.63
        Sending client identifier...
        Done sending client identifier.
        Reading server version...
        initialDataFromSshServer: SSH-2.0-OpenSSH_6.6

            serverVersion: SSH-2.0-OpenSSH_6.6
            KeyExchangeAlgs:
                algorithm: curve25519-sha256@libssh.org
                algorithm: ecdh-sha2-nistp256
                algorithm: ecdh-sha2-nistp384
                algorithm: ecdh-sha2-nistp521
                algorithm: diffie-hellman-group-exchange-sha256
                algorithm: diffie-hellman-group-exchange-sha1
                algorithm: diffie-hellman-group14-sha1
                algorithm: diffie-hellman-group1-sha1
                (leaveContext)
            HostKeyAlgs:
                algorithm: ssh-rsa
                algorithm: ssh-dss
                algorithm: ecdsa-sha2-nistp256
                algorithm: ssh-ed25519
                (leaveContext)
            EncCS:
                algorithm: aes128-ctr
                algorithm: aes192-ctr
                algorithm: aes256-ctr
                algorithm: arcfour256
                algorithm: arcfour128
                algorithm: aes128-gcm@openssh.com
                algorithm: aes256-gcm@openssh.com
                algorithm: chacha20-poly1305@openssh.com
                algorithm: aes128-cbc
                algorithm: 3des-cbc
                algorithm: blowfish-cbc
                algorithm: cast128-cbc
                algorithm: aes192-cbc
                algorithm: aes256-cbc
                algorithm: arcfour
                algorithm: rijndael-cbc@lysator.liu.se
                (leaveContext)
            EncSC:
                algorithm: aes128-ctr
                algorithm: aes192-ctr
                algorithm: aes256-ctr
                algorithm: arcfour256
                algorithm: arcfour128
                algorithm: aes128-gcm@openssh.com
                algorithm: aes256-gcm@openssh.com
                algorithm: chacha20-poly1305@openssh.com
                algorithm: aes128-cbc
                algorithm: 3des-cbc
                algorithm: blowfish-cbc
                algorithm: cast128-cbc
                algorithm: aes192-cbc
                algorithm: aes256-cbc
                algorithm: arcfour
                algorithm: rijndael-cbc@lysator.liu.se
                (leaveContext)
            MacCS:
                algorithm: hmac-md5-etm@openssh.com
                algorithm: hmac-sha1-etm@openssh.com
                algorithm: umac-64-etm@openssh.com
                algorithm: umac-128-etm@openssh.com
                algorithm: hmac-sha2-256-etm@openssh.com
                algorithm: hmac-sha2-512-etm@openssh.com
                algorithm: hmac-ripemd160-etm@openssh.com
                algorithm: hmac-sha1-96-etm@openssh.com
                algorithm: hmac-md5-96-etm@openssh.com
                algorithm: hmac-md5
                algorithm: hmac-sha1
                algorithm: umac-64@openssh.com
                algorithm: umac-128@openssh.com
                algorithm: hmac-sha2-256
                algorithm: hmac-sha2-512
                algorithm: hmac-ripemd160
                algorithm: hmac-ripemd160@openssh.com
                algorithm: hmac-sha1-96
                algorithm: hmac-md5-96
                (leaveContext)
            MacSC:
                algorithm: hmac-md5-etm@openssh.com
                algorithm: hmac-sha1-etm@openssh.com
                algorithm: umac-64-etm@openssh.com
                algorithm: umac-128-etm@openssh.com
                algorithm: hmac-sha2-256-etm@openssh.com
                algorithm: hmac-sha2-512-etm@openssh.com
                algorithm: hmac-ripemd160-etm@openssh.com
                algorithm: hmac-sha1-96-etm@openssh.com
                algorithm: hmac-md5-96-etm@openssh.com
                algorithm: hmac-md5
                algorithm: hmac-sha1
                algorithm: umac-64@openssh.com
                algorithm: umac-128@openssh.com
                algorithm: hmac-sha2-256
                algorithm: hmac-sha2-512
                algorithm: hmac-ripemd160
                algorithm: hmac-ripemd160@openssh.com
                algorithm: hmac-sha1-96
                algorithm: hmac-md5-96
                (leaveContext)
            CompCS:
                algorithm: none
                (leaveContext)
            CompSC:
                algorithm: none
                (leaveContext)
            LangCS:
                (leaveContext)
            LangSC:
                (leaveContext)
            ChosenIncomingEncryption: aes256-ctr
            ChosenOutgoingEncryptoin: aes256-ctr
            ChosenIncomingMac: hmac-sha2-256
            ChosenOutgoingMac: hmac-sha2-256
            ChosenIncomingCompression: none
            ChosenOutgoingCompression: none
            ChosenKexAlgorithm: diffie-hellman-group-exchange-sha256
            ChosenHostKeyAlgorithm: ssh-dss
            Received GEX Group.
            sendDhInit:
                (leaveContext)
            Using SHA256 for Key Exchange Hash
            DSS host key parsed successfully.
            dsaSigValid: 1
            Sending newkeys to server...
            Expecting newkeys from server...
            SSH Key Exchange Success.
            No outgoing compression.
            No incoming compression.
            Outgoing encryption is now AES 256 CTR
            outgoingMac: SHA256
            (leaveContext)
        socketOptions:
            SO_SNDBUF: 262144
            SO_RCVBUF: 4194304
            TCP_NODELAY: 1
            SO_KEEPALIVE: 0
            (leaveContext)
        Success.
        (leaveContext)
    AuthenticatePw:
        DllDate: Oct 29 2015
        ChilkatVersion: 9.5.0.54
        UnlockPrefix: COPTECSSH
        Username: VS2012:mark
        Architecture: Little Endian; 32-bit
        Language: .NET 4.5
        VerboseLogging: 0
        SshVersion: SSH-2.0-OpenSSH_6.6
        sshAuthenticatePw:
            requestUserAuthService:
                sendServiceRequest:
                    svcName: ssh-userauth
                    SentServiceReq: ssh-userauth
                    (leaveContext)
                sshReadMessage:
                    mType: SERVICE_ACCEPT
                    (leaveContext)
                ssh-userauth service accepted.
                (leaveContext)
            sshReadMessage:
                (leaveContext)
            Error reading userauth response.
            userAuthResponse: Socket operation timeout.
            (leaveContext)
        Failed.
        (leaveContext)

Debug Log, peer-to-peer SSH 1.99 OpenSSH 4.3

Connect_Ssh:
    DllDate: Oct 29 2015
    ChilkatVersion: 9.5.0.54
    UnlockPrefix: COPTECSSH
    Username: VS2012:mark
    Architecture: Little Endian; 32-bit
    Language: .NET 4.5
    VerboseLogging: 0
    hostname: 192.168.1.202
    port: 22
    sshConnect:
        connectSocket:
            connect_ipv6_or_ipv4:
                getAddressInfo:
                    (leaveContext)
                (leaveContext)
            (leaveContext)
        Established TCP/IP connection with SSH server
        clientIdentifier: SSH-2.0-PuTTY_Release_0.63
        Sending client identifier...
        Done sending client identifier.
        Reading server version...
        initialDataFromSshServer: SSH-1.99-OpenSSH_4.3

        serverVersion: SSH-1.99-OpenSSH_4.3
        KeyExchangeAlgs:
            algorithm: diffie-hellman-group-exchange-sha1
            algorithm: diffie-hellman-group14-sha1
            algorithm: diffie-hellman-group1-sha1
            (leaveContext)
        HostKeyAlgs:
            algorithm: ssh-rsa
            algorithm: ssh-dss
            (leaveContext)
        EncCS:
            algorithm: aes128-cbc
            algorithm: 3des-cbc
            algorithm: blowfish-cbc
            algorithm: cast128-cbc
            algorithm: arcfour128
            algorithm: arcfour256
            algorithm: arcfour
            algorithm: aes192-cbc
            algorithm: aes256-cbc
            algorithm: rijndael-cbc@lysator.liu.se
            algorithm: aes128-ctr
            algorithm: aes192-ctr
            algorithm: aes256-ctr
            (leaveContext)
        EncSC:
            algorithm: aes128-cbc
            algorithm: 3des-cbc
            algorithm: blowfish-cbc
            algorithm: cast128-cbc
            algorithm: arcfour128
            algorithm: arcfour256
            algorithm: arcfour
            algorithm: aes192-cbc
            algorithm: aes256-cbc
            algorithm: rijndael-cbc@lysator.liu.se
            algorithm: aes128-ctr
            algorithm: aes192-ctr
            algorithm: aes256-ctr
            (leaveContext)
        MacCS:
            algorithm: hmac-md5
            algorithm: hmac-sha1
            algorithm: hmac-ripemd160
            algorithm: hmac-ripemd160@openssh.com
            algorithm: hmac-sha1-96
            algorithm: hmac-md5-96
            (leaveContext)
        MacSC:
            algorithm: hmac-md5
            algorithm: hmac-sha1
            algorithm: hmac-ripemd160
            algorithm: hmac-ripemd160@openssh.com
            algorithm: hmac-sha1-96
            algorithm: hmac-md5-96
            (leaveContext)
        CompCS:
            algorithm: none
            algorithm: zlib@openssh.com
            (leaveContext)
        CompSC:
            algorithm: none
            algorithm: zlib@openssh.com
            (leaveContext)
        LangCS:
            (leaveContext)
        LangSC:
            (leaveContext)
        ChosenIncomingEncryption: aes256-ctr
        ChosenOutgoingEncryptoin: aes256-ctr
        ChosenIncomingMac: hmac-sha1
        ChosenOutgoingMac: hmac-sha1
        ChosenIncomingCompression: zlib@openssh.com
        ChosenOutgoingCompression: zlib@openssh.com
        ChosenKexAlgorithm: diffie-hellman-group-exchange-sha1
        ChosenHostKeyAlgorithm: ssh-dss
        Received GEX Group.
        sendDhInit:
            (leaveContext)
        Using SHA-1 for Key Exchange Hash
        DSS host key parsed successfully.
        dsaSigValid: 1
        Sending newkeys to server...
        Expecting newkeys from server...
        SSH Key Exchange Success.
        Delay compression until after USERAUTH_SUCCESS
        No outgoing compression.
        No incoming compression.
        Outgoing encryption is now AES 256 CTR
        outgoingMac: SHA1
        (leaveContext)
    socketOptions:
        SO_SNDBUF: 262144
        SO_RCVBUF: 4194304
        TCP_NODELAY: 1
        SO_KEEPALIVE: 0
        (leaveContext)
    Success.
    (leaveContext)
AuthenticatePw:
    DllDate: Oct 29 2015
    ChilkatVersion: 9.5.0.54
    UnlockPrefix: COPTECSSH
    Username: VS2012:mark
    Architecture: Little Endian; 32-bit
    Language: .NET 4.5
    VerboseLogging: 0
    SshVersion: SSH-1.99-OpenSSH_4.3
    sshAuthenticatePw:
        requestUserAuthService:
            sendServiceRequest:
                svcName: ssh-userauth
                SentServiceReq: ssh-userauth
                (leaveContext)
            sshReadMessage:
                mType: SERVICE_ACCEPT
                (leaveContext)
            ssh-userauth service accepted.
            (leaveContext)
        sshReadMessage:
            mType: USERAUTH_FAILURE
            (leaveContext)
        AuthMethods: publickey,password,keyboard-interactive
        passwordAuth:
            Sent login/password
            sshReadMessage:
                mType: USERAUTH_SUCCESS
                (leaveContext)
            Password authentication successful.
            (leaveContext)
        (leaveContext)
    Success.
    (leaveContext)

Answer

Try this new build:

http://www.chilkatsoft.com/download/preRelease/ChilkatDotNet45-9.5.0-win32.zip

Also, turn on verbose logging (by setting the sftp.VerboseLogging property = true), and post the verbose LastErrorText for the failed method call.


Answer

As a result of looking through the verbose logging, it was possible to see that authentication was timing out. Increasing the IdleTimeout value allowed the login to work as expected. Thanks to Chilkat for the new DLL and tracking down the root cause of this problem.