作者:独笔孤行

官网:​​ ​http://anyamaze.com​​

公众号:云实战

前言

AD域(Active Directory)是Windows服务器的活动目录,在目录中可以收录公司的电脑账号,用户账号,组等信息,以提供更好的安全性和更便捷的管理能力。域的最大好处之一就是其安全性 – 所有账号不会在本地计算机认证,而是连接到域控制器寻求认证。

CentOS7加入AD域的方法很多,常用的有winbind和realm两种。winbind是一种成熟的方案,兼容多种操作系统版本,但配置步骤繁琐复杂,且易出错。realm是一种非常简便的配置方案,在新版本系统中使用较多,在centos6和更低版本系统使用较少。

一、环境信息

AD域信息

域名:anyamaze.com

主机名:myad

IP : 192.168.111.137

系统版本:windows server 2016

linux客户端信息

主机名:mynode1.anyamaze.com

IP: 192.168.111.141

二、安装过程

(一)AD域服务器部署

1.部署windows Server2016操作系统

2.选择“服务器管理器—管理—添加角色和功能—基于角色或基于功能的安装—Active Directory域服务”根据提示依次安装

3.修改主机名,将服务器提示为域控服务器

(二)CentOS7加入域配置

1.安装相关包

yum install -y samba samba-common samba-client samba-winbind* krb5-workstation ntp bind-utils

2.设置服务开机自启动

systemctl enable smb
systemctl enable winbind

3.设置主机名

hostnamectl set-hostname mynode1.anyamaze.com

4.配置域名解析

192.168.111.137 myad myad.anyamaze.com
192.168.111.141 mynode1 mynode1.anyamaze.com

5.配置DNS解析

配置网卡DNS解析,解析地址为AD域服务器IP,如需其它DNS,可放在AD域服务器IP之后

vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
...
DNS1=192.168.111.137 #重启网卡,使配置生效
systemctl restart network

检查/etc/resolv.conf文件内容

vim /etc/resolv.conf
search anyamaze.com
nameserver 192.168.111.137

需确保resolve.conf文件DNS解析内容为AD域服务器,如果需要其它DNS,可向后追加。

检测解析是否生效

ping anyamaze.com
nslookup anyamaze.com

注意:确保ping的返回ip为AD域服务器ip,确保nslookup解析域名的服务器IP是AD域服务器IP。如果ping不通域名或解析的地址不是AD域服务器IP,需要检查DNS是否正确,检查AD域服务器防火墙是否关闭。

6.修改配置文件

vi /etc/nsswitch.conf
...
passwd: files winbind sss
shadow: files winbind sss
group: files winbind sss

配置内容加入winbind,且winbind在sss之前

7.修改/etc/krb5.conf

[libdefaults]
......
default_realm = ANYAMAZE.COM
......
[realms]
ANYAMAZE.COM = {
kdc = 192.168.111.137
}
[domain_realm]
anyamaze.com = ANYAMAZE.COM
.anyamaze.com = ANYAMAZE.COM

8.修改/etc/samba/smb.conf

[global]
workgroup = ANYAMAZE
password server = myad.anyamaze.com
realm = ANYAMAZE.COM
security = ads
idmap config * : range = 16777216-33554431
template shell = /bin/bash
kerberos method = secrets only
winbind use default domain = false
winbind offline logon = false
encrypt passwords = yes
winbind enum users = yes
winbind enum groups = yes
template homedir = /home/%U

global中必须保证以上参数内容配置正确,其它参数可保持默认配置。如果linux系统有图形化界面,也可通过setup命令,完成步骤7和步骤8的配置内容,效果一样。

检查配置是否正确

testparm /etc/samba/smb.conf

9.编辑文件/etc/pam.d/system-auth和/etc/pam.d/password-auth,尾部追加session required pam_mkhomedir.so 内容

vi /etc/pam.d/system-auth
......
session required pam_mkhomedir.so vi /etc/pam.d/password-auth
......
session required pam_mkhomedir.so

