Bug in Sam's OpenSSH patches?

Nicolas Williams Nicolas.Williams at sun.com
Wed Apr 13 13:53:53 EDT 2005


On Wed, Apr 13, 2005 at 01:18:50AM -0700, Henry B. Hotz wrote:
> I D/L'd and built on MacOS 10.3.  Tried client against Solaris 10  
> server.
> 
> It works without any keys in the known_hosts file, but it uses  
> gssapi-with-mic for the userauth method instead of gssapi-keyex.
> 
> I guess, aside from efficiency, this gets me what I want.  The config  
> options aren't the same between the two implementations, but that's OK  
> since the documentation seems consistent.  I just yesterday gave a talk  
> to JPL's SA's and recommended they use the Debian package for SSH.   
> Hope I get some takers.
> 
> So, thanks for the great work, Sam.
> 
> [Henry-B-Hotzs-Computer:~] hotz% ssh -vvv redhotz
> OpenSSH_3.8.1p1 , OpenSSL 0.9.7b 10 Apr 2003
> debug1: Reading configuration data /Users/hotz/.ssh/config
> debug1: Reading configuration data /usr/local/etc/ssh_config
> debug2: ssh_connect: needpriv 0
> debug1: Connecting to redhotz [137.78.61.54] port 22.
> debug1: Connection established.
> debug1: identity file /Users/hotz/.ssh/identity type -1
> debug1: identity file /Users/hotz/.ssh/id_rsa type -1
> debug1: identity file /Users/hotz/.ssh/id_dsa type -1
> debug1: Remote protocol version 2.0, remote software version Sun_SSH_1.1
> debug1: no match: Sun_SSH_1.1
> debug1: Enabling compatibility mode for protocol 2.0
> debug1: Local version string SSH-2.0-OpenSSH_3.8.1p1
> debug3: Trying to reverse map address 137.78.61.54.
> Nasty PTR record "redhotz.jpl.nasa.gov" is set up for 137.78.61.54,  
> ignoring
> debug1: Mechanism encoded as toWM5Slw5Ew8Mqkay+al2g==
> debug1: Mechanism encoded as A/vxljAEU54gt9a48EiANQ==
> debug1: SSH2_MSG_KEXINIT sent
> debug1: SSH2_MSG_KEXINIT received
> debug2: kex_parse_kexinit:  
> gss-group1-sha1-toWM5Slw5Ew8Mqkay+al2g==,gss-group1-sha1-A/ 
> vxljAEU54gt9a48EiANQ==,diffie-hellman-group-exchange-sha1,diffie- 
> hellman-group1-sha1
> debug2: kex_parse_kexinit: ssh-rsa,ssh-dss,null
> debug2: kex_parse_kexinit:  
> aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256- 
> cbc,rijndael-cbc at lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
> debug2: kex_parse_kexinit:  
> aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256- 
> cbc,rijndael-cbc at lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr
> debug2: kex_parse_kexinit:  
> hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160 at openssh.com,hmac-sha1 
> -96,hmac-md5-96
> debug2: kex_parse_kexinit:  
> hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160 at openssh.com,hmac-sha1 
> -96,hmac-md5-96
> debug2: kex_parse_kexinit: none,zlib
> debug2: kex_parse_kexinit: none,zlib
> debug2: kex_parse_kexinit:
> debug2: kex_parse_kexinit:
> debug2: kex_parse_kexinit: first_kex_follows 0
> debug2: kex_parse_kexinit: reserved 0
> debug2: kex_parse_kexinit:  
> gss-group1-sha1-toWM5Slw5Ew8Mqkay+al2g==,diffie-hellman-group-exchange- 
> sha1,diffie-hellman-group1-sha1
> debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
> debug2: kex_parse_kexinit:  
> aes128-ctr,aes128-cbc,arcfour,3des-cbc,blowfish-cbc
> debug2: kex_parse_kexinit:  
> aes128-ctr,aes128-cbc,arcfour,3des-cbc,blowfish-cbc
> debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-sha1-96,hmac-md5-96
> debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-sha1-96,hmac-md5-96
> debug2: kex_parse_kexinit: none,zlib
> debug2: kex_parse_kexinit: none,zlib
> debug2: kex_parse_kexinit:  
> cs-CZ,de,de-DE,en-US,es,es-ES,fi-FI,fr,fr-BE,fr-FR,hi-IN,hu-HU,it,it- 
> IT,ja-JP,ko,ko-KR,pl,pl-PL,sv,sv-SE,th-TH,zh,zh-CN,zh-HK,zh-TW,ca,ca- 
> ES,cz,da,da-DK,de-AT,de-CH,el,el-GR,en-CA,en-GB,en-IE,es-MX,fi,fr- 
> CA,fr-CH,hu,is-IS,ja,nl,nl-BE,nl-NL,no,no-NO,no-NY,pt,pt-PT,sk-SK,th,i- 
> default
> debug2: kex_parse_kexinit:  
> cs-CZ,de,de-DE,en-US,es,es-ES,fi-FI,fr,fr-BE,fr-FR,hi-IN,hu-HU,it,it- 
> IT,ja-JP,ko,ko-KR,pl,pl-PL,sv,sv-SE,th-TH,zh,zh-CN,zh-HK,zh-TW,ca,ca- 
> ES,cz,da,da-DK,de-AT,de-CH,el,el-GR,en-CA,en-GB,en-IE,es-MX,fi,fr- 
> CA,fr-CH,hu,is-IS,ja,nl,nl-BE,nl-NL,no,no-NO,no-NY,pt,pt-PT,sk-SK,th,i- 
> default
> debug2: kex_parse_kexinit: first_kex_follows 0
> debug2: kex_parse_kexinit: reserved 0
> debug2: mac_init: found hmac-md5
> debug1: kex: server->client aes128-cbc hmac-md5 none
> debug2: mac_init: found hmac-md5
> debug1: kex: client->server aes128-cbc hmac-md5 none
> debug2: dh_gen_key: priv key bits set: 124/256
> debug2: bits set: 496/1024
> debug1: Calling gss_init_sec_context
> debug1: Delegating credentials
> debug1: Received GSSAPI_COMPLETE
> debug1: Calling gss_init_sec_context
> debug1: Delegating credentials
> debug2: bits set: 503/1024
> debug2: kex_derive_keys
> debug2: set_newkeys: mode 1
> debug1: SSH2_MSG_NEWKEYS sent
> debug1: expecting SSH2_MSG_NEWKEYS
> debug2: set_newkeys: mode 0
> debug1: SSH2_MSG_NEWKEYS received

