FreeIPA安装

news2024/9/20 8:15:22

一、环境准备

主机名IP角色
master. bhlu. com192.168.22.10服务端
node1. bhlu. com192.168.22.11客户端
  • 两台服务器关闭防火墙和 selinux
  • 配置好 yum

1.1 配置 chronyd

  • 配置好 chronyd,使用 chronyc source -v 可以验证
# 这里写了一个playbook作为示例了
---
- name: Install and Configure Chrony
  hosts: server
  tasks:
  - name: Install Chrony
    yum:
      name: chrony
      state: present

  - name: Configure Chrony
    lineinfile:
      path: /etc/chrony.conf
      line: "allow 192.168.22.0/24"
      regexp: "^#allow"
      state: present

  - name: Restart Chrony
    service:
      name: chronyd
      state: restarted
      enabled: yes

- name: Add Nodes to Chrony
  hosts: node1
  tasks:
  - name: Install Chrony
    yum:
      name: chrony
      state: present

  - name: Configure Chrony
    lineinfile:
      path: /etc/chrony.conf
      line: "server 192.168.22.10 iburst"
      state: present

  - name: Restart Chrony
    service:
      name: chronyd
      state: restarted
      enabled: yes

二、安装

2.1 Master

1. 配置域名解析

[root@master ~]# hostnamectl set-hostname master.bhlu.com
[root@master ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.22.10 master.bhlu.com master
192.168.22.11 node1.bhlu.com node1

2. 安装 FreeIPA 相关包

[root@master ~]# yum install ipa-server ipa-server-trust-ad ipa-server-dns bind bind-dyndb-ldap samba-winbind-clients cifs-utils -y

3. 配置 freeipa

  • ipa-server-installFreeIPA 服务器安装命令
  • -a:指定管理员密码
  • -p:指定主机密钥,用于只有授权的机器才能连接 FreeIPA 服务器
  • --domain:设置 FreeIPA 的域
  • --realm:设置 Kerberos 领域
  • --mkhomedir:用户首次登录自动创建用户的家目录
  • --setup-dns:安装过程中设置 DNS,配置 FreeIPA 服务器为 DNS 服务器
  • --no-forwarders:禁止 DNS 转发,配合 --setup-dns 使用
  • -U:在安装过程中不要询问确认
# 安装,这个dns看个人需求
[root@master ~]# ipa-server-install -a 12345678 -p 12345678 --domain=bhlu.com --realm=BHLU.COM --mkhomedir --setup-dns --no-forwarders -U
# 出现这个说明成功了
...
Client configuration complete.
The ipa-client-install command was successful
...

# 设置用户登录自动创建home目录
[root@master ~]# authconfig --enablemkhomedir --update

4. 验证是否安装成功

  1. 使用浏览器访问 https://master.bhlu.com/ipa/ui/,但是访问的客户端需要配置一下域名解析
    • master.bhlu.com 192.168.22.10
    • usernameadmin
    • password:上面 -a 指定的 12345678
  2. 使用命令行查看
# 登录Kerberos域
[root@master ~]# kinit admin
Password for admin@BHLU.COM: # 输入-p后面跟的密码,这里我输入的是12345678

# 查看用户
root@master ~]# ipa user-find --all
--------------
1 user matched
--------------
  dn: uid=admin,cn=users,cn=accounts,dc=bhlu,dc=com
  User login: admin
  Last name: Administrator
  Full name: Administrator
  Home directory: /home/admin
  GECOS: Administrator
  Login shell: /bin/bash
  Principal alias: admin@BHLU.COM
  User password expiration: 20241104071421Z
  UID: 520400000
  GID: 520400000
  Account disabled: False
  Preserved user: False
  Member of groups: admins, trust admins
  ipauniqueid: 0dff0892-53c3-11ef-b361-000c29c08154
  krbextradata: AAJNzbFmcm9vdC9hZG1pbkBCSExVLkNPTQA=
  krblastpwdchange: 20240806071421Z
  objectclass: top, person, posixaccount, krbprincipalaux, krbticketpolicyaux, inetuser, ipaobject, ipasshuser, ipaSshGroupOfPubKeys
----------------------------
Number of entries returned 1
----------------------------

5. 相关管理命令

# 卸载
[root@master ~]# ipa-server-install --uninstall

# 重启服务
[root@master ~]# ipactl restart

# 执行下面命令之前,都需要 kinit admin
# 添加用户,
[root@master ~]# ipa user-add -help

# 查看所有域用户信息
[root@master ~]# ipa user-find --all

2.3 Node1

1. 配置域名解析

# 设置主机名
[root@node1 ~]# hostnamectl set-hostname node1.bhlu.com

