资源名称:Linux UNIX OpenLDAP实战指南

作者简介:

郭大勇(Sandy),系统架构师,从事Linux 系统运维管理工作近6 年。擅长领域有Linux 网站架构规划、Linux 应用集群部署、Linux 系统安全、MySQL 架构设计、自动化运维管理、监控平台架构、分布式存储、云计算、存储架构优化等。

资源目录:

第 1章 OpenLDAP介绍及工作原理详解 2

1.1 关于OpenLDAP 3

1.1.1 OpenLDAP是什么 3

1.1.2 为什么选择OpenLDAP产品 4

1.1.3 OpenLDAP目录服务优点 4

1.1.4 OpenLDAP功能 5

1.1.5 OpenLDAP协议版本概述 5

1.1.6 LDAP产品汇总 6

1.1.7 OpenLDAP适用场景 6

1.1.8 OpenLDAP支持的系统平台 6

1.1.9 OpenLDAP高 级功能汇总 7

1.2 OpenLDAP目录架构 7

1.2.1 OpenLDAP目录架构介绍 7

1.2.2 互联网命名组织架构 7

1.2.3 企业级命名组织架构 8

1.2.4 OpenLDAP的系统架构 8

1.2.5 OpenLDAP的工作模型 9

1.3 OpenLDAP schema概念 9

1.3.1 schema介绍及用途 9

1.3.2 获取schema的途径 10

1.4 OpenLDAP目录条目概述 11

1.4.1 objectClass分类 11

1.4.2 OpenLDAP常见的objectClass 11

1.4.3 objectClass详解 13

1.4.4 objectClass案例分析 13

1.5 属性 14

1.5.1 属性概述 14

1.5.2 Attribute详解 14

1.6 LDIF详解 15

1.6.1 LDIF用途 15

1.6.2 LDIF文件特点 15

1.6.3 LDIF格式语法 16

1.7 对象标识符讲解 16

1.8 自动化运维解决方案 17

1.8.1 互联网面临的问题 17

1.8.2 自动化解决方案 18

1.9 本章总结 19

第 2章 OpenLDAP服务器安装与配置 20

2.1 OpenLDAP平台支持 21

2.2 OpenLDAP安装 21

2.2.1 OpenLDAP安装方式 21

2.2.2 OpenLDAP安装步骤 21

2.3 Linux平台安装 21

2.3.1 yum用途及语法 21

2.3.2 以软件包形式安装 23

2.3.3 通过源码编译安装 24

2.3.4 错误分析、解决 27

2.4 OpenLDAP配置 28

2.4.1 OpenLDAP相关信息 28

2.4.2 slapd.conf配置文件 28

2.5 OpenLDAP单节点配置案例 31

2.5.1 安装环境规划 31

2.5.2 主机名规划配置 32

2.5.3 时间同步配置 32

2.5.4 防火墙、SELinux配置 33

2.5.5 FQDN域名解析配置 33

2.5.6 安装OpenLDAP组件 33

2.5.7 初始化OpenLDAP配置 34

2.5.8 slaptest检测、生成数据库 35

2.5.9 OpenLDAP日志配置 35

2.5.10 通过cn=config配置OpenLDAP日志 36

2.5.11 OpenLDAP日志切割配置 37

2.5.12 加载slapd进程、端口状态 38

2.6 OpenLDAP目录树规划 38

2.6.1 规划OpenLDAP目录树组织架构 38

2.6.2 故障分析 39

2.7 OpenLDAP用户以及与用户组相关的配置 40

2.7.1 通过migrationtools实现OpenLDAP用户及用户组的添加 40

2.7.2 自定义LDIF文件添加用户及用户组条目 42

2.8 OpenLDAP索引 43

2.8.1 索引介绍 43

2.8.2 创建索引 44

2.9 OpenLDAP控制策略 44

2.9.1 通过slapd.conf定义用户策略控制 44

2.9.2 通过cn=config定义用户控制策略 45

2.10 本章总结 45

第3章 OpenLDAP命令详解 46

3.1 OpenLDAP命令介绍 47

3.2 OpenLDAP命令讲解及案例分析 47

3.2.1 ldapsearch命令 47

3.2.2 ldapadd命令 48

3.2.3 ldapdelete命令 49

