windows server2016搭建AD域服务器
创始人
2025-01-20 03:02:52
0

在这里插入图片描述

文章目录

  • 一、背景
  • 二、搭建AD域服务器步骤
  • 三、生成可供java程序使用的keystore文件
  • 四、导出某用户的keytab文件
  • 五、主机配置hosts文件
  • 六、主机确认是否能ping通
  • 本人其他相关文章链接

一、背景

亲测可用,之前搜索了很多博客,啥样的都有,就是不介绍报错以及配置用处,根本不懂照抄那些配置是干啥的,稀里糊涂的按照博客搭完也跑不起来,因此记录这个。

项目背景:公司项目当前采用http协议+shiro+mysql的登录认证方式,而现在想支持ldap协议认证登录然后能够访问自己公司的项目网站。

举例说明:假设我们公司有自己的门户网站,现在我们收购了一家公司,他们数据库采用ldap存储用户数据,那么为了他们账户能登陆我们公司项目所以需要集成,而不是再把他们的账户重新在mysql再创建一遍,万一人家有1W个账户呢,不累死了且也不现实啊。

需要安装AD+kerberos,且ldap和kerberos安装在同一台服务器上,当前版本如下:

  • windows server 2016
  • 服务器IP:10.110.25.48

我公司电脑室windows10的,我是VietualBox安装的windows server 2016,类似安装个虚拟机,然后去安装AD。

二、搭建AD域服务器步骤

1.在需要安装AD域控制器的电脑上打开服务器管理器,点击添加角色和功能
在这里插入图片描述
2.打开添加角色和功能向导,点击下一步
在这里插入图片描述
3.安装类型选择基于角色或基于功能的安装,点击下一步
在这里插入图片描述
4.服务器选择从服务器池中选择服务器,再选中池中的本地服务器,点击下一步
在这里插入图片描述
5.服务器角色选择Active Directory域服务,根据提示进行安装
在这里插入图片描述
6.运行AD DS(Active Directory域服务的简称)部署向导,打开本地服务器的服务器管理器,点击通知-将此服务器提升为域控制器
在这里插入图片描述
7.打开AD DS的部署向导,由于我们这里是部署新的AD控制器,所以部署配置选择添加新林,把根域名设置成testldap.com(自定义),点击下一步
在这里插入图片描述
8.设置域密码,点击下一步
在这里插入图片描述
9.根据提示,完成配置
10.添加Active Directory 证书服务角色
在这里插入图片描述
11.选择角色服务,根据提示进行安装
在这里插入图片描述
12.配置域证书,点击通知-配置目标服务器上的Active Directory 证书服务
在这里插入图片描述
13.勾选证书颁发机构,点击下一步
在这里插入图片描述
14.指定CA的加密,默认即可。点击下一步
在这里插入图片描述
15.指定CA名称,点击下一步
在这里插入图片描述
16.指定有效期,这里设置为5年,点击下一步
在这里插入图片描述
17.指定CA数据库的位置,默认即可.点击下一步
在这里插入图片描述
18.确认证书的配置,点击配置.点击下一步
在这里插入图片描述
19.配置完成后,重启下服务器,在证书颁发机构中可以看到给域控颁发的证书
在这里插入图片描述

三、生成可供java程序使用的keystore文件

1.导出证书,供客户端连接使用,举例命名为adserver.cer
在这里插入图片描述
2.执行以下命令,使用上一步骤导出的证书文件生成供java 程序使用的keystore文件

keytool -import -trustcacerts -alias ldapssl -file adserver.cer -keystore adserver_keystore.jks 

提示输入密码时,填入指定密码:ldap@1993

四、导出某用户的keytab文件

1.在AD域服务器的服务器管理器-工具-Active Directory 用户和计算机 管理面板中新建一个测试用户testuser5
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.在AD域服务器中以管理员权限打开命令提示符程序,执行以下命令生成keytab文件

ktpass /out C:\testuser5.keytab /princ testuser5@TESTLDAP.COM /mapuser TESTLDAP\testuser5 /crypto all /ptype KRB5_NT_PRINCIPAL /pass * 

参数释义:

  • /out 后参数为keytab文件的输出路径和文件名
  • /princ kerberos主体名,测试过程可约定为 账号@域名
  • /mapuser 域账号映射
  • /crypto 加密类型,可设置为all,也可按需配置

执行命令后根据提示输入账号的密码,完成keytab文件创建。

五、主机配置hosts文件

打开C:\Windows\System32\drivers\etc\hosts文件添加内容

10.110.25.48 testldap.com 

六、主机确认是否能ping通

执行命令,如果下方两种都能ping通,则证明自己项目能访问AD域了。

# ping testldap.com 或者 # ping 10.110.25.48 

本人其他相关文章链接

1.Centos7.9安装openldap
2.Centos7.9安装kerberos
3.Openldap集成Kerberos
4.Centos7.9安装phpldapadmin
5.java连接ldap实现用户查询功能
6.java连接kerberos用户认证
7.javax.security.auth.login.LoginException: Unable to obtain password from user
8.javax.security.auth.login.LoginException: null (68)
9.javax.security.auth.login.LoginException: Message stream modified (41)
10.javax.security.auth.login.LoginException: Checksum failed
11.javax.security.auth.login.LoginException: No CallbackHandler available to garner authentication info
12.javax.security.auth.login.LoginException: Cannot locate KDC
13.javax.security.auth.login.LoginException: Receive timed out
14.java: 无法访问org.springframework.context.ConfigurableApplicationContext
15.LDAP: error code 34 - invalid DN
16.LDAP: error code 32 - No Such Object
17.java: 无法访问org.springframework.ldap.core.LdapTemplate
18.windows server2016搭建AD域服务器
19.java连接AD(Microsoft Active Directory)模拟用户登录认证

相关内容

热门资讯

Python一行代码实现文件共... 目录1. 前言2. 视频教程3. 本地文件服务器搭建3.1 python的安装和设置3.2 cpol...
debian/ubuntu/w... 文章目录前言一、服务器配置安装wireguard软件生成私钥公钥配置服务器参数配置服务器sysctl...
使用多用户增强服务器的安全性 Fedora CoreOS 操作系统 (简称 fcos) 的主要设计目标, 是大规模服务器集群 (几...
雨云香港三区2h4g服务器详细... 雨云注册:使用优惠码xls,或点击此处,注册后绑定微信可获...
web服务器解决http请求出... 场景描述我们要做一款B/S架构的产品,前端网页使用vue进行开发,后端服...
C# 结合JavaScript... 应用场景我们最近开发了一款笔迹测试功能的程序(测试版),用...
电脑数据怎么迁移?6种旧电脑数... 如今,我们拥有如此多的设备,从一个设备跳到另一个设备似乎是一项艰巨的任务...
两台服务器分别绑定一台交换机,... 如果两台服务器分别绑定在同一台交换机上,但是它们之间无法互相ping通,...
【Linux】操作系统&... 文章目录1. 冯诺依曼体系结构2. 操作系统3. 进程进程的基本概念查看进程和杀死进程父进程和子进程...
netstat命令详解 netstat命令详情一、前言二、netstat查看端口命令三、显示每个协议的统计信息四、显示核心路...