Bug 1273388 - ssh-ldap-helper doesn't parse TLS_CheckPeer from /etc/ssh/ldap.conf
ssh-ldap-helper doesn't parse TLS_CheckPeer from /etc/ssh/ldap.conf
Status: CLOSED NEXTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: openssh (Show other bugs)
7.1
Unspecified Unspecified
unspecified Severity medium
: rc
: ---
Assigned To: Jakub Jelen
BaseOS QE Security Team
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-10-20 06:56 EDT by Michael Fischer
Modified: 2015-10-22 05:16 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-10-22 05:16:57 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michael Fischer 2015-10-20 06:56:17 EDT
Description of problem:

A bug in ssh-ldap-helper causes it not to parse the "TLS_CheckPeer" option from /etc/ssh/ldap.conf.  Consequently it is always set to "Hard" even if the user specifies otherwise.

Version-Release number of selected component (if applicable): openssh-ldap-6.6.1p1-12


Steps to Reproduce:

1. Configure LDAP server with proper schema, and set user's sshPublicKey attribute 
to the public key of the user.  Configure same LDAP server such that its TLS certificate is self-signed.

2. Configure LDAP client and install openssh-ldap. 

3. Edit /etc/ssh/ldap.conf.  Set "SSL yes" and "URI ldaps:///ldap-server-hostname".  Also set "TLS_CheckPeer never".

Actual results:

"/usr/libexec/openssh/ssh-ldap-helper -s username" fails to work.  LDAP server reports TLS handshake failure due to the helper checking the validity of the TLS certificate presented by the LDAP server.  Adding the "-vvvv" argument to ssh-ldap-helper shows that the configuration parameter is not being properly parsed.

Expected results:

"/usr/libexec/openssh/ssh-ldap-helper -s username" should return the user's ssh public key from the LDAP server.

Additional info:

The bug seems to be in ldapconf.c, process_config_line() function.  In the lTLS_CheckPeer case, the value is never returned to the caller.
Comment 2 Jakub Jelen 2015-10-22 05:16:57 EDT
(In reply to Michael Fischer from comment #0)
> The bug seems to be in ldapconf.c, process_config_line() function.  In the
> lTLS_CheckPeer case, the value is never returned to the caller.

This issue was already addressed and the fix will be available with next update. Just tested with latest build and the option is set successfully.

Note You need to log in before you can comment on or make changes to this bug.