I am out of ideas about what the problem is. I am using the default
sshd_config installed by the port. I can authenticate, copy files, and
start processes, but sshd fails to create a tty session. This happens
from remote machines and creating a session from the host machine. I
find the following under messages.
Aug 8 19:32:16 mongoloid sshd[44626]: fatal: mm_send_fd: sendmsg(4):
Bad file descriptor
Aug 8 19:32:16 mongoloid sshd[44626]: error: close(s->ptymaster/0): Bad
file descriptor
Aug 8 19:32:16 mongoloid sshd[44629]: fatal: mm_receive_fd: recvmsg:
expected received 1 got 0
And here is a debug script from sshd.
Script started on Tue Aug 8 19:33:45 2006
19:33 emillbrandt at mongoloid:/usr/local/etc/periodic/daily# uname -a
FreeBSD mongoloid.xxxxxxxxx.com 4.11-STABLE FreeBSD 4.11-STABLE #9: Thu
Mar 23 21:27:05 EST 2006
emillbrandt at mongoloid.xxxxxx.com:/builds/obj/usr/src/sys/MONGOLOID alpha
19:34 emillbrandt at mongoloid:/usr/local/etc/periodic/daily# gcc --version
2.95.4
19:34 emillbrandt at mongoloid:/usr/local/etc/periodic/daily#
/usr/sbin/sshd -dddD
debug2: load_server_config: filename /etc/ssh/sshd_config
debug2: load_server_config: done config len = 247
debug2: parse_server_config: config /etc/ssh/sshd_config len 247
debug1: sshd version OpenSSH_4.3p2
debug3: Not a RSA1 key file /etc/ssh/ssh_host_rsa_key.
debug1: read PEM private key done: type RSA
debug1: private host key: #0 type 1 RSA
debug3: Not a RSA1 key file /etc/ssh/ssh_host_dsa_key.
debug1: read PEM private key done: type DSA
debug1: private host key: #1 type 2 DSA
debug1: rexec_argv[0]='/usr/sbin/sshd'
debug1: rexec_argv[1]='-dddD'
debug2: fd 3 setting O_NONBLOCK
debug1: Bind to port 22 on ::.
Server listening on :: port 22.
debug2: fd 4 setting O_NONBLOCK
debug1: Bind to port 22 on 0.0.0.0.
Server listening on 0.0.0.0 port 22.
debug1: fd 5 clearing O_NONBLOCK
debug1: Server will not fork when running in debugging mode.
debug3: send_rexec_state: entering fd = 8 config len 247
debug3: ssh_msg_send: type 0
debug3: send_rexec_state: done
debug1: rexec start in 5 out 5 newsock 5 pipe -1 sock 8
debug1: inetd sockets after dupping: 3, 3
debug1: res_init()
Connection from 192.168.1.42 port 4825
debug1: Client protocol version 2.0; client software version OpenSSH_4.3
debug1: match: OpenSSH_4.3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.3
debug2: fd 3 setting O_NONBLOCK
debug2: Network child is on pid 44667
debug3: preauth child monitor started
debug3: mm_request_receive entering
debug3: privsep user:group 22:22
debug1: permanently_set_uid: 22/22
debug1: list_hostkey_types: ssh-rsa,ssh-dss
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit:
diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit:
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,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,arcfour128,arcfour256,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 at openssh.com
debug2: kex_parse_kexinit: none,zlib at openssh.com
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:
diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit:
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,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,arcfour128,arcfour256,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 at openssh.com,zlib
debug2: kex_parse_kexinit: none,zlib at openssh.com,zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: mac_init: found hmac-md5
debug1: kex: client->server aes128-cbc hmac-md5 none
debug2: mac_init: found hmac-md5
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST received
debug3: mm_request_send entering: type 0
debug3: monitor_read: checking request 0
debug3: mm_answer_moduli: got parameters: 1024 1024 8192
debug3: mm_choose_dh: waiting for MONITOR_ANS_MODULI
debug3: mm_request_receive_expect entering: type 1
debug3: mm_request_receive entering
debug3: mm_request_send entering: type 1
debug3: mm_choose_dh: remaining 0
debug1: SSH2_MSG_KEX_DH_GEX_GROUP sent
debug2: monitor_read: 0 used once, disabling now
debug3: mm_request_receive entering
debug2: dh_gen_key: priv key bits set: 131/256
debug2: bits set: 519/1024
debug1: expecting SSH2_MSG_KEX_DH_GEX_INIT
debug2: bits set: 521/1024
debug3: mm_key_sign entering
debug3: mm_request_send entering: type 4
debug3: monitor_read: checking request 4
debug3: mm_answer_sign
debug3: mm_key_sign: waiting for MONITOR_ANS_SIGN
debug3: mm_request_receive_expect entering: type 5
debug3: mm_request_receive entering
debug3: mm_answer_sign: signature 0x120094600(271)
debug3: mm_request_send entering: type 5
debug1: SSH2_MSG_KEX_DH_GEX_REPLY sent
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: monitor_read: 4 used once, disabling now
debug3: mm_request_receive entering
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: KEX done
debug3: Trying to reverse map address 192.168.1.42.
debug1: userauth-request for user emillbrandt service ssh-connection
method none
debug1: attempt 0 failures 0
debug3: mm_getpwnamallow entering
debug3: mm_request_send entering: type 6
debug3: monitor_read: checking request 6
debug3: mm_getpwnamallow: waiting for MONITOR_ANS_PWNAM
debug3: mm_answer_pwnamallow
debug3: mm_request_receive_expect entering: type 7
debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 1
debug3: mm_request_receive entering
debug3: mm_request_send entering: type 7
debug2: input_userauth_request: setting up authctxt for emillbrandt
debug2: monitor_read: 6 used once, disabling now
debug3: mm_start_pam entering
debug3: mm_request_receive entering
debug3: mm_request_send entering: type 45
debug3: monitor_read: checking request 45
debug3: mm_inform_authserv entering
debug1: PAM: initializing for "emillbrandt"
debug3: mm_request_send entering: type 3
debug2: input_userauth_request: try method none
debug3: Trying to reverse map address 192.168.1.42.
Failed none for emillbrandt from 192.168.1.42 port 4825 ssh2
debug1: PAM: setting PAM_RHOST to "mongoloid"
debug2: monitor_read: 45 used once, disabling now
debug1: userauth-request for user emillbrandt service ssh-connection
method keyboard-interactive
debug3: mm_request_receive entering
debug1: attempt 1 failures 1
debug3: monitor_read: checking request 3
debug2: input_userauth_request: try method keyboard-interactive
debug3: mm_answer_authserv: service=ssh-connection, styledebug1:
keyboard-interactive devs
debug2: monitor_read: 3 used once, disabling now
debug1: auth2_challenge: user=emillbrandt devsdebug3: mm_request_receive
entering
debug1: kbdint_alloc: devices 'pam'
debug2: auth2_challenge_start: devices pam
debug2: kbdint_next_device: devices <empty>
debug1: auth2_challenge_start: trying authentication method 'pam'
debug3: mm_sshpam_init_ctx
debug3: mm_request_send entering: type 48
debug3: monitor_read: checking request 48
debug3: mm_sshpam_init_ctx: waiting for MONITOR_ANS_PAM_INIT_CTX
debug3: mm_answer_pam_init_ctx
debug3: mm_request_receive_expect entering: type 49
debug3: PAM: sshpam_init_ctx entering
debug3: mm_request_receive entering
debug3: mm_request_send entering: type 49
debug3: PAM: sshpam_thread_conv entering, 1 messages
debug3: ssh_msg_send: type 1
debug3: mm_sshpam_query
debug3: ssh_msg_recv entering
debug3: mm_request_receive entering
debug3: mm_request_send entering: type 50
debug3: monitor_read: checking request 50
debug3: mm_sshpam_query: waiting for MONITOR_ANS_PAM_QUERY
debug3: mm_answer_pam_query
debug3: mm_request_receive_expect entering: type 51
debug3: PAM: sshpam_query entering
debug3: mm_request_receive entering
debug3: ssh_msg_recv entering
debug3: mm_request_send entering: type 51
debug3: mm_sshpam_query: pam_query returned 0
debug3: mm_request_receive entering
Postponed keyboard-interactive for emillbrandt from 192.168.1.42 port
4825 ssh2
debug3: mm_sshpam_respond
debug3: mm_request_send entering: type 52
debug3: monitor_read: checking request 52
debug3: mm_answer_pam_respond
debug2: PAM: sshpam_respond entering, 1 responses
debug3: ssh_msg_send: type 6
debug3: mm_sshpam_respond: waiting for MONITOR_ANS_PAM_RESPOND
debug3: mm_request_receive_expect entering: type 53
debug3: mm_request_receive entering
debug1: do_pam_account: called
debug3: PAM: do_pam_account pam_acct_mgmt = 0 (Success)
debug3: ssh_msg_send: type 0
debug3: mm_request_send entering: type 53
debug3: mm_sshpam_respond: pam_respond returned 1
debug3: mm_request_receive entering
debug3: mm_sshpam_query
debug3: mm_request_send entering: type 50
debug3: monitor_read: checking request 50
debug3: mm_answer_pam_query
debug3: PAM: sshpam_query entering
debug3: ssh_msg_recv entering
debug3: PAM: import_environments entering
debug3: sshpam_password_change_required 0
debug3: PAM: num env strings 0
debug1: PAM: num PAM env strings 0
debug3: mm_request_send entering: type 51
debug3: mm_request_receive entering
debug3: mm_sshpam_query: waiting for MONITOR_ANS_PAM_QUERY
debug3: mm_request_receive_expect entering: type 51
debug3: mm_request_receive entering
debug3: mm_sshpam_query: pam_query returned 0
Postponed keyboard-interactive/pam for emillbrandt from 192.168.1.42
port 4825 ssh2
debug3: mm_sshpam_respond
debug3: mm_request_send entering: type 52
debug3: monitor_read: checking request 52
debug3: mm_answer_pam_respond
debug2: PAM: sshpam_respond entering, 0 responses
debug3: mm_request_send entering: type 53
debug3: mm_request_receive entering
debug3: mm_sshpam_respond: waiting for MONITOR_ANS_PAM_RESPOND
debug3: mm_request_receive_expect entering: type 53
debug3: mm_request_receive entering
debug3: mm_sshpam_respond: pam_respond returned 0
debug3: mm_sshpam_free_ctx
debug3: mm_request_send entering: type 54
debug3: monitor_read: checking request 54
debug3: mm_answer_pam_free_ctx
debug3: PAM: sshpam_free_ctx entering
debug3: PAM: sshpam_thread_cleanup entering
debug3: mm_request_send entering: type 55
debug2: monitor_read: 54 used once, disabling now
debug3: mm_request_receive_expect entering: type 46
debug3: mm_request_receive entering
debug3: mm_sshpam_free_ctx: waiting for MONITOR_ANS_PAM_FREE_CTX
debug3: mm_request_receive_expect entering: type 55
debug3: mm_request_receive entering
debug3: mm_do_pam_account entering
debug3: mm_request_send entering: type 46
debug1: do_pam_account: called
debug3: mm_request_send entering: type 47
Accepted keyboard-interactive/pam for emillbrandt from 192.168.1.42 port
4825 ssh2
debug1: monitor_child_preauth: emillbrandt has been authenticated by
privileged process
debug3: mm_get_keystate: Waiting for new keys
debug3: mm_request_receive_expect entering: type 24
debug3: mm_request_receive entering
debug3: mm_request_receive_expect entering: type 47
debug3: mm_request_receive entering
debug3: mm_do_pam_account returning 1
Accepted keyboard-interactive/pam for emillbrandt from 192.168.1.42 port
4825 ssh2
debug3: mm_send_keystate: Sending new keys: 0x12008e680 0x12008e600
debug3: mm_newkeys_to_blob: converting 0x12008e680
debug3: mm_newkeys_to_blob: converting 0x12008e600
debug3: mm_send_keystate: New keys have been sent
debug3: mm_send_keystate: Sending compression state
debug3: mm_request_send entering: type 24
debug3: mm_newkeys_from_blob: 0x12008e480(122)
debug2: mac_init: found hmac-md5
debug3: mm_get_keystate: Waiting for second key
debug3: mm_newkeys_from_blob: 0x12008e480(122)
debug2: mac_init: found hmac-md5
debug3: mm_get_keystate: Getting compression state
debug3: mm_get_keystate: Getting Network I/O buffers
debug3: mm_share_sync: Share sync
debug3: mm_share_sync: Share sync end
debug3: mm_send_keystate: Finished sending state
debug2: User child is on pid 44675
debug3: mm_request_receive entering
debug3: PAM: opening session
debug1: PAM: reinitializing credentials
debug1: permanently_set_uid: 1000/0
debug2: set_newkeys: mode 0
debug2: set_newkeys: mode 1
debug1: Entering interactive session for SSH2.
debug2: fd 5 setting O_NONBLOCK
debug2: fd 6 setting O_NONBLOCK
debug1: server_init_dispatch_20
debug1: server_input_channel_open: ctype session rchan 0 win 65536 max
16384
debug1: input_session_request
debug1: channel 0: new [server-session]
debug1: session_new: init
debug1: session_new: session 0
debug1: session_open: channel 0
debug1: session_open: session 0: link with channel 0
debug1: server_input_channel_open: confirm session
debug1: server_input_channel_req: channel 0 request pty-req reply 0
debug1: session_by_channel: session 0 channel 0
debug1: session_input_channel_req: session 0 req pty-req
debug1: Allocating pty.
debug3: mm_request_send entering: type 25
debug3: monitor_read: checking request 25
debug3: mm_answer_pty entering
debug1: session_new: init
debug1: session_new: session 0
debug3: mm_request_send entering: type 26
mm_send_fd: sendmsg(4): Bad file descriptor
debug1: do_cleanup
debug1: PAM: cleanup
debug3: PAM: sshpam_thread_cleanup entering
debug1: session_pty_cleanup: session 0 release /dev/ttyp3
close(s->ptymaster/0): Bad file descriptor
19:35 emillbrandt at mongoloid:/usr/local/etc/periodic/daily# debug3:
mm_pty_allocate: waiting for MONITOR_ANS_PTY
debug3: mm_request_receive_expect entering: type 26
debug3: mm_request_receive entering
mm_receive_fd: recvmsg: expected received 1 got 0
debug1: do_cleanup
debug1: PAM: cleanup
debug3: PAM: sshpam_thread_cleanup entering
19:35 emillbrandt at mongoloid:/usr/local/etc/periodic/daily# exit
exit
Script done on Tue Aug 8 19:35:22 2006