# 添加域名解析
[root@node1 ~]# vim /etc/hosts
...
192.168.22.10 master.bhlu.com master
192.168.22.11 node1.bhlu.com node1

# 设置DNS
[root@node1 ~]# echo "nameserver 192.168.22.10" >> /etc/resolv.conf
[root@node1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search bhlu.com
nameserver 192.168.22.10

2. 安装 freeIPA

[root@node1 ~]# yum install authconfig authconfig-gtk ipa-client ipa-admintools -y

3. 配置 freeIPA

  • ipa-client-installFreeIPA 客户端安装命令
  • --domain:指定要加入的 FreeIPA
  • --realm:指定 Kerberos 领域
  • --server:指定 FreeIPA 服务器的主机名或 IP 地址
  • --no-ntp:表示不要配置 NTP 服务,因为我之前配置过 chronyd
  • --mkhomedir:在用户首次登录时创建用户的家目录
[root@node1 ~]# ipa-client-install --domain bhlu.com --realm=BHLU.COM --server master.bhlu.com --no-ntp --mkhomedir
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
Client hostname: node1.bhlu.com
Realm: BHLU.COM
DNS Domain: bhlu.com
IPA Server: master.bhlu.com
BaseDN: dc=bhlu,dc=com

Continue to configure the system with these values? [no]: # yes
Skipping synchronizing time with NTP server.
User authorized to enroll computers: # admin
Password for admin@BHLU.COM: # 服务端-p后面的密码,我这里输入的是12345678
Successfully retrieved CA cert
    Subject:     CN=Certificate Authority,O=BHLU.COM
    Issuer:      CN=Certificate Authority,O=BHLU.COM
    Valid From:  2024-08-06 07:11:51
    Valid Until: 2044-08-06 07:11:51

...
Client configuration complete.
The ipa-client-install command was successful  # 出现这个说明安装成功

图形界面可以执行 authconfig-gtk 添加,这里我没有试验。

4. 验证是否安装成功

  • 客户端查看
[root@node1 ~]# id admin
uid=520400000(admin) gid=520400000(admins) groups=520400000(admins)
  • web 查看
    freeipa-01

5. 相关管理命令

# 手动同步账户信息
[root@node1 ~]# sss_cache --users

三、配置相关服务

3.1 配置 nfs 挂载 home

  • 这里统一使用 Master 上的 home(这里一开始尝试使用 autofs,发现 autofs 挂载的目录客户端没有权限创建新的目录,所以目前使用的是 nfs

1. 配置 nfs-server

[root@master ~]# vim /etc/exports
/home     192.168.22.0/24(rw,sync,no_root_squash)

# 启动服务并设置开机自启
[root@master ~]# systemctl enable --now nfs

# 查看
[root@master ~]# showmount -e master.bhlu.com
Export list for master.bhlu.com:
/home    192.168.22.0/24

2. 客户端挂载

[root@node1 ~]# echo "master.bhlu.com:/home /home nfs defaults 0 0" >> /etc/fstab
[root@node1 ~]# mount -a
[root@node1 ~]# df -h /home
Filesystem             Size  Used Avail Use% Mounted on
master.bhlu.com:/home   17G  5.3G   12G  32% /home

3. 验证客户端自动创建家目录

# 登录Kerberos
[root@node1 ~]# kinit admin
Password for admin@BHLU.COM: # 这里输入Kerberos的密码,我输入的是12345678

# 创建用户
[root@node1 ~]# echo "123456" | ipa user-add maomao --first=mao --last=mao --cn=maomao --shell=/bin/bash --password
-------------------
Added user "maomao"
-------------------
  User login: maomao
  First name: mao
  Last name: mao
  Full name: maomao
  Display name: mao mao
  Initials: mm
  Home directory: /home/maomao
  GECOS: mao mao
  Login shell: /bin/bash
  Principal name: maomao@BHLU.COM
  Principal alias: maomao@BHLU.COM
  User password expiration: 20240806122906Z
  Email address: maomao@bhlu.com
  UID: 520400008
  GID: 520400008
  Password: True
  Member of groups: ipausers
  Kerberos keys available: True

# 验证是否创建成功
[root@node1 ~]# id maomao
uid=520400008(maomao) gid=520400008(maomao) groups=520400008(maomao)

# 验证客户端上会不会自动创建家目录
[root@node1 ~]# su - maomao
Creating home directory for maomao.
Last login: Tue Aug  6 20:30:40 CST 2024 on pts/0
[maomao@node1 ~]$ pwd
/home/maomao

3.2 配置 Autofs

  • 这里使用 Master/project 挂载到 node1

1. 配置 nfs-server

[root@master ~]# mkdir -p /project/{proj1,proj2,proj3}

[root@master ~]# vim /etc/exports
/home     192.168.88.0/24(rw)  # 这个是之前添加的
/project  192.168.22.0/24(rw)

# 重启nfs
[root@master ~]# systemctl restart nfs

# 验证
[root@master ~]# showmount -e master.bhlu.com
Export list for master.bhlu.com:
/home    192.168.22.0/24  # 之前的示例
/project 192.168.22.0/24

2. web 设置 autofs

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3. 客户端加载 autofs

[root@node1 ~]# ipa-client-automount
Searching for IPA server...
IPA server: DNS discovery
Location: default
Continue to configure the system with these values? [no]: # yes
Configured /etc/sysconfig/nfs
Configured /etc/idmapd.conf
Started rpcidmapd
Started rpcgssd
Restarting sssd, waiting for it to become available.
Started autofs

4. 验证 project 是否自动挂载

[root@node1 ~]# cd /project/proj1
[root@node1 proj1]# cd /project/proj2
[root@node1 proj2]# cd /project/proj3
[root@node1 proj3]# df -h | grep project
master.bhlu.com:/project/proj1   17G  5.3G   12G  32% /project/proj1
master.bhlu.com:/project/proj2   17G  5.3G   12G  32% /project/proj2
master.bhlu.com:/project/proj3   17G  5.3G   12G  32% /project/proj3

四、总结

  1. 登录 web 时提示的 ssl
  2. home 设置 autofs 会导致客户端上 root 没法在 /home 创建目录
  3. 删除用户后,其 /home 下的目录还会存在
  4. 有的时候分完组,更新会比较慢,需要执行 sss_cache --users

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1986871.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenHarmony网络请求库-axios

简介 Axios ,是一个基于 promise 的网络请求库,可以运行 node.js 和浏览器中。本库基于 Axios 原库v1.3.4版本进行适配,使其可以运行在 OpenHarmony,并沿用其现有用法和特性。 http 请求Promise APIrequest 和 response 拦截器转…

Codeforces Round 920 (Div. 3) A~E 题

A. Square 题目链接: Problem - A - Codeforces 思路: 题目比较简单:就是给你一个矩形的四个顶点的坐标,然后让你求矩形的面积,我们知道矩形的面积等于长乘宽,那么,如何就矩形的长和宽&…

ctfhub Bypass disable_function

LD_PRELOAD url 蚁剑连接 选择插件 点击开始 查看到此文件名编辑连接拼接到url后面重新连接 点击开启终端 在终端执行命令 ls / /readfile ShellShock url CTFHub 环境实例 | 提示信息 蚁剑连接 写入shell.php <?phpeval($_REQUEST[ant]);putenv("PHP_test() { :…

ViT论文详解

文章目录 前言一、ViT理论二、模型结构三、实验结果总结 前言 ViT是谷歌团队在2021年3月发表的一篇论文&#xff0c;论文全称是《AN IMAGE IS WORTH 16X16 WORDS:TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE》一张图片分成16x16大小的区域&#xff1a;使用Transformer进行按比…

如何将Python程序打包成exe程序

众所周知,通过python开发的程序要运行,一般需要安装python环境来运行程序文件,那么如何在未安装python环境的电脑上直接运行程序呢?通常采用Pyinstaller来实现的,本文主要对该打包过程进行具体说明。本文重点解决PyQt5在打包时无法正确运行的问题。 一、安装Pyinstaller 安…

Docker常用命令与相关操作(更新中)

Docker介绍 1.什么是Docker Docker是一个开源的应用容器引擎&#xff0c;它是一个是基于Go语言开发的开源项目。使用Docker可以让开发者封装他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任意的Linux机器上&#xff0c;也可以实现虚拟化。Docker容器完全使…

机房空调远程控制方案

概述 企业和园区都会有电力机房&#xff0c;往往会配备抽风机或者空调设备。特别在南方&#xff0c;空气湿度大时特别需要这些设备。经常有业主反馈&#xff0c;下班后靠人力到现场控制不太方便&#xff0c;24小时开启又浪费资源&#xff0c;而且可能有长期噪声污染。为此&…

Tomato靶机

修改网络模式为NAT 主机发现 arp-scan -l 端口扫描 nmap 192.168.48.147 nmap -sC -sV -O 192.168.48.147 -sC常见漏洞脚本扫描 -sV开放端口服务/版本号 -O操作系统探测 端口利用 访问web服务 目录扫描 dirb http://192.168.48.147 访问 http://192.168.48.147/antibot_im…

盘点4款令人惊艳的视频剪辑工具

在这个短视频盛行的时代&#xff0c;每个人都可以成为视频内容的创作者。但是&#xff0c;在此之前&#xff0c;拥有一款适合自己的剪辑软件十分重要。今天我就来和大家来说一说我自己觉得比较好用的4款剪辑软件。 1、福昕剪辑神器 直达链接&#xff1a;www.pdf365.cn/foxit-c…

如何将iphone照片导入电脑?4种使用的照片导入办法

你是否曾为如何将iPhone上的照片导入电脑而烦恼&#xff1f;是否尝试过多种方法&#xff0c;却总是觉得步骤繁琐、效率低下&#xff1f;不用再为找不到好方法而挠头了&#xff01; 下面分享几种实用的导入办法&#xff0c;让你在短时间内将照片从iPhone照片导入电脑&#xff0…

学习笔记 韩顺平 零基础30天学会Java(2024.8.6)

P471 String对象特性2 数组默认情况下是放到堆里面的 只要调用一个方法就会产生一个新栈&#xff0c;因为是在主方法里创建对象的&#xff0c;所以对象是在栈里面&#xff0c;而str ch这些都应该在堆里面&#xff0c;栈里的对象指向堆中的str ch。这一题很像学C语言的时候遇到的…

红外遥控风扇——arduino

红外遥控风扇——arduino 本节课任务红外遥控红外遥控通信过程红外遥控套件红外遥控接线实现风扇的多种换挡方式用本节课所学的红外遥控&#xff0c;控制RGB彩灯变换颜色&#xff0c;至少配置4种 本节课任务 1、了解红外遥控技术在生活中的运用。 2、学会编程测试红外遥控器的…

nuclei-快速漏洞扫描器【安装使用详解】

★★免责声明★★ 文章中涉及的程序(方法)可能带有攻击性&#xff0c;仅供安全研究与学习之用&#xff0c;读者将信息做其他用途&#xff0c;由Ta承担全部法律及连带责任&#xff0c;文章作者不承担任何法律及连带责任。 1、nuclei介绍 Nuclei是一款基于YAML语法模板的开发的定…

软件包管理|npm【前端工具链】

项目中的依赖 依赖是指可能由他人编写的第三方软件&#xff0c;理想情况下能够为你解决单一的问题。 一个 Web 项目可以有任意数量的依赖&#xff0c;从无到多&#xff0c;并且你的依赖里可以包含了你没有明确安装的子依赖&#xff08;依赖的依赖&#xff09;。 项目依赖可以…

Ubuntu 22.04 Docker安装笔记

1、准备一台虚机 可以根据《VMware Workstation安装Ubuntu 22.04笔记》来准备虚拟机。完成后&#xff0c;根据需求安装必要的软件&#xff0c;并设置root权限进行登录。 sudo apt update sudo apt install iputils-ping -y sudo apt install vim -y允许root ssh登录&#xff1…

LVS集群的nat模式详解(负载均衡)

目录 一、LVS集群的介绍 1、LVS 相关术语&#xff1a; 2、lvs工作原理 3、相关名词概念 4、lvs集群的类型 二、lvs的nat模式 1、介绍&#xff1a; 2、数据逻辑&#xff1a; 3、nat实验部署 环境搭建&#xff1a; 1、lvs中要去打开内核路由功能&#xff0c;实现网络互联…

完整指南:卡片设计入门及实用技巧解析

UI卡片是对响应设计的终极回应。无论是响应布局还是自适应布局&#xff0c;卡片UI设计都可以为适应做出贡献&#xff0c;其灵活可控的容器结构可以根据总宽度灵活调整布局结构。虽然UI卡片在加载速度和屏幕适应性上有天然的优势&#xff0c;但由于卡片的意识&#xff0c;每个部…

Windows安装MySQL8.0.X版本归档包(zip包)最新教程

文章目录 1.安装包下载1.1 Windows版本下载2.MySQL8.0.X安装2.1 解压压缩包到指定位置2.2 初始化2.3 安装服务2.4 修改默认密码总结参考资料1.安装包下载 你可以下载 msi 文件一键安装,也可以下载解压版 zip 文件(Archive)进行命令行初始化安装,也是个人推荐的方式。 MyS…

温湿度阈值联网控制

温湿度阈值联网控制 引言 目的: 我们不管使用哪种协议, 哪种解决方案, 我们就目前的情况来看, 我们刚开始是使用 手动修改temp_th和 humi_th的方式, 来实现温湿度阈值的控制.但是对于投入到实际使用的话, 我们还需要使用更方便的联网控制, 所以我们首先利用Onenet的解决方案.…

Kickstart

一&#xff1a;实验前提&#xff1a; 1.RHEl7主机 2.开启图形 init5开图形 3.配置网络可用 4.关闭vmware dhcp功能 5.关闭火墙 二&#xff1a;下载kickstart [roottao ~]# yum install system-config-kickstart 三&#xff1a;启动kickstart并完成相关配置&#xff1a;…