Samba4集成LDAP详细安装及配置

简介:

近期公司的项目组给我们提需求,让我们搭建几套打印机测试环境,测试打印机的bug,环境分别为:1.windows2012 LDAP的匿名、SSL(636)、kerbors。2.Samba4集成的LDAP服务的匿名、SSL(636)、kerbors。3domino9.0.1FP3的LDAP服务的匿名、SSL(636)、kerbors服务。花了一些时间搭建完成了,所以分享给有需求的参考。其实对于以上提到的服务相信大家都已经很熟悉了。大概思路讲解:windows LDAP顾名思义就是Microsoft的Active Directory服务,安装完除了匿名其他服务均可以默认访问的,如果需要开启匿名,需要通过Adsiedit编辑配置AD配置来完成。SSL(636的话,我们可以安装CA服务器来提供证书的申请及办法)。Domino服务跟windows LDAP、SAMBA4其实跟windows的操作大同小异,具体见下:

我们首先说说Samba4集成的LDAP服务吧。说到samba大家应该都很熟悉,最早是实现windows和linux之间的文件共享。自升级到4.0版本就集成了LDAP协议。

参考链接:https://wiki.samba.org/index.php/Samba_AD_DC_HOWTO ;

https://wiki.samba.org/index.php/Main_Page

clip_image002

clip_image004

介绍完后,我们就可以开始部署了

Server Information

Below, we will be using the following configuration/settings:

Installation Directory: /usr/local/samba/   
AD DC Hostname: Samba4    
AD DNS Domain Name: Samba4.iternalsoft.com    
Kerberos Realm: Samba4.iternalsoft.com    
NT4 Domain Name/NetBIOS Name: Samba4    
IP Address: 192.168.6.163    
Server Role: Domain Controller (DC)    
Domain Admin Password: 123456    
Forwarder DNS Server: 192.168.6.163

Os: Centos6.4

再次我们准备在线下载安装包,在线下载的话,我们需要用到wget组件进行在线下载。

所以我们需要安装wget组件。

下载地址:开始下载安装

https://wiki.samba.org/index.php/Binary_Distribution_Packages#CentOS_6

Yum install –y wget

然后使用wget downloadlinks下载即可

Wget https://download.samba.org/pub/samba/stable/samba-4.2.1.tar.gz

clip_image006

Ls 查看下载的文件

clip_image008

Samba4下载成功后,我们在安装samba4前需要做一些准备工作。比如安装依赖包及卸载系统自带的低版本。在此我们先通过rpm来查看系统再带的低版本samba

Rpm -qa | grep samba

clip_image010

我们需要通过以下命令来卸载系统自带的低版本samba程序

yum remove samba-winbind-client samba-common samba-client

clip_image012

卸载后,可以通过 rpm -qa | grep samba进行确认

clip_image014

接下来安装samba4依赖包,不然samba4无法编译通过安装

yum install perl gcc libacl-devel libblkid-devel gnutls-devel \   
readline-devel python-devel gdb pkgconfig krb5-workstation \    
zlib-devel setroubleshoot-server libaio-devel \    
setroubleshoot-plugins policycoreutils-python \    
libsemanage-python setools-libs-python setools-libs \    
popt-devel libpcap-devel sqlite-devel libidn-devel \    
libxml2-devel libsepol-devel libattr-devel \    
keyutils-libs-devel cyrus-sasl-devel cups-devel bind-utils \    
libxslt docbook-style-xsl openldap-devel

依赖包安装完成

clip_image016

接下来就是开始编译安装了。我们首先查看下载的文件。

ls

clip_image018

然后解压,编译安装

Tar zxvf samba-4.2.1.tar.gz

然后ls进入解压目录,进行编译安装

clip_image020

./configure

clip_image022

make

clip_image024

Make install

clip_image026

# vim ~/.bash_profile 添加环境变量

在PATH 后边添加:/usr/local/samba/bin:/usr/local/samba/sbin

clip_image028

#source ~/.bash_profile

# echo $PATH 查看是否添加成功。

clip_image030

设置hosts

clip_image032

https://wiki.samba.org/index.php/Samba_AD_DC_HOWTO

Cd /usr/local/samba/etc

samba-tool domain provision --use-rfc2307 –interactive

按照提示完成操作

clip_image034

如果测试不成功,vim /etc/reslov.conf 添加以下格式的域名解析即可

Domain test.com

最后运行samba启动samba服务就可以了

clip_image036

最后netstat -anlpt

clip_image038

服务启动了,怎么测试呢?

smbclient -L localhost -U%

clip_image040

smbclient //localhost/netlogon -UAdministrator -c 'ls'

clip_image042

我们最后需要通过真实的client加域进行测试

