标签: authentication

Linux 客户端 Active Directory 身份验证在故障转移时停止工作

我在 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)

linux kerberos authentication domain-controller srv-record

6
推荐指数
1
解决办法
3440
查看次数

使用 LDAP 进行身份验证的 Samba 独立服务器:SID 不匹配

我现在正在尝试让我的新 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 …

linux ldap authentication samba

6
推荐指数
1
解决办法
9426
查看次数

Cisco Dot1x 端口身份验证 - 根据用户在计算机上登录的域选择 VLAN?

目前我公司已被另一家公司收购。因此,另外两家公司的用户将迁移到我们的办公室。

如果我们可以根据用户尝试使用 dot1x 登录的域为用户选择 vlan,那将非常方便。

EG VLAN

  • 100 公司A
  • 200 B公司
  • 300公司C

有人将笔记本电脑放在桌子上,插入网络端口并按 CTRL-ALT-DEL,选择域名 CompanyB 并登录。

我想要的结果是 dot1x 能够确定这是来自 CompanyB 的用户并设置网络端口以动态反映 vlan 200。

可能的?

cisco switch authentication 802.1

6
推荐指数
1
解决办法
357
查看次数

备份和恢复 freeipa 基础设施

我发现有关 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 …

backup authentication restore freeipa

6
推荐指数
1
解决办法
4512
查看次数

Mongo 分片 - 配置服务器和 Mongo 身份验证

我需要以很快就会分片的数据库,并且对我最好的做法是什么在启用身份验证不清mongosconfig服务器。

我想用密码保护一切。

  1. 每个配置服务器都应该auth启用吗?
  2. 如果是这样,那么每个用户都设置相同的用户?仅用于管理数据库?或者是否需要为配置数据库创建一个?
  3. 我猜你不需要在 mongos 上创建任何用户,因为它应该从配置和分片本身继承,这是正确的吗?
  4. 添加新分片时,是否需要为新分片上的每个分片数据库设置相同的用户?

谢谢!

security authentication sharding mongodb

6
推荐指数
1
解决办法
4107
查看次数

sshd 日志尝试在没有私钥的情况下登录

在运行 Debian 7 的 VPS 上,我在默认端口 22 上启用了 ssh,仅启用了私钥身份验证,所有其他端口都使用 iptables 进行过滤。我经常在我的 /var/log/auth.log 中使用虚假用户名(例如“plesk”或“r00t”)收到来自中国的登录尝试

唯一的问题是对于不提供私钥并尝试使用有效用户名登录的身份验证尝试,日志中出现的唯一一行读取

sshd[4364]:连接被 123.45.67.89 [preauth] 关闭

当 sshd 日志级别设置为 VERBOSE 时,会打印额外的一行,说明用户已连接以及他们连接的端口。

有没有办法让 sshd 记录由于用户缺少私钥而断开连接?

security ssh logging authentication

6
推荐指数
1
解决办法
873
查看次数

使用公钥的 OpenSSH 和 PAM 身份验证

我正在寻找一种使用存储在数据库(MongoDB)中的公钥来验证用户身份的方法。类似的问题通常会导致建议安装 OpenSSH 的补丁版本 ( https://github.com/wuputahllc/openssh-for-git ),该版本针对数据库进行身份验证(GitHub 正在使用 OpenSSH 的补丁版本)。

我看到有一个 PAM 模块可以通过 MySQL 进行身份验证,但它假定用户名/密码身份验证。我想知道是否可以使用某种 PAM 模块对服务器使用公钥进行身份验证。

编辑:我需要一个 git 服务器,所有用户都将通过“git”用户名进行连接。每个用户不会有特定的用户名。

ssh database authentication pam public-key

6
推荐指数
2
解决办法
1万
查看次数

如何启动具有身份验证支持的 Mongo 守护进程

我想使用 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 startauth = true在的conf文件。我可能在初始安装/配置期间破坏了某些东西。

daemon authentication mongodb

6
推荐指数
1
解决办法
2万
查看次数

CentOS 需要输入两次密码才能进行 sudo 登录

在每次登录或 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)

login password ldap centos authentication

6
推荐指数
1
解决办法
2111
查看次数

根据客户端证书设置标头

我有 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)

有什么好方法可以避免用户基本上需要进行两次身份验证?

authentication reverse-proxy apache-2.2

6
推荐指数
1
解决办法
1164
查看次数