CentOS-7.2部署OpenLDAP服务器以及客户端

简介: CentOS-7.2部署OpenLDAP服务器以及客户端

一、安装与启动

1、安装与启停控制OpenLDAP

#yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap wget

在这里插入图片描述

2、启动slapd服务并设置开机启动

#systemctl start slapd
#systemctl enable slapd

在这里插入图片描述

二、配置OpenLDAP服务器以及相关服务

1、配置OpenLDAP用户认证服务

1)配置OpenLDAP服务器主机名以及FQDN域名解析

#hostnamectl set-hostname fl.fl.com //设置主机名为fl.fl.com
#echo  "fl.fl.com" >> /etc/hostname

配置域名解析

#vi /etc/hosts  //添加如下内容

在这里插入图片描述

2)生成OpenLDAP服务器全局连接密码

调用slappasswd对管理员密码进行加密

#slappasswd -s passwd000000 -n > /etc/openldap/passwd
#cat /etc/openldap/passwd

在这里插入图片描述

3)创建x509认证本地LDAP服务证书

LDAP目录服务以明文的方式在网络中传输数据和密码,不安全,所以采用TLS加密机制来处理此问题,使用openssl工具生成X509格式的证书文件(有效期365天)
使用如下命令

#openssl req -new -x509 -nodes -out /etc/openldap/certs/cert.pem -keyout /etc/openldap/certs/priv.pem -days 365

在这里插入图片描述

4)、修改LDAP证书所属组和权限

#chown -R ldap:ldap /etc/openldap/certs/*
#chmod 600 /etc/openldap/certs/priv.pem

在这里插入图片描述

5)、生成LDAP数据库并设置权限

#cp -v /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

在这里插入图片描述

#slaptest

在这里插入图片描述

#chown ldap.ldap /var/lib/ldap/DB_CONFIG

在这里插入图片描述

#slaptest 

在这里插入图片描述

6)、设置LDAP日志文件保存日志信息

#echo ‘local4.* /var/log/ldap.log’ >> /etc/rsyslog.conf
#systemctl restart rsyslog
#systemctl enable rsyslog

在这里插入图片描述

7)、安装并设置httpd服务

#yum -y install httpd

在这里插入图片描述

# cp /etc/openldap/certs/cert.pem /var/www/html/

在这里插入图片描述

#systemctl restart httpd
#systemctl enable httpd

在这里插入图片描述

测试httpd服务器是否正常工作

# wget http://fl.fl.com/cert.pem

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

8、设置防火墙和SELinux策略(若已关闭防火墙和SElinux则可忽略此步骤)

#firewall-cmd --permanent --add-service=ldap
#firewall-cmd --add-service=http --permanent

在这里插入图片描述

#firewall-cmd --reload
#setenforce 0

在这里插入图片描述

2、创建OpenLDAP用户和用户组

1)配置基础用户认证结构

# cd /etc/openldap/schema/
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f cosine.ldif

在这里插入图片描述

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f  nis.ldif

在这里插入图片描述

2)自定义LDIF文件并导入LDAP服务器

(1)创建/etc/openldap/changes.ldif文件,并配置

vi /etc/openldap/changes.ldif

//添加如下内容

dn:olcDatabase={2}hdb,cn=config
changetype:modify
replace:olcSuffix
olcSuffix:dc=fl,dc=com

dn:olcDatabase={2}hdb,cn=config
changetype:modify
replace:olcRootDN
olcRootDN:cn=Manager,dc=fl,dc=com

dn:olcDatabase={2}hdb,cn=config
changetype:modify
replace:olcRootPW
olcRootPW:{SSHA}4P124Z9SfxL+Sq6436wEMXEjki5ycDdp//此处为你之前生成的密钥

dn:cn=config
changetype:modify
replace:olcTLSCertificateFile
olcTLSCertificateFile:/etc/openldap/cert/cert.pem

dn:cn=config
changetype:modify
replace:olcTLSCertificateKeyFile
olcTLSCertificateKeyFile:/etc/openldap/cert/priv.pem

dn:cn=config
changetype:modify
replace:olcLogLevel
olcLogLevel:-1

