从零构建ipa-server.实现ldap+kerberos网络用户验证

redhat7 linux domain identity,authentication,and policy

linux 的域标识,认证,和策略

IPA-server服务,通过网络用户和组连接系统。

1,用户信息和认证服务介绍

1.1随着现在网络的发展,在企业中主机也越来越多,主机用户管理变成一件很艰难的任务,
一种解决方式,账号信息不存放在本地系统中,而是账号信息存储在一个中心位置,实现用户的集中管理。
单点登录(single sign on )简称SSO,是目前比较流行的企业业务整合的解决方案之一,
SSO的定义是定义在多个应用系统中,用户只需要登录一次就可以访问所有信任的应用系统。

1.2构建一个集中认证管理系统需要提供:账户信息和认证信息

1.2.1账户信息:包含如,用户名,UID,GID等

    存储账号信息流行的解决方案:LADP,NIS,AD或IPA-server

1.2.2认证信息:密码,指纹等。

ldap服务
kerberos 是一种网络认证协议,仅提供SSO认证服务,通常和LDAP一起使用。

典型的实现方案:AD(微软活动目录)和IPA-server

2,从零搭建IPA-server

2.1准备工作:

一台物理主机,两台vm虚拟机,系统为redhat7.0以上(安装了图形界面的)。
物理主机的地址为:ip:192.168.0.111/24 gw:192.168.0.1 dns192.168.0.1 地址可以根据自己的情况而定
第一台虚拟机:网卡类型为自动桥接:ip:192.168.0.118/24 gw:192.168.0.1 dns 可以暂时不用配置。这台虚拟机我们将要它配置成ipa-server
第二台虚拟机:网卡类型为自动桥接:ip:192.168.0.119/24 gw;192.168.0.1 dns:192.168.0.118


2.2 IPA-server服务安装前条件:

1,必须要有完整的主机名
2,一个静态的ip地址
3,能够对主机名做解析(正向和反向解析)
4,hosts文件也要对主机名做解析。不能解析到127.1
5,开通防火墙规则和服务
6, 做时间ntp同步

2.3步骤:现在操作192.168.0.118这台虚拟机,下面就简称为:server了

1,设置主机名为server.zhuxu.co
[[email protected] ~]# hostnamectl set-hostname server.zhuxu.co
[[email protected] ~]# hostname server.zhuxu.co
2,一个静态的ip地址上面准备工作已经设置好了
3,能够对主机名做解析(正向和反向解析)这步不用做,安装ipa-server,会自动配置dns服务
4,vim /etc/hosts 文件,添加 192.168.0.118 server.zhuxu.co server 这一行。
5,为了简化步骤,直接关闭防火墙和selinux.(我会再另外发一个版本,加上防火墙的配置)
[[email protected] ~]# iptables -F清除iptables规则
[[email protected] ~]# systemctl stop iptables 停止iptables服务
[[email protected] ~]# systemctl disable iptables 禁止iptables 开机启动
[[email protected] ~]# systemctl stop firewalld 停止firewalld 服务
[[email protected] ~]# systemctl disable firewalld 禁止firewalld 开机启动
[[email protected] ~]# setenforce 0 临时关闭selinux
编辑/etc/selinux/conf 文件 SELINUX=permissive

6,vim /etc/chrony.conf 注释前三个时间服务,编辑最后一个为:server ntp1.aliyun.com iburst
[[email protected] ~]#systemctl restart chronyd.service 重启时间服务

7,配置好yum源,我这选择挂载光盘来做yum仓库。
[[email protected] ~]# vim /etc/yum.repos.d/server.repo
在文件中输入以下内容

[base]
name=redhat7
baseurl=file:///mnt
enabled=1
gpgcheck=0 

挂载光盘到/mnt下(请确保光盘是连接状况)
[[email protected] ~]# mount /dev/cdrom /mnt

服务器端安装条件准备好了:

2.4,安装ipa-server

ipa-server 依赖于dns服务才能工作,我们要装的包有:ipa-server bind bind-dyndb-ldap ipa-server-dns
bind 是提供dns服务,bind-dyndb-ldap是提供dns和ldap连接组件等,
ipa-server-dns提供了ipa-server与dns连接组件等(根据安装系统时候选的包不同,这个包有可能装过了)

[[email protected] ~]# yum install -y ipa-server bind bind-dyndb-ldap ipa-server-dns

2.5配置ipa-server

