网易首页 > 网易号 > 正文 申请入驻

Samba 系列(十五):用 SSSD 和 Realm 集成 Ubuntu 到 Samba4 AD DC

0
分享至

本文导航 要求: 01% 第 1 步:初始配置 02% 第 2 步:安装需要的包 14% 第 3 步: 加入 Ubuntu 到 Samba4 Realm 42% 第 4 步:配置 AD 账户认证 58% 编译自 | https://www.tecmint.com/integrate-ubuntu-to-samba4-ad-dc-with-sssd-and-realm/
 作者 | Matei Cezar
 译者 | XYenChi

本教程将告诉你如何将 Ubuntu 桌面版机器加入到带有 SSSD 和 Realm 服务的 Samba4 活动目录域中,以在活动目录中认证用户。

要求:

☉ 在 Ubuntu 上用 Samba4 创建一个活动目录架构 [1]

第 1 步:初始配置

1、 在把 Ubuntu 加入活动目录前确保主机名被正确设置了。使用 hostnamectl 命令设置机器名字或者手动编辑 /etc/hostname 文件。

  1. $ sudo hostnamectl set-hostname your_machine_short_hostname

  2. $ cat /etc/hostname

  3. $ hostnamectl

2、 接下来,编辑机器网络接口设置并且添加合适的 IP 设置,并将正确的 DNS IP 服务器地址指向 Samba 活动目录域控制器,如下图所示。

如果你已经配置了 DHCP 服务来为局域网机器自动分配包括合适的 AD DNS IP 地址的 IP 设置,那么你可以跳过这一步。

设置网络接口

上图中,192.168.1.254192.168.1.253 代表 Samba4 域控制器的 IP 地址。

3、 用 GUI(图形用户界面)或命令行重启网络服务来应用修改,并且对你的域名发起一系列 ping 请求来测试 DNS 解析如预期工作。 也用 host 命令来测试 DNS 解析。

  1. $ sudo systemctl restart networking.service

  2. $ host your_domain.tld

  3. $ ping -c2 your_domain_name

  4. $ ping -c2 adc1

  5. $ ping -c2 adc2

4、 最后, 确保机器时间和 Samba4 AD 同步。安装 ntpdate 包并用下列指令和 AD 同步时间。

  1. $ sudo apt-get install ntpdate

  2. $ sudo ntpdate your_domain_name

第 2 步:安装需要的包

5、 这一步将安装将 Ubuntu 加入 Samba4 活动目录域控制器所必须的软件和依赖:Realmd 和 SSSD 服务。

  1. $ sudo apt install adcli realmd krb5-user samba-common-bin samba-libs samba-dsdb-modules sssd sssd-tools libnss-sss libpam-sss packagekit policykit-1

6、 输入大写的默认 realm 名称,然后按下回车继续安装。

输入 Realm 名称

7、 接着,创建包含以下内容的 SSSD 配置文件。

  1. $ sudo nano /etc/sssd/sssd.conf

加入下面的内容到 sssd.conf 文件。

  1. [nss]

  2. filter_groups = root

  3. filter_users = root

  4. reconnection_retries = 3

  5. [pam]

  6. reconnection_retries = 3

  7. [sssd]

  8. domains = tecmint.lan

  9. config_file_version = 2

  10. services = nss, pam

  11. default_domain_suffix = TECMINT.LAN

  12. [domain/tecmint.lan]

  13. ad_domain = tecmint.lan

  14. krb5_realm = TECMINT.LAN

  15. realmd_tags = manages-system joined-with-samba

  16. cache_credentials = True

  17. id_provider = ad

  18. krb5_store_password_if_offline = True

  19. default_shell = /bin/bash

  20. ldap_id_mapping = True

  21. use_fully_qualified_names = True

  22. fallback_homedir = /home/%d/%u

  23. access_provider = ad

  24. auth_provider = ad

  25. chpass_provider = ad

  26. access_provider = ad

  27. ldap_schema = ad

  28. dyndns_update = true

  29. dyndsn_refresh_interval = 43200

  30. dyndns_update_ptr = true

  31. dyndns_ttl = 3600

确保你对应地替换了下列参数的域名:

  1. domains = tecmint.lan

  2. default_domain_suffix = TECMINT.LAN

  3. [domain/tecmint.lan]

  4. ad_domain = tecmint.lan

  5. krb5_realm = TECMINT.LAN

8、 接着,用下列命令给 SSSD 配置文件适当的权限:

  1. $ sudo chmod 700 /etc/sssd/sssd.conf