最后我们需要将client加域然后测试

clip_image044

clip_image046

使用域用户登陆

clip_image048

然后我们为了方便管理该域,安装ADDS管理工具

clip_image050

然后我们连接域控制器,新建用户

clip_image052

添加邮件地址

clip_image054

通过测试工具测试 simple

clip_image056

clip_image058

然后单击ok即可进行连接测试,最后的结果是连接失败,如果我们新建一个测试账户就可以连接,使用系统自带的administrator就无法正常连接。那如果新建测试账户呢,在此我们需要应用到windows 管理工具进行连接。通过新创建的账户进行测试完成。

clip_image060

接下来我们需要为samba4的LDAP服务配置匿名,默认SAMBA4的LDAP匿名是关闭的,我们可以通过以下方法开启匿名,我们通过windows 系统自带组件的ADSI工具连接进行编辑配置。

https://technet.microsoft.com/zh-cn/library/cc816788(WS.10).aspx

Click Start, point to Administrative Tools, and then click ADSI Edit.

选择-----配置

clip_image062

In the console tree, double-click the configuration directory partition (CN=Configuration,CN={GUID}), double-click the services container (CN=Services), double-click the Windows NT container (CN=Windows NT), right-click the directory service container (CN=Directory Service), and then click Properties.

clip_image064

1.In Attributes, click dsHeuristics, and then click Edit.

2.In Value, modify the value of the seventh character in the attribute (counting from the left) to 2, as follows:   
0000002001001

clip_image066

dsHeuristics===0000002001001

clip_image068

最后单击确认即可。然后我们通过测试工具进行测试

clip_image070

接下来我们要配置samba4的kerbors服务

In CentOS 6.3 or 6.4, kerberos is handled by the '/etc/krb5.conf' file. Make a backup copy of this original file, and then replace the existing file, if any, with the sample from /usr/local/samba/share/setup/krb5.conf.

# cp /usr/local/samba/share/setup/krb5.conf /etc/krb5.confEdit the file and replace ${REALM} with the value you chose for the '--realm' parameter of the provision command earlier, make sure to enter the realm in uppercase letters. It should look something like this:

# cat /etc/krb5.conf

[libdefaults]

default_realm = MYDOMAIN.COM

dns_lookup_realm = false

dns_lookup_kdc = true

首先备份

clip_image072

cp /usr/local/samba/share/setup/krb5.conf /etc/krb5.conf

clip_image074

然后vim /etc/krb5.conf 确认一下三行就可以了

clip_image076

nslookup

Set type=srv

> _ldap._tcp.beyond.com

Server:                192.168.6.165

Address:        192.168.6.165#53

clip_image077

_ldap._tcp.beyond.com        service = 0 100 389 dc.beyond.com.

clip_image078

clip_image080

我们通过kinit工具测试kerbors是否运行正常,通过以下结果看出就是正常的

Kinit administrator@BEYOND.COM

clip_image082

最后我们进行测试

clip_image084

clip_image086

clip_image088

最后我们要说说samba4的LDAP服务的SSL,在window上我们需要安装一个ca服务器,再次我们也是一样

Mkdir certs

Cd certs

/etc/pki/tls/misc/CA -newca

clip_image090

clip_image092

Cd /etc/pki/CA/

Openssl x509 -in cacert.pem -days 3650 -out cacert.pem -signkey ./private/cakey.pem

clip_image094

Cd /root/certs/

/etc/pki/tls/misc/CA -newreq

clip_image096

/etc/pki/tls/misc/CA -sign

clip_image098

clip_image100

clip_image102

Newcert.pem 位证书文件

Newkey.pem为证书秘钥文件

/etc/pki/CA/目录下的cacert.pem为CA证书

clip_image103

clip_image105证书申请及配置

https://wiki.samba.org/index.php/Setup_LDAPS_on_a_DC

Cd /usr/local/samba/private/tls/

clip_image107

Cd ..

Cd /usr/local/samba/etc

clip_image109

Vim smb.conf

tls enabled = yes   
tls keyfile = tls/key.pem    
tls certfile = tls/cert.pem    
tls cafile = tls/ca.pem

clip_image111

clip_image113

clip_image115



本文转自 高文龙 51CTO博客,原文链接:http://blog.51cto.com/gaowenlong/1657005,如需转载请自行联系原作者