3.2.4 ldapmodify命令 50

3.2.5 ldapwhoami命令 51

3.2.6 ldapmodrdn命令 51

3.2.7 ldapcompare命令 52

3.2.8 ldappasswd命令 54

3.2.9 slaptest命令 54

3.2.10 slapindex命令 55

3.2.11 slapcat命令 55

3.3 本章总结 56

第4章 OpenLDAP客户端部署 57

4.1 服务器、存储Web控制集成OpenLDAP 58

4.1.1 客户端部署介绍 58

4.1.2 服务器Web控制台集成LDAP 58

4.1.3 EMC Web控制台集成LDAP 59

4.2 UNIX系统部署OpenLDAP客户端 60

4.2.1 本地目录服务查询流程 60

4.2.2 系统发行版5.x/6.x/7.x的部署区别 60

4.2.3 账号登录系统流程讲解 60

4.2.4 5.x、6.x、7.x系统版本以及配置文件介绍 60

4.2.5 配置文件功能介绍 61

4.2.6 三种部署方式介绍 61

4.3 红帽5.x系统版本部署 62

4.3.1 图形化部署OpenLDAP客户端 62

4.3.2 故障分析之一 64

4.3.3 故障分析之二 65

4.4 红帽6.x系统版本部署 65

4.4.1 sssd与nslcd的区别 66

4.4.2 配置文件部署 66

4.5 命令行部署OpenLDAP客户端 69

4.5.1 authconfig命令介绍 69

4.5.2 authconfig备份恢复案例 70

4.5.3 部署实施步骤 71

4.6 故障分析 72

4.7 本章总结 73

第5章 OpenLDAP GUI管理部署 74

5.1 phpLDAPadmin概述 75

5.2 部署phpLDAPadmin 75

5.2.1 安装phpLDAPadmin的环境准备 75

5.2.2 Apache部署 75

5.2.3 故障分析 76

5.2.4 验证Apache功能 77

5.2.5 PHP开发环境部署 78

5.2.6 验证当前系统是否支持PHP环境 79

5.2.7 安装phpLDAPadmin GUI管理软件 80

5.2.8 验证phpLDAPadmin界面 81

5.2.9 故障分析 82

5.3 通过phpLDAPadmin管理OpenLDAP 83

5.3.1 用户条目管理 83

5.3.2 phpLDAPadmin用户登录异常 87

5.4 访问phpLDAPadmin需要提供Apache验证 87

5.4.1 配置Apache认证策略 88

5.4.2 phpLDAPamdin验证认证策略 89

5.5 LAM 89

5.5.1 LAM软件简介 89

5.5.2 LAM功能 90

5.5.3 LAM安装、配置 90

5.5.4 验证LAM平台 91

5.5.5 故障分析 93

5.6 LDAP Admin管理 94

5.6.1 LDAP Admin软件介绍 94

5.6.2 LDAP Admin安装 94

5.7 LDAP Admin管理条目 96

5.7.1 条目管理 96

5.7.2 ou管理 97

5.7.3 objectClass管理 97

5.8 本章总结 99

第6章 OpenLDAP权限、密码策略控制 102

6.1 sudo详解 103

6.1.1 sudo概念描述 103

6.1.2 系统权限阐述 103

6.2 sudo权限级别分类 104

6.2.1 用户级别概念 104

6.2.2 组级别概念 104

6.2.3 命令级别概念 104

6.3 sudo执行流程讲解 105

6.4 OpenLDAP sudo权限讲解 105

6.5 sudo权限控制实战 106

6.5.1 sudo权限控制实战拓扑图 106

6.5.2 通过本地sudo规则实现OpenLDAP用户提权配置 106

6.5.3 在OpenLDAP服务端实现用户权限控制 108

6.6 在客户端配置OpenLDAP相关sudo设置 115

6.6.1 5.x、6.x部署sudo的区别 115

6.6.2 RHEL 5.x系统配置OpenLDAP的sudo规则 115

6.6.3 RHEL 6.5系统配置OpenLDAP的sudo规则 116

6.7 OpenLDAP密码策略、审计控制 118

6.7.1 密码策略 118

6.7.2 通过本地配置实现密码策略介绍 118

6.7.3 密码策略属性详解 119