[[email protected] ~]# ipa-server-install --setup-dns   ---安装ipa-server自动配置dns
Server host name [server.zhuxu.co]:     ---回车键(默认)
Please confirm the domain name [zhuxu.co]:    ---回车键(默认)
Please provide a realm name [ZHUXU.CO]:  ---回车键(默认)
Directory Manager password:   ---设置目录管理的密码 最少是8位
IPA admin password:  ---设置ipa 管理员admin的密码 最少8位 一定要记住,后面要用到
Do you want to configure DNS forwarders? [yes]: no ---你想配置dns为转发器吗? 选择no
Do you want to search for missing reverse zones? [yes]: yes --你想配置dns的反向域吗?选择yes
Continue to configure the system with these values? [no]: yes --继续配置系统其他的值? 选择yes
[[email protected] ~]# systemctl enable sssd      --开机自启动sssd服务(sssd:system security service deamon 系统安全服务)
[[email protected] ~]# systemctl start sssd  --开启sssd服务(可能默认已经开启了)

[[email protected] ~]# authconfig  --enablemkhomedir --update  创建的用户,默认创建用户家目录,更新认证信息

2.6验证ipa-server和dns.

2.6.1验证ipa-server

[[email protected] ~]# kinit admin   ---必须要登陆admin 才能管理域
Password for [email protected]:
[[email protected] ~]# ipa user-find --all  查看所有域用户的信息

1 user matched

  dn: uid=admin,cn=users,cn=accounts,dc=zhuxu,dc=co
  User login: admin
  ....

Number of entries returned 1

2.6.2验证nds,正反向解析

[[email protected] ~]# dig -t a server.zhuxu.co 查看server.zhuxu.co 的A 记录
[[email protected] ~]# dig -t ptr  118.0.168.192.in-addr.apra 查看server.zhuxu.co 的PTR记录

2.7服务器配置结束。重启系统

[[email protected] ~]# reboot

3,通过图像界面添加用户和主机(通过命令也会介绍请看下一章nfs使用域用户)

可以通过server.zhuxu.co 终端中的火狐输入https://server.zhuxu.co/ipa/ui 来管理。


客户端配置

1准备工作

1,配置主机名

[[email protected] ~]# hostnamectl set-hostname client.zhuxu.co
[[email protected] ~]# hostname client.zhuxu.co

2,设置一个静态ip地址 dns一定要指向server.zhuxu.co 的ip
3,关闭防火墙同server端一样
4,修改hosts文件,添加192.168.0.119 client.zhuxu.co client
5,做时间同步
vim /etc/chrony.conf 注释前三个时间服务,编辑最后一个为:server ntp1.aliyun.com iburst
[[email protected] ~]#systemctl restart chronyd.service 重启时间服务
6,配置好yum源,我这选择挂载光盘来做yum仓库。
[[email protected] ~]# vim /etc/yum.repos.d/server.repo
在文件中输入以下内容

[base]
name=redhat7
baseurl=file:///mnt
enabled=1
gpgcheck=0 

挂载光盘到/mnt下(请确保光盘是连接状况)

[[email protected] ~]# mount /dev/cdrom /mnt

2配置客户端

2.1yum install -y authconfig authconfig-gtk ipa-client

2.2用图形化配置kerberos认证信息

[[email protected] ~]#authconfig-gtk

2.3配置ipa-client

[[email protected] ~]# ipa-client-install --domain=zhuxu.co --no-ntp`--realm=ZHUXU.CO --mkhomedir
加入域,不启用ntp,创建用户时自动创建家目录
Continue to configure the system with these values? [no]: yes ---继续配置系统其他的值? 选择yes
User authorized to enroll computers: admin ---域管理员
Password for [email protected]: ---密码

3验证用户是否能登录

[[email protected] ~]# ssh [email protected] ---在客户端实验登录
Password: ---输入密码
Password expired. Change your password now. --提醒你密码过期
Current Password: --输入现用密码
New password: ---新密码
Retype new password:
Creating home directory for tom.
[[email protected] ~]$ whoami --登陆成功
tom
[[email protected] ~]$ pwd --在家目录下,说明家目录也是创建成功了。
/home/tom

所有配置结束,在网上搜索不到ipa-server 配置方法。这可能是在百度中找到的最全的配置方法了,还是从零构建的。2018年7月27日凌晨1:34分

原文地址:http://blog.51cto.com/zhuxu91313/2150779

时间: 2024-10-02 01:36:55

从零构建ipa-server.实现ldap+kerberos网络用户验证的相关文章

Chapter 1 Securing Your Server and Network(9):使用Kerberos用于身份验证