9、 现在,打开并编辑 Realmd 配置文件,输入下面这行:

  1. $ sudo nano /etc/realmd.conf

realmd.conf 文件摘录:

  1. [active-directory]

  2. os-name = Linux Ubuntu

  3. os-version = 17.04

  4. [service]

  5. automatic-install = yes

  6. [users]

  7. default-home = /home/%d/%u

  8. default-shell = /bin/bash

  9. [tecmint.lan]

  10. user-principal = yes

  11. fully-qualified-names = no

10、 最后需要修改的文件属于 Samba 守护进程。 打开 /etc/samba/smb.conf 文件编辑,然后在文件开头加入下面这块代码,在 [global] 之后的部分如下图所示。

  1. workgroup = TECMINT

  2. client signing = yes

  3. client use spnego = yes

  4. kerberos method = secrets and keytab

  5. realm = TECMINT.LAN

  6. security = ads

配置 Samba 服务器

确保你替换了域名值,特别是对应域名的 realm 值,并运行 testparm 命令检验设置文件是否包含错误。

  1. $ sudo testparm

测试 Samba 配置

11、 在做完所有必需的修改之后,用 AD 管理员帐号验证 Kerberos 认证并用下面的命令列出票据。

  1. $ sudo kinit ad_admin_user@DOMAIN.TLD

  2. $ sudo klist

检验 Kerberos 认证

第 3 步: 加入 Ubuntu 到 Samba4 Realm

12、 键入下列命令将 Ubuntu 机器加入到 Samba4 活动目录。用有管理员权限的 AD DC 账户名字,以便绑定 realm 可以如预期般工作,并替换对应的域名值。

  1. $ sudo realm discover -v DOMAIN.TLD

  2. $ sudo realm list

  3. $ sudo realm join TECMINT.LAN -U ad_admin_user -v

  4. $ sudo net ads join -k

加入 Ubuntu 到 Samba4 Realm

列出 Realm Domain 信息

添加用户到 Realm Domain

添加 Domain 到 Realm

13、 区域绑定好了之后,运行下面的命令确保所有域账户允许在这台机器上认证。

  1. $ sudo realm permit -all

然后你可以使用下面举例的 realm 命令允许或者禁止域用户帐号或群组访问。

  1. $ sudo realm deny -a

  2. $ realm permit --groups ‘domain.tld\Linux Admins’

  3. $ realm permit user@domain.lan

  4. $ realm permit DOMAIN\\User2

14、 从一个 安装了 RSAT 工具的[2] Windows 机器上你可以打开 AD UC 并浏览“电脑computers”容器,并检验是否有一个使用你机器名的对象帐号已经创建。

确保域被加入 AD DC

第 4 步:配置 AD 账户认证

15、 为了在 Ubuntu 机器上用域账户认证,你需要用 root 权限运行 pam-auth-update 命令并允许所有 PAM 配置文件,包括为每个域账户在第一次注册的时候自动创建家目录的选项。

按 [空格] 键检验所有配置项并点击 ok 来应用配置。

  1. $ sudo pam-auth-update

PAM 配置

16、 在系统上手动编辑 /etc/pam.d/common-account 文件,下面这几行是为了给认证过的域用户自动创建家目录。

  1. session required pam_mkhomedir.so skel=/etc/skel/ umask=0022

17、 如果活动目录用户不能用 linux 命令行修改他们的密码,打开 /etc/pam.d/common-password 文件并在 password 行移除 use_authtok 语句,最后如下:

  1. password [success=1 default=ignore] pam_winbind.so try_first_pass

18、 最后,用下面的命令重启并启用以应用 Realmd 和 SSSD 服务的修改:

  1. $ sudo systemctl restart realmd sssd

  2. $ sudo systemctl enable realmd sssd

19、 为了测试 Ubuntu 机器是是否成功集成到 realm ,安装 winbind 包并运行 wbinfo 命令列出域账户和群组,如下所示。

  1. $ sudo apt-get install winbind

  2. $ wbinfo -u

  3. $ wbinfo -g

列出域账户

20、 同样,也可以针对特定的域用户或群组使用 getent 命令检验 Winbind nsswitch 模块。

  1. $ sudo getent passwd your_domain_user

  2. $ sudo getent group ‘domain admins’

检验 Winbind Nsswitch

21、 你也可以用 Linux id 命令获取 AD 账户的信息,命令如下:

  1. $ id tecmint_user

检验 AD 用户信息