dn:olcDatabase={1}monitor,cn=config
changetype:modify
replace:olcAccess
olcAccess:{0} to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=Manager,dc=fl,dc=com" read by * none

在这里插入图片描述

(2)将新的配置文件更新到slapd服务程序

#ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/openldap/changes.ldif

在这里插入图片描述

(3)创建/etc/openldap.base.ldif文件

vi /etc/openldap/base.ldif

#base.ldif
dn:dc=fl,dc=com
dc:fl
objectClass:top
objectClass:domain

dn:ou=People,dc=fl,dc=com
ou:People
objectClass:top
objectClass:organizationalUnit

dn:ou=Group,dc=fl,dc=com
ou:Group
objectClass:top
objectClass:organizationalUnit

在这里插入图片描述

(4)创建目录的结构服务

# ldapadd -x -W -D cn=Manager,dc=fl,dc=com -f /etc/openldap/base.ldif 

在这里插入图片描述

3、创建Linux本地用户和本地用户组

# mkdir /home/guests
# useradd -d /home/guests/ldap1 ldapuser1
# passwd ldapuser1

在这里插入图片描述

4、迁移本地账号为LDAP账号

1)安装并设置migrationtools

# yum -y install migrationtools

在这里插入图片描述

# vi /usr/share/migrationtools/migrate_common.ph 

修改71行和74行,注释掉原有内容,添加如下内容

$DEFAULT_MAIL_DOMAIN = "fl.com";
$DEFAULT_BASE = "dc=fl,dc=com";

在这里插入图片描述

2)将当前系统中的用户迁移至目录服务

# cd /usr/share/migrationtools/
# grep ":10[0-9][0-9]" /etc/passwd > passwd
# ./migrate_passwd.pl passwd users.ldif
# ldapadd -x -w passwd000000 -D cn=Manager,dc=fl,dc=com -f users.ldif 

在这里插入图片描述

3)将当前系统中的用户组迁移至目录服务

# grep ":10[0-9][0-9]" /etc/group > group
# ./migrate_group.pl group groups.ldif
# ldapadd -x -w passwd000000 -D cn=Manager,dc=fl,dc=com -f groups.ldif

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

5、测试LDAP用户配置文件

# ldapsearch -x cn=ldapuser1 -b dc=fl,dc=com

在这里插入图片描述

#cat /etc/passwd |grep ldapuser

id ldapuser1

在这里插入图片描述

三、配置OpenLDAP客户端及相关服务

请准备另一台虚拟机,作为客户端,保证2台虚拟机在同一网段中

1、配置LDAP客户端

1)配置客户端IP和域名解析

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改静态IP地址为 192.168.100.21
在这里插入图片描述
在这里插入图片描述

vi /etc/hosts

在这里插入图片描述

测试 ping fl.fl.com
在这里插入图片描述

2)安装客户端所需软件包

# yum -y install openldap-clients nss-pam-ldapd authconfig-gtk pam_krb5

在这里插入图片描述

3)运行并设置客户端认证工具

(①以GUI GNOME为例)

以下二选一 ①或②

# system-config-authentication

在这里插入图片描述
在这里插入图片描述
然后单击【下载CA证书】按钮,在弹出的框内,填写服务器上的证书地址
在这里插入图片描述
在这里插入图片描述
配置认证

#authconfig --enableldap --enableldapauth --ldapserver="fl.fl.com" --ldapbasedn="dc=fl,dc=com" --update
#authconfig --enableldaptls --update

在这里插入图片描述

#cd /etc/openldap/cacerts
#wget http://fl.fl.com/cert.pem

②若您不是GNOME界面,也可使用如下命令进行操作,以命令界面为例

修改配置文件
1、/etc/nsswitch.conf 配置文件
33-35行修改为如下内容
在这里插入图片描述
58行
在这里插入图片描述

62行
在这里插入图片描述
配置认证

#authconfig --enableldap --enableldapauth --ldapserver="fl.fl.com" --ldapbasedn="dc=fl,dc=com" --update
#authconfig --enableldaptls --update

在这里插入图片描述

authconfig-tui

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

4)验证是否可用LDAP全局账号

# id  ldapuser1

在这里插入图片描述