6.8 OpenLDAP定制密码策略 119

6.8.1 OpenLDAP服务端定制密码策略 119

6.8.2 定义密码策略组 121

6.8.3 定义用户登录修改密码 122

6.8.4 客户端配置 123

6.9 密码审计控制 124

6.9.1 加载审计模块auditlog 124

6.9.2 在客户端验证密码策略时效 124

6.9.3 OpenLDAP用户密码跟踪 124

6.10 常见用户密码处理方法 125

6.10.1 密码被锁解决方法 125

6.10.2 如何提示修改初始密码 126

6.10.3 密码过期解决方案 127

6.11 本章总结 127

第7章 OpenLDAP主机控制策略 129

7.1 主机控制策略阐述 130

7.2 通过Linux-PAM模块实现控制 130

7.2.1 Linux-PAM组织架构 130

7.2.2 PAM配置文件语法讲解 130

7.3 通过access实现主机控制 132

7.3.1 access模块功能阐述 132

7.3.2 access配置语法 132

7.4 通过access控制用户实战演练 132

7.4.1 加载pam_access.so模块 132

7.4.2 配置access.conf访问规则 133

7.4.3 客户端验证规则 133

7.5 OpenLDAP服务端主机控制规则 134

7.5.1 定义olcModuleList对象 135

7.5.2 添加模块路径/usr/lib64/openldap 135

7.5.3 定义主机控制模块 135

7.5.4 定义主机objectClass对象 136

7.5.5 定义ldapns的schema规范 136

7.5.6 定义主机列表组 136

7.5.7 定义用户组 137

7.6 OpenLDAP客户端部署 139

7.6.1 定义FQDN解析 139

7.6.2 加载LDAP主机控制规则 139

7.6.3 在客户端验证控制策略 140

7.6.4 日志分析 141

7.7 6.x客户端部署 142

7.7.1 定义FQDN解析 142

7.7.2 pam_ldap.conf参数规划 142

7.7.3 在客户端验证控制策略 142

7.7.4 日志分析 143

7.8 LAM控制台管理 143

7.8.1 定义用户添加属性 144

7.8.2 在客户端验证 146

7.9 本章总结 147

第8章 OpenLDAP加密传输与证书颁发机构 148

8.1 OpenSSL 149

8.1.1 SSL概述 149

8.1.2 OpenSSL概述 149

8.1.3 OpenSSL会话建立过程 149

8.2 CA 150

8.2.1 CA概述 150

8.2.2 CA证书有效信息 150

8.2.3 秘钥交换原理 151

8.3 加密算法讲解 151

8.3.1 对称加密算法 151

8.3.2 单向加密算法 152

8.3.3 非对称加密算法 153

8.4 OpenSSL组件与命令 155

8.4.1 OpenSSL组件 155

8.4.2 OpenSSL命令讲解 155

8.5 通过OpenSSL构建证书颁发机构 156

8.5.1 CA证书获取途径 156

8.5.2 自建CA 156

8.6 OpenLDAP与CA集成 159

8.6.1 OpenLDAP证书获取 159

8.6.2 OpenLDAP TLS/SASL部署 160

8.6.3 客户端部署 164

8.7 phpLDAPadmin加密会话认证 167

8.7.1 部署环境规划 167

8.7.2 phpLDAPadmin加密会话 168

8.8 本章总结 172

第9章 OpenLDAP同步原理及配置 173

9.1 OpenLDAP同步 174

9.1.1 OpenLDAP同步原理 174

9.1.2 syncrepl、slurpd同步机制优缺点 175

9.1.3 OpenLDAP同步条件 175

9.1.4 OpenLDAP同步参数 175

9.2 OpenLDAP的5种同步模式 176

9.2.1 syncrepl模式 176

9.2.2 N-Way Multi-Master模式 176

9.2.3 MirrorMode模式 176

9.2.4 syncrepl Proxy模式 177

9.2.5 Delta-syncrepl模式 177

9.3 OpenLDAP主从同步实战案例 177

9.3.1 部署环境 177

9.3.2 OpenLDAP服务器初始化 178

9.3.3 配置主服务器同步策略 179

9.3.4 OpenLDAP主从同步 180

9.3.5 OpenLDAP主从同步验证 184