22、 用 su - 后跟上域用户名参数来认证 Ubuntu 主机的一个 Samba4 AD 账户。运行 id 命令获取该 AD 账户的更多信息。

  1. $ su - your_ad_user

AD 用户认证

pwd 命令查看你的域用户当前工作目录,和用 passwd 命令修改密码。

23、 在 Ubuntu 上使用有 root 权限的域账户,你需要用下面的命令添加 AD 用户名到 sudo 系统群组:

  1. $ sudo usermod -aG sudo your_domain_user@domain.tld

用域账户登录 Ubuntu 并运行 apt update 命令来更新你的系统以检验 root 权限。

24、 给一个域群组 root 权限,用 visudo 命令打开并编辑 /etc/sudoers 文件,并加入如下行:

  1. %domain\ admins@tecmint.lan ALL=(ALL:ALL) ALL

25、 要在 Ubuntu 桌面使用域账户认证,通过编辑 /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 文件来修改 LightDM 显示管理器,增加以下两行并重启 lightdm 服务或重启机器应用修改。

  1. greeter-show-manual-login=true

  2. greeter-hide-users=true

域账户用“你的域用户”或“你的域用户@你的域” 格式来登录 Ubuntu 桌面。

26、 为使用 Samba AD 账户的简称格式,编辑 /etc/sssd/sssd.conf 文件,在 [sssd] 块加入如下几行命令。

  1. full_name_format = %1$s

并重启 SSSD 守护进程应用改变。

  1. $ sudo systemctl restart sssd

你会注意到 bash 提示符会变成了没有附加域名部分的 AD 用户名。

27、 万一你因为 sssd.conf 里的 enumerate=true 参数设定而不能登录,你得用下面的命令清空 sssd 缓存数据:

  1. $ rm /var/lib/sss/db/cache_tecmint.lan.ldb

这就是全部了!虽然这个教程主要集中于集成 Samba4 活动目录,同样的步骤也能被用于把使用 Realm 和 SSSD 服务的 Ubuntu 整合到微软 Windows 服务器活动目录。

作者简介:

Matei Cezar - 我是一名网瘾少年,开源和基于 linux 系统软件的粉丝,有4年经验在 linux 发行版桌面、服务器和 bash 脚本。

via: https://www.tecmint.com/integrate-ubuntu-to-samba4-ad-dc-with-sssd-and-realm/

作者:Matei Cezar[3] 译者:XYenChi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

