<div dir="ltr"><div class="gmail_default" style><font face="courier new, monospace">​Thank you for the reply Sumit - I will look into updating the version of sssd. If that doesn't work, I will also try adding the ​'sourceHostCategory' attribute to rules. Though, I would imagine I would have to do this for *all* rules if I want them to work as intended. I'll report back my findings tomorrow.</font></div><div class="gmail_default" style><font face="courier new, monospace"><br></font></div><div class="gmail_default" style><font face="courier new, monospace">Thanks,</font></div><div class="gmail_default" style><font face="courier new, monospace">-Andrew</font></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 16, 2015 at 12:40 AM, Sumit Bose <span dir="ltr"><<a href="mailto:sbose@redhat.com" target="_blank">sbose@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Sat, Feb 14, 2015 at 12:52:10PM -0800, Andrew Egelhofer wrote:<br>
> Hi FreeIPA Users-<br>
><br>
> I've deployed a FreeIPA instance in my Lab, and enrolled a single host, and<br>
> a single user ('testuser'). The only HBAC rule I currently have is the<br>
> stock allow_all. Yet, when I attempt to log into the host via ssh, it<br>
> closes the connection.<br>
><br>
> $ ssh testuser@<host><br>
> Warning: Permanently added '<host>,<host-ip>' (RSA) to the list of known<br>
> hosts.<br>
> testuser@<host>'s password:<br>
> Connection closed by <host-ip><br>
><br>
> The host I'm attempting to login to can correctly look up the user using<br>
> getent:<br>
><br>
> # getent passwd testuser<br>
> testuser:*:168400003:168400003:Test User:/home/testuser:/bin/bash<br>
><br>
> Scanning /var/log/secure, I see these entries:<br>
><br>
> Feb 14 12:01:50 <host> sshd[6528]: pam_unix(sshd:auth): authentication<br>
> failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=172.30.3.58<br>
>  user=testuser<br>
> Feb 14 12:01:51 <host> sshd[6528]: pam_sss(sshd:auth): authentication<br>
> success; logname= uid=0 euid=0 tty=ssh ruser=<br>
> rhost=172.30.3.58 user=testuser<br>
> Feb 14 12:01:51 <host> sshd[6528]: pam_sss(sshd:account): Access denied for<br>
> user testuser: 6 (Permission denied)<br>
><br>
> That tells me (From reading online) the user / password was correctly<br>
> authenticated, but failed authorization due to HBAC rules. I've tested the<br>
> rule using the 'hbactest' utility and it passes<br>
><br>
> [root@<Master> ~]# ipa hbactest --user=testuser --host=<host> --service=sshd<br>
> --------------------<br>
> Access granted: True<br>
> --------------------<br>
>   Matched rules: allow_all<br>
><br>
> I'm at a loss here, because If I comment out the line:<br>
><br>
> account     [default=bad success=ok user_unknown=ignore] pam_sss.so<br>
><br>
> in /etc/pam.d/system-auth, the user is able to login.<br>
><br>
> So what am I missing here? Is there a way I can debug HBAC rules? I've<br>
> already set debug_level = 10 in /etc/sssd/sssd.conf, and I see its able to<br>
> access the HBAC 'allow_all' rule in the log /var/log/sssd/sssd_<domain>.<dc><br>
> .log:<br>
><br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [sdap_get_generic_done] (7): Total count [0]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] [hbac_attrs_to_rule]<br>
> (7): Processing rule [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_user_attrs_to_rule] (7): Processing users for rule [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] [hbac_get_category]<br>
> (5): Category is set to 'all'.<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_service_attrs_to_rule] (7): Processing PAM services for rule<br>
> [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] [hbac_get_category]<br>
> (5): Category is set to 'all'.<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_thost_attrs_to_rule] (7): Processing target hosts for rule [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] [hbac_get_category]<br>
> (5): Category is set to 'all'.<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_shost_attrs_to_rule] (7): Processing source hosts for rule [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_host_attrs_to_rule] (4): No host specified, rule will never apply.<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (7): [12] groups for [admin]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (7): Added group [admins] for user [admin]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=replication<br>
> administrators,cn=privileges,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=add<br>
> replication agreements,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=modify<br>
> replication agreements,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=remove<br>
> replication agreements,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=host<br>
> enrollment,cn=privileges,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=manage host<br>
> keytab,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=enroll a<br>
> host,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=add<br>
> krbprincipalname to a host,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=unlock user<br>
> accounts,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (8): Skipping non-group memberOf [cn=manage<br>
> service keytab,cn=permissions,cn=pbac,dc=<domain>,dc=<dc>]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [hbac_eval_user_element] (7): Added group [trust admins] for user [admin]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]]<br>
> [ipa_hbac_evaluate_rules] (3): Access denied by HBAC rules<br>
><br>
> IPA server:<br>
> # rpm -q ipa-server sssd<br>
> ipa-server-3.0.0-42.el6.centos.x86_64<br>
> sssd-1.11.6-30.el6_6.3.x86_64<br>
> # cat /etc/redhat-release<br>
> CentOS release 6.5 (Final)<br>
><br>
> Client:<br>
> # cat /etc/redhat-release<br>
> CentOS release 5.8 (Final)<br>
> # rpm -q sssd<br>
> sssd-1.5.1-49.el5_8.1<br>
<br>
</div></div>This version is quite old and I guess<br>
<span class=""><br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] > [hbac_shost_attrs_to_rule] (7): Processing source hosts for rule [allow_all]<br>
> (Fri Feb 13 21:38:15 2015) [sssd[be[<domain>.<dc>]]] > [hbac_host_attrs_to_rule] (4): No host specified, rule will never apply.<br>
<br>
</span>is causing the issue. At that time it was possible to specific source<br>
hosts in HBAC rules. But since there is no reliable way to determine<br>
the source host (we have to rely on the data libpam is able to give us).<br>
we removed this in later versions. If you started with an old IPA server<br>
the related attributes are kept during updates, but newer versions like<br>
ipa v3 do not set them anymore.<br>
<br>
First I would recommend to update SSSD. If there is really no wy to<br>
update SSSD adding an attribute 'sourceHostCategory: all' to the LDAP<br>
object of the allow_all rule might help.<br>
<br>
HTH<br>
<br>
bye,<br>
Sumit<br>
<div class="HOEnZb"><div class="h5">><br>
> Any help is appreciated.<br>
><br>
> Thanks,<br>
> -Andrew<br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">> --<br>
> Manage your subscription for the Freeipa-users mailing list:<br>
> <a href="https://www.redhat.com/mailman/listinfo/freeipa-users" target="_blank">https://www.redhat.com/mailman/listinfo/freeipa-users</a><br>
> Go To <a href="http://freeipa.org" target="_blank">http://freeipa.org</a> for more info on the project<br>
<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div style="color:rgb(136,136,136);font-family:Calibri,sans-serif;font-size:14px"><div>Andrew "Ego" Egelhofer<br></div></div><div style="color:rgb(136,136,136);font-family:Calibri,sans-serif;font-size:14px">Infrastructure Systems Engineer | Rubicon Project</div><div style="color:rgb(136,136,136);font-family:Calibri,sans-serif;font-size:14px"><a href="mailto:aegelhofer@rubiconproject.com" style="color:rgb(17,85,204)" target="_blank">aegelhofer@rubiconproject.com</a> | <a value="+18313317915" style="color:rgb(17,85,204)">831-331-7915</a></div></div></div>
</div>