我有一个庞大的用户基础(>> 1000)应该能够共同使用一些共享服务。 用户群正在缓慢但不断变化。 ESP。 我们对特权分离(所有用户都是平等的)并不感兴趣,所以从特权angular度他们可以共享一个帐户。 但是,出于安全原因,我们不能使用共享凭据。 幸运的是,所有用户都有自己的用户名/密码可通过LDAP。 所以我们已经实现了一个login服务器(Debian上的ssh),通过PAM和OpenLDAP进行身份validation。 现在LDAP服务器不提供很多信息,只有用户名和身份validation的能力。 特别是,它缺less一个objectClass: posixAccount和伴随的属性 uidNumber gidNumber loginShell homeDirectory 我对LDAP服务器的访问非常有限(尤其是我不能要求添加这些或任何其他属性),基本上它只允许我对用户进行身份validation。 现在好消息是,如果所有用户对这些属性具有相同的值,我并不在乎。 所以我最终实现了一个使用translucent叠加的代理ldap服务器来添加缺less的属性。 覆盖数据通过脚本生成,该脚本从上游LDAP数据创build剥离的LDIF文件,然后用于填充半透明数据库。 这工作正常,但我不喜欢它的可维护性POV:因为用户基础正在改变,我需要定期更新数据库手动(它几乎没有变化 – 每隔几个月 – 所以它没有太多的工作,但它也很容易忘记)。 因为覆盖数据是如此微不足道(它是所有对象的相同属性/值),我认为必须有更好的方法。 理想情况下,我想有一个覆盖,将这些属性添加到所有对象(匹配给定的searchterm)。 使事情变得复杂一点,我们还通过另一个提供posixAccount -data的LDAP服务器validation另一个用户基础; 这个群体的用户当然不应该受到其他群体所需要的叠加魔法的影响; 我认为这排除了在PAM方面所做的任何魔法。
我希望能够执行一个自定义脚本时,帕姆做身份validation,但我得到一个错误,我似乎无法通过: Feb 20 17:39:47 DC03R07DS25-08 sockd[2874]: pam_exec(sockd:auth): send password to child Feb 20 17:39:47 DC03R07DS25-08 sockd[2893]: pam_exec(sockd:auth): Calling /tmp/test.sh … Feb 20 17:39:47 DC03R07DS25-08 sockd[2874]: pam_exec(sockd:auth): waitpid returns with -1: No child processes 这是一个非常基本的脚本,只是打印出一个0来允许转换。 #!/bin/bash # read the users password from stdin (pam_exec.so gives the provided password # if invoked with expose_authtok) read password echo […]
我正在创build一个testing系统,该系统需要能够简单地作为非激活端口上的sftp服务器。 testing系统以普通用户身份运行。 所以我想运行sshd与sftp子系统configuration为使用端口和我给它的主机密钥。 但是,我不想使用系统的身份validation凭证,但我自己的。 那么如何告诉sshd使用系统密码以外的东西? 或者有更好的解决scheme,让我实现我的目标?
我如何允许所有用户以root身份运行mount ? 我知道有很多解决scheme推荐以下编辑,但它不适合我。 我编辑了/etc/sudoers来包含: ALL ALL=NOPASSWD: /bin/mount ALL ALL=NOPASSWD: /sbin/mount.cifs 如果我尝试使用mount -t cifs (…)作为非root用户挂载一个驱动器,我得到“只有root才能做到这一点”。 如果我用sudo加上这个前缀,它就可以毫无问题地挂载。 问题是我需要这个命令来运行在一个pamlogin脚本,我不认为使用sudo将工作。 我究竟做错了什么? 提前致谢。
我们正在运行SunLDAP(Sun / Oracle目录服务器11),并希望我们的Linux / Unix计算机对LDAP进行身份validation,并使用LDAP来存储SUDO策略。 需要什么架构扩展?
我想为LDAP用户创build用户目录(389-ds)如果他们不存在,所以我使用pam_mkhomedir。 如何在不同的挂载点上创build这些目录,比如说/ nfs / home。 我知道这有一个前面的问题,但我不明白他/她的解决scheme。 任何帮助表示赞赏。 我是新来的行政
我configuration了ssh来使用位于~/.ssh密钥文件来login。 现在我想在使用密码时安装双因素身份validation,但在使用密钥文件时不需要。 我已经看到如何在这里安装双因素身份validation: DigitalOcean:如何使用双因素身份validation保护SSH 。 但它适用于login密码和密码login,我只想用它来login密码。 我想要: 公钥 – >确定进入服务器 要么 密码 – >一次性密码 – >确定进入服务器 也许有可能用sshd_config的AuthenticationMethods做些事情? 我发现这个: OpenSSH使用(公钥或密码)+谷歌authenticator
好的,所以我使用Windows Server 2012作为域控制器。 我通过samba连接了两个Centos7客户端到域。 身份validation通过SSH按预期工作; 然而,当试图sudo,帕姆仍然要求密码。 一旦你提供适当的密码,一切工作正常,但我正在寻找一种方法,将避免前面提到的密码请求。 我一直在玩PAM,但没有太多的运气。 /etc/pam.d/sudo: #%PAM-1.0 #auth include system-auth auth required pam_sss.so account include system-auth password include system-auth session optional pam_keyinit.so revoke session required pam_limits.so 将/etc/pam.d/system-auth: #%PAM-1.0 # This file is auto-generated. # User changes will be destroyed the next time authconfig is run. auth required pam_env.so auth [default=1 success=ok] pam_localuser.so […]
我首先想说“谢谢你!” 对于通过阅读本网站上的文章所获得的所有支持,这是Web开发人员戴上系统pipe理员帽子的主要好处… 目前,我们正在努力使我们的Web服务器PCI兼容,并且已经通过CVE-2015-8325与TrustWave进行了反复 。 我们使用一个后端的OpenSSH版本。 CentOS release 6.8 (Final) 3.2.69-82.art.x86_64 openssh-5.3p1-118.1.el6_8.x86_64 他们要求的最后一件事情是:“我们需要确认在这个系统上的pam_env模块中user_readenv是closures的。” 我正在寻找一种方法来确认这个从shell,但我罢工 – 在网上search看起来像设置是默认禁用,但我无法find一种方法来确认它。 如果我运行: sshd -T 从shell中,其输出包含以下两行: usepam no uselogin no 我试图确定这是否是唯一的技术,我可以用来让他们所要求的,或者是否有一个configuration文件的地方明确指出“user_readenv = 0”或类似的东西。 感谢您的时间,如果您需要更多信息,请告诉我们。 ===更新=== 我向TrustWave提供了上述信息,并且已经批准了这个争议。 我仍然有兴趣,如果有另一种方式来确认user_readenvclosurespam_env模块 – 但如果没有出现 – 我只是将上述标记为答案 – 谢谢。
我需要在EC2上设置一个支持密码和证书login的FTP服务器和SFTP服务器。 我刚刚使用了股票RHEL和Amazon AMI,我也无法login。 $ sudo yum install vsftpd $ sudo adduser someuser $ sudo passwd someuser #edit /etc/ssh/sshd_config PasswordAuthentication yes #Comment out this line on /etc/pam.d/vsftpd for good measure, read about it elsewhere #auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed $ sudo systemctl start vsftpd 我的vsftpd conf如下 #edit /etc/vsftpd/vsftpd.conf to disable anon login anonymous_enable=NO local_enable=YES […]