为什么 ipa-client-install 下载 CA 证书时会失败

为什么 ipa-client-install 下载 CA 证书时会失败

我想设置集中式用户管理。首先授予对 Linux 服务器的访问权限,然后还授予通过 LDAP 对其他服务的访问权限。由于我是新手,我在 Google 上做了一些研究,我认为 FreeIPA 可以满足我们的要求。

我安装了 CentOS 8 服务器并安装了 FreeIPA 服务器。这非常简单,我可以登录 Web 界面。我不使用 FreeIPA DNS,因为我们有一个单独的 DNS 服务器。对于我的测试设置,我根本不使用 DNS 服务器,只是将客户端记录添加到 FreeIPA 服务器主机文件,并将服务器记录添加到 FreeIPA 客户端主机文件。我能够通过其 FQDN 和主机名从客户端 ping 服务器,反之亦然。

我的客户端是 Ubuntu 服务器 20.04 客户端,我安装了 freeipa-client 并尝试使用命令对其进行配置ipa-client-install --mkhomedir --no-ntp。我按照向导进行操作:

  1. IPA 服务器域 = internal.domain.com
  2. IPS 服务器名称 = ipasrv-hostname
  3. 继续使用固定 DNS 值 = 是
  4. 使用这些值配置客户端=是
  5. 有权注册计算机的用户 = admin
  6. 密码[电子邮件保护]= 当然是密码
  7. 您是否要从以下位置下载 CA 证书http://axx-fipa-srv01/ipa/config/ca.crt?<= 我被困在这里了!

当我选择“是”时,我收到:

Downloading the CA certificate via HTTP, this is INSECURE
Successfully retrieved CA cert
Joining realm failed: libcurl failed to execute the HTTP POST transaction, explaining:  error setting certificate verify locations:
  CAfile: /etc/ipa/ca.crt
  CApath: /etc/ssl/certs

Installation failed. Rolling back changes.

当我选择否时,配置直接失败:

Cannot obtain CA certificate
HTTP certificate download declined by user
Installation failed. Rolling back changes.
Disabling client Kerberos and LDAP configurations
nscd daemon is not installed, skip configuration
nslcd daemon is not installed, skip configuration
Client uninstall complete.

当然,我检查了日志并在谷歌上搜索了错误,但还无法解决这个问题。

我做错了什么?

另外,我有点担心通过 (http) url 接收 CA.crt 不安全的警告。我理解原因,但我该如何解决这个问题?在客户端上手动“安装”证书?我从哪里获取它们?我需要将它们放在哪里?


更新

@Gerald Schneider的评论让我认为这确实是一个权限问题。据我了解libcurl failed to execute the HTTP POST transaction, explaining: error setting certificate verify locations,这意味着它试图在 FreeIPA 服务器上“设置”某些内容,但服务器/应用程序无法写入/etc/ipa/etc/ssl/cert文件夹。我可以测试一下吗?

答案1

检查 DNS。当我遇到同样的错误时发现了这一点。我处于一个无法控制 DNS 的卫星位置。我最终将 ipa 服务器主机名(“hostname -f”)放入客户端的 hosts 文件中,然后它就起作用了。

答案2

对某些问题说“不”(按回车键)并忽略警告对我来说很有效。

WARNING: conflicting time&date synchronization service 'ntp' will be disabled in favor of chronyd                                                     
                                                                                                                                                      
DNS discovery failed to determine your DNS domain                                                                                                     
Provide the domain name of your IPA server (ex: example.com): yipee.yo                                                                                 
Provide your IPA server name (ex: ipa.example.com): forecast.yipee.yo                                                                                   
The failure to use DNS to find your IPA server indicates that your resolv.conf file is not properly configured.                                       
Autodiscovery of servers for failover cannot work with this configuration.                                                                            
If you proceed with the installation, services will be configured to always access the discovered server for all operations and will not fail over to 
other servers in case of failure.                                                                                                                     
Proceed with fixed values and no DNS discovery? [no]: yes
Do you want to configure chrony with NTP server or pool address? [no]: 

名称解析在此虚拟机上始终运行良好。不确定 ipa-client-install 脚本为何在 DNS 上失效。客户端是 Ubuntu 22 LTS。

相关内容