我在 Linux 客户端尝试通过定位 DNS 名称 ( corp.example.com)进行 AD 身份验证时遇到问题。我有 2 个域控制器服务器DC1(10.0.0.3/24),DC2(10.1.0.3/24) corp.example.com 的两个域控制器。在开始之前,每个 Linux 客户端都明确定义了 2 个 AD 服务器 IP 地址中的 1 个。我完成并用域名 (corp.example.com) 替换了 IP 地址,如下所示的配置。对其进行了测试,效果很好。但是,通过关闭 Dome Controller 服务器之一来测试故障转移会使某些 Linux 客户端无法进行身份验证并超时。使用全局/通用 DNS 轮循机制查看DC/DNS 故障转移对于我最初的帖子,当我认为这是网络问题时。 在 Linux 客户端上:
/etc/openldap/ldap.conf
uri ldap://DC1 ldap://DC2
base dc=corp,dc=example,dc=com
Run Code Online (Sandbox Code Playgroud)
/etc/krb5.conf
[libdefaults]
default_realm = corp.example.com
clockskew = 300
dns_lookup_kdc
# default_realm = EXAMPLE.COM
[realms]
corp.example.com= {
kdc = corp.example.com
default_domain = corp.example.com
kpasswd_server = corp.example.com …Run Code Online (Sandbox Code Playgroud) 我现在正在尝试让我的新 samba 服务器运行几天,但我开始失去理智,因为没有弄清楚我做错了什么。这是我的设置:
OpenLDAP 2.4.21 服务器,具有约 15 个组和 >100 个用户,所有用户都具有存储在 LDAP 中的 unix 和 samba 密码,以及分配和存储在 LDAP 中的用户 SID 和主组 SID,源自 LDAP 的 SID服务器。
现在我想使用几个samba服务器来使用LDAP服务器对用户进行身份验证。samba 服务器是使用 ldap 服务器配置 NSS/PAM 的 linux。getent passwd/group 返回所有用户,ssh 到 samba 机器适用于所有用户。现在这里是 smb.conf:
[global]
workgroup = XXXXX
security = user
passdb backend = ldapsam:ldap://myldapserver
ldap suffix = dc=mydomain,dc=com
ldap admin dn = cn=replicator,dc=mydomain,dc=com
ldap user suffix = ou=users
ldap group suffix = ou=groups
ldap machine suffix = ou=computers
ldap ssl = start tls
Run Code Online (Sandbox Code Playgroud)
LDAP连接的作品,如pdbedit -L …
目前我公司已被另一家公司收购。因此,另外两家公司的用户将迁移到我们的办公室。
如果我们可以根据用户尝试使用 dot1x 登录的域为用户选择 vlan,那将非常方便。
EG VLAN
有人将笔记本电脑放在桌子上,插入网络端口并按 CTRL-ALT-DEL,选择域名 CompanyB 并登录。
我想要的结果是 dot1x 能够确定这是来自 CompanyB 的用户并设置网络端口以动态反映 vlan 200。
可能的?
我发现有关 ipa 服务器备份和恢复的文档可悲地缺乏,而且非常重要,这并不是我很高兴在黑暗中拍摄的东西 - 有没有更了解此事的好心人请尝试提供一个白痴备份和恢复 IPA 服务器的证明指南 ? 特别是主服务器(证书签名服务器)。
...我们希望在两台服务器设置(1 个主服务器,1 个副本)中推出 ipa。我正在使用 dns srv 记录来处理故障转移,因此丢失副本并不是什么大问题,因为我可以制作一个新副本并强制重新同步发生 - 它正在丢失困扰我的主人。
我真正在努力寻找备份和恢复主服务器的分步过程。我知道整个 VM 快照是进行 IPA 服务器备份的推荐方式,但目前这不是我们的选择。
我也知道 freeipa 3.2.0 包含某种内置的备份命令,但这不在 centos 的 ipa 版本中,我不希望它会在一段时间内出现。
我一直在尝试许多不同的方法,但似乎没有一种方法可以完全恢复,除此之外,我尝试过;
类似于 db2ldif.pl -D "cn=directory manager" -w - -n userroot -a /root/userroot.ldif 的命令
此处的脚本生成三个 ldif 文件——一个用于域 ({domain}-userroot),两个用于 ipa 服务器(ipa-ipaca 和 ipa-userroot):
我尝试过的大多数恢复都类似于以下形式:ldif2db.pl -D "cn=directory manager" -w - -n userroot -i userroot.ldif
这似乎可以工作并且没有报告错误,但是完全使机器上的 ipa 安装失败,我无法再使用备份服务器上的管理员密码登录,或者在尝试 ldif2db 命令之前我在安装时设置的密码(我正在安装 ipa-server 并运行 ipa-server-install,然后尝试恢复)。
我并不太担心丢失 CA、不得不重新加入域、丢失复制等(尽管如果可以避免这种情况会很棒)但是在主服务器掉线的情况下,我真的很想避免必须重新输入所有用户/组信息。
我想在丢失主服务器的情况下,我可以提升另一个服务器并在另一个方向复制,但我也没有尝试过。有没有人这样做过?
tl;dr:有人可以提供一个白痴指南,以足够清晰的方式备份和恢复IPA …
我需要以很快就会分片的数据库,并且对我最好的做法是什么在启用身份验证不清mongos和config服务器。
我想用密码保护一切。
auth启用吗?谢谢!
在运行 Debian 7 的 VPS 上,我在默认端口 22 上启用了 ssh,仅启用了私钥身份验证,所有其他端口都使用 iptables 进行过滤。我经常在我的 /var/log/auth.log 中使用虚假用户名(例如“plesk”或“r00t”)收到来自中国的登录尝试
唯一的问题是对于不提供私钥并尝试使用有效用户名登录的身份验证尝试,日志中出现的唯一一行读取
sshd[4364]:连接被 123.45.67.89 [preauth] 关闭
当 sshd 日志级别设置为 VERBOSE 时,会打印额外的一行,说明用户已连接以及他们连接的端口。
有没有办法让 sshd 记录由于用户缺少私钥而断开连接?
我正在寻找一种使用存储在数据库(MongoDB)中的公钥来验证用户身份的方法。类似的问题通常会导致建议安装 OpenSSH 的补丁版本 ( https://github.com/wuputahllc/openssh-for-git ),该版本针对数据库进行身份验证(GitHub 正在使用 OpenSSH 的补丁版本)。
我看到有一个 PAM 模块可以通过 MySQL 进行身份验证,但它假定用户名/密码身份验证。我想知道是否可以使用某种 PAM 模块对服务器使用公钥进行身份验证。
编辑:我需要一个 git 服务器,所有用户都将通过“git”用户名进行连接。每个用户不会有特定的用户名。
我想使用 Mongo init 脚本启动具有 auth 支持的 MongoDB 守护进程:
sudo /etc/init.d/mongod start
Run Code Online (Sandbox Code Playgroud)
我还将 db 用户添加到数据库中以进行身份验证。我正在处理两个文件:(/etc/init.d/mongod用于初始化)和/etc/mongod.conf(用于配置)。
#mongod.conf:
dbpath=/var/lib/mongodb
logappend=true
port = 27017
auth = true
Run Code Online (Sandbox Code Playgroud)
非守护进程方法使用以下--auth标志正确启动进程:
mongod --auth
Run Code Online (Sandbox Code Playgroud)
fork 可以工作,但这不使用 init 脚本:
mongod --fork --auth --logpath /var/log/mongod.log
Run Code Online (Sandbox Code Playgroud)
阅读所有文档和相关帖子,似乎没有人有一个可行的解决方案来获得身份验证支持
service mongod start
Run Code Online (Sandbox Code Playgroud)
链接:
更新:我重新安装的Debian /蒙戈,并能使用service mongod start同auth = true在的conf文件。我可能在初始安装/配置期间破坏了某些东西。
在每次登录或 sudo 提示时,服务器总是在第一次提供密码时拒绝密码,但第二次接受密码。我发现这个线程描述了似乎是相同的问题,但是按照那里描述的解决方案的行玩我的 /etc/pam.d/system-auth 文件对我不起作用。例如,将“try_first_pass”的第一个实例更改为“use_first_pass”会导致登录身份验证不断失败,删除“nullok”也是如此。有谁知道需要更改什么才能使系统第一次接受正确的密码?
/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 sufficient pam_fprintd.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth sufficient pam_ldap.so use_first_pass
auth required pam_deny.so
account required pam_unix.so broken_shadow
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3 type=
password …Run Code Online (Sandbox Code Playgroud) 我有 Apache 作为内部服务器的反向代理运行。访问代理的用户需要使用客户端证书。在内部服务器上,有一个 Web 应用程序可以使用 HTTP 标头对用户进行身份验证。我想让代理根据客户端证书提供该标头。
标头值是用户的 id。理想情况下,我会有一个将用户 ID 映射到证书的文本文件。据我所知,我只需要RewriteMap标题。
# Somehow lookup USERID given SSL_CLIENT_S_DN
RequestHeader set X-User-ID %{USERID}
Run Code Online (Sandbox Code Playgroud)
我想避免一大堆SetEnvIf需要重新启动服务器才能更改的s,例如:
SetEnvIf SSL_CLIENT_S_DN [User 1's SSL_CLIENT_S_DN] USERID=12
SetEnvIf SSL_CLIENT_S_DN [User 2's SSL_CLIENT_S_DN] USERID=34
SetEnvIf SSL_CLIENT_S_DN [User 3's SSL_CLIENT_S_DN] USERID=56
...
Run Code Online (Sandbox Code Playgroud)
有什么好方法可以避免用户基本上需要进行两次身份验证?