相关文章
|
6月前
|
SQL Java 关系型数据库
Dataphin功能Tips系列(53)-离线集成任务如何合理配置JVM资源
本文探讨了将MySQL数据同步至Hive时出现OOM问题的解决方案。
168 5
|
8月前
|
缓存 Java API
微服务——SpringBoot使用归纳——Spring Boot集成 Swagger2 展现在线接口文档——Swagger2 的配置
本文介绍了在Spring Boot中配置Swagger2的方法。通过创建一个配置类,添加`@Configuration`和`@EnableSwagger2`注解,使用Docket对象定义API文档的详细信息,包括标题、描述、版本和包路径等。配置完成后,访问`localhost:8080/swagger-ui.html`即可查看接口文档。文中还提示了可能因浏览器缓存导致的问题及解决方法。
1018 0
微服务——SpringBoot使用归纳——Spring Boot集成 Swagger2 展现在线接口文档——Swagger2 的配置
|
4月前
|
IDE Ubuntu Java
在Ubuntu18.04安装兼容JDK 8的Eclipse集成开发环境的指南。
完成以上步骤后,您将在Ubuntu 18.04系统上成功安装并配置了Eclipse IDE,它将与JDK 8兼容,可以开始进行Java开发工作。如果遇到任何问题,请确保每一步骤都正确执行,并检查是否所有路径都与您的具体情况相匹配。
215 11
|
4月前
|
物联网 Linux 开发者
快速部署自己私有MQTT-Broker-下载安装到运行不到一分钟,快速简单且易于集成到自己项目中
本文给物联网开发的朋友推荐的是GMQT,让物联网开发者快速拥有合适自己的MQTT-Broker,本文从下载程序到安装部署手把手教大家安装用上私有化MQTT服务器。
1345 5
|
6月前
|
JSON JavaScript API
MCP 实战:用配置与真实代码玩转 GitHub 集成
MCP 实战:用配置与真实代码玩转 GitHub 集成
1500 4
|
7月前
|
缓存 前端开发 API
(网页系统集成CAD功能)在线CAD中配置属性的使用教程
本文介绍了Mxcad SDK在线预览和编辑CAD图纸的功能及配置方法。通过Vite、CDN或Webpack实现集成,用户可自定义设置以满足项目需求。主要内容包括:1)`createMxCad()`方法的初始属性配置,如画布ID、WASM文件路径、字体加载路径等;2)`MxFun.setIniset()`方法提供的更多CAD初始配置;3)`McObject`对象API用于动态调整视图背景色、浏览模式等。此外,还提供了在线Demo(https://demo2.mxdraw3d.com:3000/mxcad/)供用户测试实时效果。
|
8月前
|
消息中间件 存储 Java
微服务——SpringBoot使用归纳——Spring Boot中集成ActiveMQ——ActiveMQ安装
本教程介绍ActiveMQ的安装与基本使用。首先从官网下载apache-activemq-5.15.3版本,解压后即可完成安装,非常便捷。启动时进入解压目录下的bin文件夹,根据系统选择win32或win64,运行activemq.bat启动服务。通过浏览器访问`http://127.0.0.1:8161/admin/`可进入管理界面,默认用户名密码为admin/admin。ActiveMQ支持两种消息模式:点对点(Queue)和发布/订阅(Topic)。前者确保每条消息仅被一个消费者消费,后者允许多个消费者同时接收相同消息。
285 0
微服务——SpringBoot使用归纳——Spring Boot中集成ActiveMQ——ActiveMQ安装
|
9月前
|
Cloud Native Java Nacos
springcloud/springboot集成NACOS 做注册和配置中心以及nacos源码分析
通过本文,我们详细介绍了如何在 Spring Cloud 和 Spring Boot 中集成 Nacos 进行服务注册和配置管理,并对 Nacos 的源码进行了初步分析。Nacos 作为一个强大的服务注册和配置管理平台,为微服务架构提供
3976 14
|
8月前
|
NoSQL Java Redis
微服务——SpringBoot使用归纳——Spring Boot 中集成Redis——Redis 安装
本教程介绍在 VMware 虚拟机(CentOS 7)或阿里云服务器中安装 Redis 的过程,包括安装 gcc 编译环境、下载 Redis(官网或 wget)、解压安装、修改配置文件(如 bind、daemonize、requirepass 等设置)、启动 Redis 服务及测试客户端连接。通过 set 和 get 命令验证安装是否成功。适用于初学者快速上手 Redis 部署。
238 0
|
8月前
|
Java 数据库连接 数据库
微服务——SpringBoot使用归纳——Spring Boot集成MyBatis——MyBatis 介绍和配置
本文介绍了Spring Boot集成MyBatis的方法,重点讲解基于注解的方式。首先简述MyBatis作为持久层框架的特点,接着说明集成时的依赖导入,包括`mybatis-spring-boot-starter`和MySQL连接器。随后详细展示了`properties.yml`配置文件的内容,涵盖数据库连接、驼峰命名规范及Mapper文件路径等关键设置,帮助开发者快速上手Spring Boot与MyBatis的整合开发。
1118 0

热门文章

最新文章