9.4 OpenLDAP MirrorMode同步实战案例 186

9.4.1 部署环境 186

9.4.2 为OpenLDAP主服务器A部署mirrormode 186

9.4.3 为OpenLDAP主服务器B部署mirrormode 187

9.4.4 OpenLDAP mirrormode验证 188

9.5 OpenLDAP N-Way Multi-master同步实战操作 189

9.5.1 部署环境 189

9.5.2 OpenLDAP N-WayMultimaster部署 189

9.5.3 客户端验证 191

9.6 本章总结 191

第 10章 OpenLDAP负载均衡、高可用系统架构 193

10.1 负载均衡、高可用 194

10.2 LVS介绍 194

10.2.1 LVS调度算法 194

10.2.2 LVS集群工作模式 195

10.2.3 ipvsadm命令 197

10.2.4 LVS持久连接阐述 199

10.3 LVS与OpenLDAP集成案例 200

10.3.1 编译安装ipvsadm 200

10.3.2 前端负载均衡规划 201

10.3.3 后端realserver部署 202

10.3.4 客户端验证 203

10.4 realserver健康监测 204

10.4.1 定义realserver监控脚本 204

10.4.2 自动部署LVS、realserver 206

10.4.3 自动部署LVS 206

10.4.4 自动部署realserver 207

10.5 F5与OpenLDAP集成案例 208

10.5.1 部署规划 208

10.5.2 F5 Big-IP配置 208

10.5.3 客户端部署验证 211

10.5.4 realserver故障案例 211

10.6 A10 Networks与OpenLDAP集成案例 212

10.6.1 A10 Networks管理常识 213

10.6.2 部署规划 214

10.6.3 A10 Networks配置 215

10.6.4 获取集群资源 219

10.6.5 客户端验证 220

10.6.6 realserver故障案例 220

10.7 OpenLDAP开源负载高可用架构 221

10.7.1 部署规划 221

10.7.2 Keepalived部署 222

10.7.3 客户端验证 226

10.7.4 Keepalived异常检测 226

10.8 本章总结 227

第 11章 FTP与OpenLDAP集成案例 230

11.1 FTP服务器 231

11.1.1 FTP简介 231

11.1.2 FTP功能 231

11.1.3 FTP工作原理 231

11.1.4 FTP连接模式 231

11.1.5 FTP登录方式 232

11.1.6 FTP账号验证方式 232

11.2 OpenLDAP与FTP集成案例 233

11.2.1 OpenLDAP服务、FTP服务认证机制 233

11.2.2 部署规划 233

11.2.3 FTP服务端部署 234

11.2.4 客户端验证测试 236

11.2.5 配置OpenLDAP客户端 237

11.2.6 验证OpenLDAP用户登录FTP服务器 238

11.3 故障处理 240

11.3.1 500OP异常处理 240

11.3.2 用户权限控制 240

11.4 本章总结 240

第 12章 Samba与OpenLDAP集成案例 241

12.1 Samba 242

12.1.1 Samba简介 242

12.1.2 Samba软件功能模块 242

12.1.3 Samba共享资源语法 242

12.1.4 Samba服务器安全 243

12.2 Samba部署案例 243

12.2.1 Samba组件 243

12.2.2 Samba部署注意事项 244

12.2.3 部署Samba服务端 244

12.2.4 客户端验证共享资源 246

12.3 OpenLDAP与Samba集成案例 246

12.3.1 部署规划 247

12.3.2 定义Schema 248

12.3.3 Samba服务器端配置OpenLDAP验证 248

12.3.4 客户端验证 249

12.3.5 Samba扩展——OpenLDAP组访问Samba资源 251

12.4 通过LDAP Admin管理Samba账号 251

12.4.1 登录LDAP Admin 252

12.4.2 添加Samba账号 252

12.4.3 授权Samba账号 253

12.5 本章总结 253

第 13章 Zabbix与OpenLDAP集成案例 254

13.1 Zabbix 255

13.1.1 Zabbix简介 255

13.1.2 Zabbix特点 255

13.1.3 Zabbix安装部署 255

13.1.4 Zabbix配置 256

13.1.5 Zabbix初始化规划 258

13.2 Zabbix与OpenLDAP集成案例 261