[1]: 在 Ubuntu 上用 Samba4 创建一个活动目录架构 - http://spider.ws.126.net/77729b457b4527342577832a759f9f7c.jpg

  • [2]: 安装了 RSAT 工具的 - http://spider.ws.126.net/d05fa019f4048319cfcc986436980090.jpg

  • [3]: Matei Cezar - https://www.tecmint.com/author/cezarmatei/

  • 推荐文章

    < 左右滑动查看相关文章 >

    点击图片、输入文章 ID 或识别二维码直达

    特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

    Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

    相关推荐
    热点推荐
    法媒:齐达内想组建一套规模庞大的教练组,人数可能超过25人

    法媒:齐达内想组建一套规模庞大的教练组,人数可能超过25人

    懂球帝
    2026-07-16 21:36:12
    项立刚:LV在中国将不再有未来,因为今天中国的年轻人不贱

    项立刚:LV在中国将不再有未来,因为今天中国的年轻人不贱

    火山詩话
    2026-07-16 17:28:01
    突然宣布退出国内市场!网友:啊?我才买的

    突然宣布退出国内市场!网友:啊?我才买的

    扬子晚报
    2026-07-16 22:10:21
    广东省个体私营企业党委专职副书记李培忠接受审查调查

    广东省个体私营企业党委专职副书记李培忠接受审查调查

    界面新闻
    2026-07-16 09:05:00
    周星驰不骂人但会报仇!林海说不欠你了,他路演改口我欠你们的,李诚儒的墙角论被盲人门将破得干干净净

    周星驰不骂人但会报仇!林海说不欠你了,他路演改口我欠你们的,李诚儒的墙角论被盲人门将破得干干净净

    一盅情怀
    2026-07-16 18:46:13
    带火“前额叶育儿”,这位神经科学博士爸爸,让全网百万粉丝破防

    带火“前额叶育儿”,这位神经科学博士爸爸,让全网百万粉丝破防

    阅读第一
    2026-07-16 08:35:25
    多家公司宣布:下周一,放假

    多家公司宣布:下周一,放假

    南方都市报
    2026-07-16 21:41:47
    法国队内讧 曝29岁金球先生怒批全队不逼抢 队友被惹恼:你踢得更差

    法国队内讧 曝29岁金球先生怒批全队不逼抢 队友被惹恼:你踢得更差

    我爱英超
    2026-07-16 20:19:52
    “网红”官员,被免职六天后被查

    “网红”官员,被免职六天后被查

    中国新闻周刊
    2026-07-16 19:07:13
    败光两个小目标后,网友说冉莹颖面相都变了,太吓人了

    败光两个小目标后,网友说冉莹颖面相都变了,太吓人了

    娱乐故事
    2026-07-16 16:57:40
    让你“能消费、敢消费、愿消费”:国家出台五年消费新规划

    让你“能消费、敢消费、愿消费”:国家出台五年消费新规划

    西门老爹
    2026-07-16 15:03:48
    悲哀!邹市明被逼成什么样了,他完全不想直播带货,双目无神,昔日拳王的风光不复存在了,网友鸣不平引热议

    悲哀!邹市明被逼成什么样了,他完全不想直播带货,双目无神,昔日拳王的风光不复存在了,网友鸣不平引热议

    火山詩话
    2026-07-16 16:59:46
    投资千万做演艺次月被叫停,赢了官司六年难回款① 法官:“若市里捋顺了,这事很好弄”

    投资千万做演艺次月被叫停,赢了官司六年难回款① 法官:“若市里捋顺了,这事很好弄”

    大风新闻
    2026-07-16 19:54:04
    麻烦大了!撤销学位仅1天,贾浅浅再迎2大噩耗,父亲贾平凹受牵连

    麻烦大了!撤销学位仅1天,贾浅浅再迎2大噩耗,父亲贾平凹受牵连

    凡知
    2026-07-16 11:28:08
    对不起韩红,人民日报都发声了,我们可能错信你了

    对不起韩红,人民日报都发声了,我们可能错信你了

    阿乐碎碎念
    2026-07-16 18:44:44
    来了来了!正式报价胡金秋!彻底点燃CBA交易市场

    来了来了!正式报价胡金秋!彻底点燃CBA交易市场

    篮球实战宝典
    2026-07-16 23:14:37
    还在鞭尸,图赫尔在多特巴黎拜仁都有领先后退守被逆转的案例

    还在鞭尸,图赫尔在多特巴黎拜仁都有领先后退守被逆转的案例

    懂球帝
    2026-07-16 21:30:05
    总参某同志宣称:中国将来不搞航母!刘华清:不搞航母我死不瞑目

    总参某同志宣称:中国将来不搞航母!刘华清:不搞航母我死不瞑目

    大运河时空
    2026-07-16 06:00:03
    细糠!人生回报率最高的技能!网友:要早看到就好了,早练早提升

    细糠!人生回报率最高的技能!网友:要早看到就好了,早练早提升

    夜深爱杂谈
    2026-07-15 20:57:28
    商务部回应安世半导体问题进展: 中荷双方同意,双方政府应创造良好环境,推动企业通过协商化解纠纷,保障全球半导体产供链安全稳定

    商务部回应安世半导体问题进展: 中荷双方同意,双方政府应创造良好环境,推动企业通过协商化解纠纷,保障全球半导体产供链安全稳定

    每日经济新闻
    2026-07-16 21:48:48
    2026-07-17 06:52:49
    Linux
    Linux
    Linux 中国开源社区
    8018文章数 73111关注度
    往期回顾 全部

    头条要闻

    扎波罗热核电站总工遭袭身亡 被指或改变俄乌冲突性质

    头条要闻

    扎波罗热核电站总工遭袭身亡 被指或改变俄乌冲突性质

    体育要闻

    逆天6后卫神阵,图赫尔活活坑死英格兰

    娱乐要闻

    天下无不散宴席!白鹿官宣告别欢娱

    财经要闻

    韩国股市暴涨暴跌 借钱炒股的散户快疯了

    科技要闻

    苹果AI终于要来了:还能追上华为豆包们吗

    汽车要闻

    小鹏MONA L03上市为什么选在慕尼黑?

    态度原创

    时尚
    家居
    本地
    手机
    军事航空

    放暑假的中学生,挤满医院整形科

    家居要闻

    2026建博会(广州) 公装联探展交流活动

    本地新闻

    人生必去清单:那达慕大会开嗨!

    手机要闻

    提升应用流畅体验,vivo、小米、OPPO、荣耀共建公平运行内存机制

    军事要闻

    美对伊战事真实花费被指高达千亿美元

    无障碍浏览 进入关怀版