原文出处:http://blog.csdn.net/dba_huangzj/article/details/38332605,专题目录:http://blog.csdn.net/dba_huangzj/article/details/37906349 未经作者同意,任何人不得以"原创"形式发布,也不得已用于商业用途,本人不负责任何法律责任. 前一篇:http://blog.csdn.net/dba_huangzj/article/details/38263043 前言: 在活动目录(A

ldap + kerberos + google authentication 实现两步验证

第一步:ldap + kerberos 整合  ,参考之前的文章 第二步:google authentication 安装配置,参考之前的文章 第三步:整合 ldap + kerberos + google authentication 1. 由于sshd默认在使用了秘钥或者kerberos验证的时候,就通过了验证,不再执行google authentication的动态密码验证,所以我们需要新版本的sshd的AuthenticationMethods选项 支持,这个选项参数指定sshd必须完成

使用 AngularJS 从零构建大型应用

0.导言 1.准备工作 2.构建框架 3.丰富你的directives 4.公用的services 5.用controllers组织业务 导言 纵览线上各种AngularJS教程,大部分都是基础与一些技巧分析. 如果你已经能运行你的ng-app,但又找不到实际案例可以参考.那么本文应该对您有所帮助. 本文将以电商产品:友好速搭 其中的 店铺后台 作为的实际案例,裸奔展示如何从零构建 “自以为大型的” AngularJS应用. 应用基于AngularJS 1.2.24版本. 准备工作 1.我们使用

从零构建OpenStack(1) 云计算相关概念及OpenStack介绍

什么是云计算? 什么是云 相信很多人对"云"这个词云里雾里,这也恰好符合它的特性,曾经的云一般表示网络(WAN),我们经常在很多网络拓扑图中看见它的身影,如今云又有了新的定义,表示互联网和底层基础设施的抽象,可以简单理解为一个虚拟化集群通过特定组件对多台VM进行管理并按需分配计算.存储.网络资源. 什么是云计算,为什么要使用云主机? 我们传统的获取计算能力的模式一般都是买一台计算机,我们要考虑其CPU的选型,内存大小,显卡,磁盘等.一般情况下,我们对计算机的计算资源的占用只有20%,

从零构建PHP商用MVC框架(2.1 路由-带参数请求)

本节我们就真正进入"从零构建php商用mvc框架"的实际动手阶段,本节的标题是"路由-带参数请求",我们本节要构建最基本的mvc路由访问控制,举例如:minyifei.cn/?_c=test&_a=getInfo 能访问我们的TestController类的getInfo方法,并能正常输出内容. 首先我给大家先看看最终的项目目录结构是什么样子的,然后再逐个文件介绍: 先看看index.php,大家都比较熟悉,这个是整个项目的入口,代码也很简单,仅做为转发器,

通过dockerfile从零构建centos7.4镜像

今天做一个dockerfile从零构建centos7.4镜像 废话不多说,很简单. 需要的软件包:centos7.4的rootfs 链接:https://pan.baidu.com/s/1emJxeIIsHMIN5hfQgdeiYw 提取码:usnu 下载以后我们打开看看里面是什么呢: 可以看的出这就是一个文件系统. ------------------------------------------------------------------------ 环境准备,centos7服务器.d

二.第八单元 ldap网络用户

#### 第八单元. ldap网络用户账户 ####1.LDAP网络用户ldap目录服务认证,和windows活动目录类似,就是记录数据的一种方式 2.ldap客户端所须软件yum sssd krb5-wordstation -y 3.如何开启ldap用户认证authconfig-tui┌────────────────┤ Authentication Configuration ├─────────────────┐│                                      

Spring Ldap user登录 userPassword验证

Ldap  密码字段被加密,在用户登录 或者 用户更改密码时候都需要密码验证: 1.自己的实现 /** * 集成Ldap登录验证 * * @author wzc * @date 2017年12月11日 下午2:14:37 * */ @Service public class LdapLogin { /** * 创建一个LdapTemplate对象 * 连接ldap */ @Autowired private LdapTemplate ldapTemplate; private ContextSo

2-8. LDAP 网络用户账户

##LDAP 网络用户账户## 学习目标 LDAP 客户端配置 自动挂载器元字符 1.1##使用 LDAP 服务器进行网络身份验 在本课程中,到目前为止,我们已经介绍了通过每台计算机上的本地文件(例如 /etc/passwd )管理的本地用户账户.但是 ,在多个系统上将本地用户账户协调一致非常困难 本节中 ,我们将介绍如何将计算机设置为客户端 ,以使用现有 LDAP 目录服务提供的网络用户账户.这样, LDAP 目录就成为我们组织中所有网络用户和组的中心机构 用户账户信息可以确定装户的特征和配置