13.2.1 Zabbix验证模式介绍 261

13.2.2 Zabbix基于OpenLDAP的配置参数讲解 262

13.2.3 基于Zabbix实现OpenLDAP验证实战 262

13.2.4 Zabbix用户管理 264

13.2.5 Zabbix异常案例分析 267

13.3 本章总结 268

第 14章 Apache与OpenLDAP集成验证 269

14.1 Apache 270

14.1.1 Apache介绍 270

14.1.2 Apache部署方式 270

14.1.3 Apache部署实战 270

14.1.4 客户端测试 271

14.2 OpenLDAP与Apache集成 272

14.2.1 OpenLDAP与Apache部署案例 272

14.2.2 限制OpenLDAP用户登录Apache 275

14.2.3 限制OpenLDAP组访问Apache 277

14.3 本章总结 279

第 15章 Jumpserver开源跳板机集成案例 280

15.1 Jumpserver介绍 281

15.1.1 认识Jumpserver 281

15.1.2 Jumpserver原理详解 281

15.2 Jumpserver与OpenLDAP集成案例 283

15.2.1 环境部署规划 283

15.2.2 安装epel源和依赖包 283

15.2.3 MySQL数据库部署 283

15.2.4 Jumpserver安装、部署 286

15.2.5 验证Jumpserver 290

15.3 Jumpserver管理 292

15.3.1 用户管理 292

15.3.2 资产管理 294

15.3.3 授权管理 296

15.3.4 审计管理 299

15.3.5 用户登录验证 299

15.4 本章总结 301

第 16章 OpenLDAP服务器性能优化、备份恢复、故障分析 302

16.1 OpenLDAP服务器性能优化 303

16.1.1 性能优化目标 303

16.1.2 架构调整 303

16.1.3 索引优化 303

16.1.4 数据存储优化 304

16.1.5 调整条目缓存大小 304

16.1.6 客户端参数调整 304

16.1.7 OpenLDAP服务端内核参数优化 305

16.2 OpenLDAP备份、恢复 306

16.2.1 OpenLDAP备份机制 306

16.2.2 OpenLDAP恢复机制 308

16.3 OpenLDAP服务器故障分析 308

16.3.1 网络异常,账号无法正常登录 308

16.3.2 命令执行缓慢 310

16.3.3 slapd启动异常 311

16.3.4 slaptest检测失败 311

16.3.5 OpenLDAP条目异常 312

16.3.6 OpenLDAP用户连接数过多 312

16.3.7 服务器异常断电处理 313

16.4 本章总结 313

第 17章 OpenLDAP批量部署解决方案——Puppet 314

17.1 Puppet 315

17.1.1 Puppet简介 315

17.1.2 Puppet工作流程图 315

17.1.3 Puppet如何工作 316

17.1.4 Puppet工作模型 316

17.1.5 Puppet资源 316

17.1.6 Puppet资源引用 318

17.1.7 Puppet数据类型 319

17.1.8 Puppet资源间的应用链 320

17.1.9 Puppet变量作用域 320

17.1.10 Puppet条件判断 321

17.1.11 Puppet模块、类、资源 323

17.2 Puppet服务端安装、部署 324

17.2.1 部署环境 324

17.2.2 Puppet服务器安装 324

17.2.3 故障分析 326

17.2.4 Puppet master自动签署客户端证书 327

17.3 Puppet客户端部署 328

17.3.1 Puppet agent安装 328

17.3.2 故障分析 329

17.3.3 Puppet agent证书申请 329

17.3.4 Puppet master端颁发认证 329

17.3.5 客户端修改主机名的解决方案 330

17.4 Puppet agent资源验证 330

17.4.1 Puppet服务端定义资源清单 330

17.4.2 Puppet agent验证 331

17.5 Puppet kick模块 331

17.5.1 Puppet kick功能介绍 331

17.5.2 Puppet kick部署 331

17.5.3 Puppet master验证 332

17.5.4 故障分析 333

17.6 OpenLDAP客户端自动部署解决方案——Puppet 334

17.6.1 定义OpenLDAP模板 334

17.6.2 规划OpenLDAP资源代码 334

17.6.3 客户端验证 335

17.7 本章总结 338

资源截图:

Linux UNIX OpenLDAP实战指南