2、挂载LDAP用户目录客户端,请在服务器端进行操作

1)在LDAP服务器上配置NFS服务

安装NFS服务

# yum -y install  nfs-utils  rpcbind

在这里插入图片描述

vi /etc/exports

/home/guests/ldap1 192.168.100.20(rw,sync,root_squash)

在这里插入图片描述

systemctl restart nfs-server rpcbind //重启nfs-server和rpcbind服务

#systemctl enable nfs-server rpcbind

在这里插入图片描述

showmount -e 192.168.100.20 //显示NFS服务端的共享列表

在这里插入图片描述
2)在LDAP客户机上设置自动挂载
(1)修改/home目录权限
chmod 1777 /home/
在这里插入图片描述

(2)手动挂载LDAP用户主目录到客户端

#showmount  -e  192.168.100.20

在这里插入图片描述

#mkdir /home/guests/ldap1 -p //创建本地挂载点,作为LDAP账号的主目录。
#mount -t nfs fl.fl.com:/home/guests/ldap1  /home/guests/ldap1

在这里插入图片描述

#su  - ldapuser1     //再次尝试切换到ldapuser1用户

在这里插入图片描述

(3)设置开机自动挂载LDAP用户主目录

vi /etc/fstab

192.168.100.20:/home/guests/ldap1 /home/guests/ldap1 nfs defaults 0 0 //增加的配置行
在这里插入图片描述

目录
相关文章
|
3月前
|
安全 Linux Shell
使用SCP命令在CentOS 7上向目标服务器传输文件
以上步骤是在CentOS 7系统上使用SCP命令进行文件传输的基础,操作简洁,易于理解。务必在执行命令前确认好各项参数,尤其是目录路径和文件名,以避免不必要的传输错误。
296 17
|
5月前
|
Linux 应用服务中间件 nginx
在CentOS上部署Minikube教程
至此,您已成功在CentOS上部署并使用Minikube。您可以自由探索Kubernetes的世界,熟练配置和管理Kubernetes集群。
455 20
|
5月前
|
Kubernetes Ubuntu Linux
阿里云服务器使用centos还是ubuntu?
在选择阿里云服务器操作系统时,CentOS和Ubuntu各有优势。CentOS以企业级稳定性著称,适合数据库、ERP等长期稳定需求;而Ubuntu开发者友好,支持最新硬件与功能,更适合开发/测试环境及云计算场景。两者在阿里云上均有官方镜像支持,性能差异可忽略。无特殊需求时推荐Ubuntu 22.04 LTS,若需RHEL生态则选AlmaLinux。根据实际需求、团队技术栈及场景灵活决策,阿里云还支持更换系统盘降低试错成本。
|
7月前
|
存储 安全 Linux
CentOS 7.9系统备份:每日定期发送最新备份文件到另一台服务器。
注意,这个解决方案忽略了很多细节,例如错误处理和通知、备份版本控制、循环处理旧的备份文件等等。此外,你也应该尽量保持源服务器和目标服务器之间快速,稳定且安全的网络连接,并且目标服务器应该有足够的空间用于存放每天的备份文件。如果你需要更高级的备份解决方案,可能需要考虑一下使用专门的备份工具或者服务。
276 18
|
6月前
|
人工智能 搜索推荐 程序员
用 Go 语言轻松构建 MCP 客户端与服务器
本文介绍了如何使用 mcp-go 构建一个完整的 MCP 应用,包括服务端和客户端两部分。 - 服务端支持注册工具(Tool)、资源(Resource)和提示词(Prompt),并可通过 stdio 或 sse 模式对外提供服务; - 客户端通过 stdio 连接服务器,支持初始化、列出服务内容、调用远程工具等操作。
1474 4
|
7月前
|
存储 运维 网络协议
【Syslog】Centos下的syslog服务器配置
通过本文的配置指导,您不仅学会了如何安装和配置 `rsyslog`,还掌握了如何在防火墙中开放必要的端口,并验证服务器的配置是否正确。希望这些知识能够帮助您更好地管理和维护您的Linux系统。
1036 15
|
2月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
492 69
|
14天前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
327 2
|
2月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
265 78

热门文章

最新文章