The above indicates that the SSHv2 GSS key exchange worked successfully.

> debug1: SSH2_MSG_SERVICE_REQUEST sent
> debug2: service_accept: ssh-userauth
> debug1: SSH2_MSG_SERVICE_ACCEPT received
> debug2: key: /Users/hotz/.ssh/identity (0x0)
> debug2: key: /Users/hotz/.ssh/id_rsa (0x0)
> debug2: key: /Users/hotz/.ssh/id_dsa (0x0)
> debug3: input_userauth_banner
> This computer is funded by the United States Government and operated by  
> the
> California Institute of Technology in support of ongoing U.S. Government
> programs and activities. If you are not authorized to access this  
> system,
> disconnect now. Users of this system have no expectation of privacy.
> By continuing, you consent to your keystrokes and data content being  
> monitored.
> debug1: Authentications that can continue:  
> gssapi-keyex,gssapi-with-mic,publickey,password,keyboard-interactive
> debug3: start over, passed a different list  
> gssapi-keyex,gssapi-with-mic,publickey,password,keyboard-interactive
> debug3: preferred  
> gssapi-keyex,gssapi-with-mic,hostbased,publickey,keyboard- 
> interactive,password
> debug3: authmethod_lookup gssapi-keyex
> debug3: remaining preferred:  
> gssapi-with-mic,hostbased,publickey,keyboard-interactive,password
> debug2: Unrecognized authentication method name: gssapi-keyex
> 
> This is the one that confuses me.  "Unrecognized"?

It says that your client lacks support for the "gssapi-keyex" userauth
method, which, as Simon explained, is the right way to do userauth based
on the initial GSS key exchange.

> debug3: authmethod_lookup gssapi-with-mic
> debug3: remaining preferred:  
> hostbased,publickey,keyboard-interactive,password
> debug3: authmethod_is_enabled gssapi-with-mic
> debug1: Next authentication method: gssapi-with-mic
> debug2: we sent a gssapi-with-mic packet, wait for reply
> debug1: Delegating credentials
> debug1: Delegating credentials
> debug1: Authentication succeeded (gssapi-with-mic).

This worked, so you should be happy :)

Two GSS security contexts had to be established, which is a bit of a
waste, but hey.

Nico
-- 


More information about the krbdev mailing list