我们已经build立了一个工作的SSSD + Samba + Krb5捆绑包,用于授权Linux机器上的域用户。 授权可以正常工作,但getent group EXAMPLE不会返回组中的完整用户列表。 id命令显示用户所属的特定组 id mshepelev命令示例( pam_nas_admins组存在): ~$ id mshepelev uid=1019815042(mshepelev) gid=1019817477(linuxadm) группы=128(vboxusers),132(libvirtd), 1019817706(exchange_terminal),1019800512(domain admins),1019800513(domain users),1019817356(it dept base),1019817232(printer_it), 1019817477(linuxadm),1019801141(buh),1019817834(pam_nas_admins)…. getent group pam_nas_admins sample(这里没有mshepelev): ~$ getent group pam_nas_admins pam_nas_admins:*:1019817834:nhramchihin,apyataev, vshuykov,isaidashev,admin,nrosnovskiy,itugunov, malfereva,mdimitraki,izinoviev,gkulakov,mcherenkov,kfomchenko,mkotov,aromanovskiy 更新 同样的情况出现在另一台PC上,反之亦然,用户isaidashev。 Id命令返回一个完整列表和getent组 pam_nas_admins返回每个人,但用户本身(输出有mshepelev用户,但没有isaidashev用户) 这里是configuration文件: /etc/krb5.conf cat /etc/krb5.conf [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] default_realm […]
当通过lightdmlogin到系统(在IPA域中)时,Kerberos凭证自动创build。 注销后,它们不会被销毁。 重现步骤: 以用户身份通过GUIlogin系统。 登出。 以root身份login, su – 用户 klist显示用户的凭据,您可以以该用户的身份login域中的其他计算机 对于解决方法,我使用这个: echo "trap 'kdestroy; exit 0' 0" > /etc/profile.d/kdestroy.sh
我们已经开始了一个新的项目,其中部分涉及将Linux系统与我们现有的AD基础设施集成。 我大部分时间都是在configurationSSSD的时候把它做了,但是其中有一部分是逃避我的,我希望这里有些人可以帮忙。 我试图根据AD用户组分配用户主目录(也可能是其他一些设置)。 具体来说,我想大多数用户有一个正常的主目录(/ home / username); 然而,一个特定的团队需要有一个共同的(共享的)家庭目录,当他们login(通过他们的个人资料)而不是把他们放到一个壳上时,他们将启动一个应用程序。 设置主目录的命令对我来说不是问题; 但是如何让SSSD使用一个特定AD组的设置子集呢? 好吧,现在我从2015年看到这个post( 在SSSD中为每个组设置SSH目录用户的shell ),build议使用sss_override工具,这不应该是一个问题,但现在有一种方法可以做到这一点sssd.conf文件,而不是一个单独的工具? 谢谢, 贾森 编辑:我看了另一篇文章,并通过sss_override手册页。 它不会做我想做的事情。 您可以覆盖个人级别的主目录,但不能组级别。 回到绘图板…
我正在使用configuration了SSH密钥的FreeIPA服务器添加到用户。 我试图让服务器使用来自IPA服务器的ssh密钥进行身份validation,所以我不必pipe理许多authorized_keys文件。 我可以确认这些密钥是sss_ssh_authorizedkeys <user>使用sss_ssh_authorizedkeys <user>添加和检索的,在查询时会为每个用户返回相应的密钥。 但是,当sshd运行该命令时, sss_ssh_authorizedkeys失败,错误代码为13。 我的testing系统是我的CentOS IPA服务器。 我将下面的代码片段添加到了我的sshd_config来启用这个configuration: AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys AuthorizedKeysCommandUser nobody 我也尝试了AuthorizedKeysCommandUser作为根,以确保它不是一个权限问题。 我GOOGLE了我的错误,从IRC归档返回一个单一的结果,最终的结果(从我能告诉)是解决scheme通过电子邮件发送给提问者。 我认为这可能是SELinux的一个问题(在Web服务器场景中困扰着我),但是search“ ssh ”,“ sshd ”或“ authorizedkeys ”并没有产生任何我看不到的东西。 我在阅读身份validation日志方面也不是很擅长,所以我不排除把SELinux作为罪魁祸首。 以下是IPA框中由sshd -ddd生成的日志片段: Connection from 10.77.1.198 port 56579 on 10.77.1.20 port 22 debug1: Client protocol version 2.0; client software version OpenSSH_7.5 debug1: match: OpenSSH_7.5 pat OpenSSH* compat 0x04000000 debug1: Enabling compatibility mode […]
在使用SSHlogin到我的服务器时,任何域用户都会挂起,直到他们按Ctrl + C ,然后将其放到Bash。 从阅读关于这个主题的各种答案,我被认为是由于.profile和.bashrc之间的无限循环。 但是,我已经运行这两个文件之间的diff域用户和本地用户,并没有区别。 我也看了一下,我不能发现任何明显的循环点,所以我会感谢一些帮助解决这个问题。 .bashrc是删除注释的默认值: case $- in *i*) ;; *) return;; esac HISTCONTROL=ignoreboth shopt -s histappend HISTSIZE=1000 HISTFILESIZE=2000 shopt -s checkwinsize [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi case "$TERM" in xterm-color|*-256color) color_prompt=yes;; esac if [ […]
我设法设置LDAP身份validation。 但我没有设法login时自动挂载主目录。 auto.master和auto.home存储在ldap中。 这是我的sssd.conf: [sssd] config_file_version = 2 services = nss, sudo, pam, autofs domains = default [nss] filter_users = root,ldap,named,avahi,haldaemon,dbus,radiusd,news,nscd [pam] reconnection_retries = 3 offline_credentials_expiration = 2 offline_failed_login_attempts = 3 offline_failed_login_delay = 5 [domain/default] ldap_tls_reqcert = never auth_provider = ldap ldap_search_base = dc=domain,dc=net ldap_group_member = uniquemember id_provider = ldap ldap_id_use_start_tls = True chpass_provider = […]
在以下情况下,如何正确debuggingshelllogin? 身份validation通过sssdconfiguration和krb5身份validation服务器进行处理。 在Ubuntu 16.04 LTS上使用相同的.conf文件login。 一旦有人在17.04使用它,使用除root之外的所有内容login将导致重启getty shell – / var / log / syslog states [email protected]: Service has no hold-off time, sheduling restert. Stopped Getty on tty2. Started Getty on tty2. 并在auth.log中注意到以下内容: pam_sss(login:account): Access denied for user <user>: 4 (System error) System error 执行login <user>结果 root@pctest# login <user> password: System error root@pctest# 使用sssctl config-check结果在16.04 LTS的工作configuration中没有错误。 […]
完成winbind连接,但没有sssd,我今天被要求使用adcli和sssdjoin到一个Windows AD服务的EL7框。 该软件,更新最小el7安装adcli,sssd和一些krb5的东西补充说: adcli-0.8.1-3.el7.x86_64 authconfig-6.2.8-30.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64 krb5-workstation-1.15.1-8.el7.x86_64 oddjob-0.31.5-4.el7.x86_64 oddjob-mkhomedir-0.31.5-4.el7.x86_64 python-sssdconfig-1.15.2-50.el7_4.2.noarch samba-client-libs-4.6.2-10.el7_4.x86_64 samba-common-4.6.2-10.el7_4.noarch samba-common-libs-4.6.2-10.el7_4.x86_64 samba-common-tools-4.6.2-10.el7_4.x86_64 samba-libs-4.6.2-10.el7_4.x86_64 sssd-1.15.2-50.el7_4.2.x86_64 sssd-ad-1.15.2-50.el7_4.2.x86_64 sssd-client-1.15.2-50.el7_4.2.x86_64 sssd-common-1.15.2-50.el7_4.2.x86_64 sssd-common-pac-1.15.2-50.el7_4.2.x86_64 sssd-dbus-1.15.2-50.el7_4.2.x86_64 sssd-ipa-1.15.2-50.el7_4.2.x86_64 sssd-krb5-1.15.2-50.el7_4.2.x86_64 sssd-krb5-common-1.15.2-50.el7_4.2.x86_64 sssd-ldap-1.15.2-50.el7_4.2.x86_64 sssd-proxy-1.15.2-50.el7_4.2.x86_64 sssd-tools-1.15.2-50.el7_4.2.x86_64 sssd.conf,以防万一: [sssd] config_file_version = 2 services = nss, pam, ssh, sudo domains = test.domain.com [nss] filter_users = root,named,avahi,haldaemon,dbus,radiusd,news,nscd,centos,ubuntu [pam] [ssh] [sudo] [domain/test.domain.com] enumerate = true id_provider = ad […]
我的组织正在尝试将我们的RHEL / CentOS 7服务器join到我们的Microsoft AD域中。 域控制器由2个Windows 2008R2服务器和1个Windows 2016服务器组成。 在Linux方面,我使用realmjoin到我已经成功做到的领域: # realm list mydomain.net type: kerberos realm-name: MYDOMAIN.NET domain-name: mydomain.net configured: kerberos-member server-software: active-directory client-software: sssd required-package: oddjob required-package: oddjob-mkhomedir required-package: sssd required-package: adcli required-package: samba-common-tools login-formats: %[email protected] login-policy: allow-realm-logins 我想只允许某个组的成员访问SSH: # realm permit -g [email protected] 那是我遇到问题的时候 当在两个用户(userA和userB)上testing时,userA被允许进入,但是userB被拒绝。 /var/log/sssd/sssd_mydomain.net.log文件显示userB没有补充组: (Tue Sep 19 20:53:37 2017) [sssd[be[mydomain.net]]] [simple_access_check_send] […]
我用CentOS把我的Centos Boxjoin了一个Windows Active Directory域 realm join –user=DomUser dom2.local 没有任何问题。 该域与Dom1具有单向的信任关系。 我们的Windows用户可以: 用Dom1 /用户login到Dom1 /主机 用Dom1 /用户login到Dom2 /主机 用Dom2 /用户login到Dom2 /主机 在我们的Linux Box(Dom2)中,只有Dom2 /用户可以login。我在网上发现了一些证据,sssd可以configuration两个域名,所以我在sssd config中添加了一个Block: # cat /etc/sssd/sssd.conf [sssd] domains = dom1.local, dom2.local config_file_version = 2 services = nss, pam [domain/dom1.local] ad_domain = dom1.local krb5_realm = DOM1.LOCAL realmd_tags = manages-system joined-with-samba cache_credentials = True id_provider = […]