10.加入AD域

net ads join -U administrator

输入正确的administrator用户密码

11.重启服务

systemctl restart smb
systemctl restart winbind

12.查看是否加入域成功

wbinfo -t

返回结果为checking the trust secret for domain ANYAMAZE via RPC calls succeeded说明加入域成功

加入成功后,去AD域服务器可查到到刚刚加入域的机器

13.常规域指令

# 查看域信息
net ads info
# 查看域连接状态
wbinfo -t
# 查看域组
wbinfo -g
# 查看域用户
wbinfo -u
#查看域用户属性id
id user1@anyamaze.com

(三)常见报错:

报错内容1:

[root@mynode1 ~]# id user1
id: user1: no such user
[root@mynode1 ~]# id user1@anyamaze.com
id: user1@anyamaze.com: no such user

原因:1.通过wbinfo -t检查是否加入域成功;2.AD域用户没有配置uid和gid,主组没有配置gid,需要去AD域上进行配置

报错内容2:

[root@mynode1 ~]# net ads join -U administrator
Enter administrator's password:
Using short domain name -- ANYAMAZE
Joined 'MYNODE1' to dns domain 'anyamaze.com'
No DNS domain configured for mynode1. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER

原因:DNS更新失败,但不影响使用,可以加--no-dns-updates屏蔽,如:net ads join -U administrator --no-dns-updates。

关于原因官网 https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Domain_Member 有详细解释,但是按照官网的信息调整hosts后,依然没有达到效果。

报错内容3:

[root@mynode1 ~]# wbinfo -t
could not obtain winbind interface details: WBC_ERR_WINBIND_NOT_AVAILABLE
could not obtain winbind domain name!
checking the trust secret for domain (null) via RPC calls failed
failed to call wbcCheckTrustCredentials: WBC_ERR_WINBIND_NOT_AVAILABLE
Could not check secret

原因:加入域失败,按照操作步骤检查dns解析以及相关配置过程

报错内容4:

[root@mynode1 ~]# net ads leave -U administrator
Enter administrator's password:
kinit succeeded but ads_sasl_spnego_gensec_bind(KRB5) failed for ldap/myad.anyamaze.com with user[administrator] realm[ANYAMAZE.COM]: An invalid parameter was passed to a service or function.
Deleted account for 'MYNODE1' in realm 'ANYAMAZE.COM'

原因:linux和AD域服务器时间相差较大,必须保证linux客户端和AD域时间一致

参考连接:

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

https://www.freesion.com/article/44621398696/

https://www.server-world.info/en/

更多咨询,关注我们

CentOS7加入AD域(winbind)的更多相关文章

  1. CentOS7添加入windows2008的AD域

    采用域控对用户权限进行限制的时候,经常会出现需要将linux加入windows域,毕竟windows的AD域超级强大.用户名可以由windows进行统一管理,方便办公使用.下面简单介绍如何进行配置. ...

  2. freeradius整合AD域作anyconncet认证服务器

    一.服务器要求 Radius服务器:centos6.6.hostname.selinux  disabled.stop iptables AD域服务器:Windows Server 2008 R2 E ...

  3. Windows 的 AD 域寄生于 Linux 机器

    导读 对于帐户统一管理系统或软件来说,在 Linux 下你可能知道 NIS.OpenLDAP.samba 或者是 RedHat.IBM 的产品,在 Windows 下当然就是最出名的活动目录 (AD) ...

  4. Samba通过ad域进行认证并限制空间大小《转载》

    本文实现了samba服务被访问的时候通过windows域服务器进行用户名和密码验证;认证通过的用户可以自动分配500M的共享空间;在用户通过windows域登陆系统的时候可以自动把这块空间映射成一块硬 ...

  5. windows AD域安装及必要设置

    一.安装AD域 运行dcpromo命令,安装AD域. 步骤: 1.win+R 2.dcpromo 图例: 百度百科关于“dcpromo”解释: dcpromo命令是一个“开关”命令.如果Windows ...

  6. Samba通过ad域进行认证并限制空间大小

    最近正在做单位电脑的AD域管理. 为漫游用户文件,研究配置Samba通过ad域进行认证并限制空间大小. 参考了很多资料,现总结如下: DC:windows server 2016(配置安装域控制器)略 ...

  7. 如何查看/统计当前AD域控制器的活动用户?

    最近公司想知道某台AD域控制器上当前连接了多少活动用户? 此前个人只知道以下不是非常完善且统计起来比较麻烦的方法: 方法1:查看共享会话数.(不完全准确) 方法2:查看当前的DNS记录.(这种方法统计 ...

  8. AD域-让共享目录只显示用户有权限访问的文件夹

    问题: 在AD域中,我们一般都会用到共享,如果有很多部门,我们可能还会按部门.职位配置权限.比如CSD,IT,PA等,但文件夹一多,用户看着就头大,而且用户没权限访问的文件夹误点击进去还会提示无权限访 ...

  9. AD域的安装(在Windows Server 2003中安装Active Directory)

    在Active Directory中提供了一组服务器作为身份验证服务器或登录服务器,这类服务器被称作域控制器(Domain Controller,简称DC).建立一个AD域的过程实际就是在一台运行Wi ...

  10. AD域内DNS服务器如何解析公网域名

    原创地址:http://www.cnblogs.com/jfzhu/p/4022999.html 转载请注明出处 AD域内需要有DNS服务器,用于解析域内的计算机名,但是域内的计算如何解析公网的域名呢 ...

随机推荐

  1. Java语言进阶 day02【Collection、泛型】

    主要内容 Collection集合 迭代器 增强for 泛型 教学目标

  2. 【数据库】union和union all合并结果操作

    一.含义 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的 ...

  3. Kubernetes(k8s)存储管理之数据卷volumes(二):hostPath数据卷

    目录 一.系统环境 二.前言 三.hostPath数据卷 3.1 hostPath数据卷概览 3.2 创建有hostPath卷的pod 一.系统环境 服务器版本 docker软件版本 Kubernet ...

  4. uniapp解析后端返回的html标签

    <rich-text  :nodes="data.content"></rich-text>

  5. react 高效高质量搭建后台系统 系列 —— 脚手架搭建

    其他章节请看: react 高效高质量搭建后台系统 系列 脚手架搭建 本篇主要创建新项目 myspug,以及准备好环境(例如:安装 spug 中用到的包.本地开发和部署.自定义配置 react-app ...

  6. 利用Redisson实现订单关闭

    实体类 为了方便测试,直接在测试类中的写内部类: @Data @AllArgsConstructor @NoArgsConstructor public class OrderInfo { /** * ...

  7. Vue中实现自定义excel下载

    目录 第一种:后端生成excel 第二种:前端合成excel 总结 参考资料 最近在工作中遇到一个需求,就是需要在前端实现一个错误模板Excel的下载功能. 实现下载有两种方式,一种是后端生成一个ex ...

  8. CFS三层内网靶场

    前言 最近学习了内网的一些知识,想着打一下靶场来试试,选择了这个CFS的三层内网靶场,做一下记录 靶场下载地址   链接:https://pan.baidu.com/s/1zGw5VNt222nCmf ...

  9. 腾讯出品小程序自动化测试框架【Minium】系列(四)API详解(上)

    写在前面 不知道是不是因为之前出过书的原因,在写教程之类的文章,会潜意识有自带目录和章节的感觉在里面,有点说不出的感觉吧. 上篇文章我们介绍了关于元素定位的使用方法,这篇文章将为大家分享关于Miniu ...

  10. 04HDFS简介

    HDFS简介 一.什么是HDFS HDFS全称是Hadoop Distributed File System,简称HDFS.这是一个分布式文件系统,当数据规模大小超过一台物理计算机的存储能力时,就有必 ...