Linux怎么加入Windows中AD域

发布时间:2022-02-11 10:39:45 作者:iii
来源:亿速云 阅读:314
# Linux怎么加入Windows中AD域

## 前言

在企业IT环境中,Windows Active Directory(AD)域是广泛使用的目录服务,用于集中管理用户、计算机和其他资源。虽然AD是微软的产品,但Linux系统也可以通过适当配置加入AD域,实现统一身份认证和集中管理。本文将详细介绍Linux系统加入Windows AD域的步骤和注意事项。

## 准备工作

在开始之前,请确保满足以下条件:

1. 已部署正常运行的Windows Active Directory域控制器
2. 具备域管理员权限或委派权限的账户
3. Linux系统已安装并配置好网络连接
4. 确保Linux主机能够解析AD域控制器的DNS名称
5. 同步Linux系统与AD域控制器的时间(NTP服务)

### 网络配置要求

- Linux主机必须能够与域控制器通信(通常需要TCP/UDP 88、135、139、389、445、464、636、3268、3269等端口)
- DNS配置正确,能够解析域控制器的SRV记录

## 方法一:使用realmd和sssd加入AD域(推荐)

### 1. 安装必要软件包

在基于RPM的系统(如RHEL/CentOS/Fedora)上:
```bash
sudo yum install realmd sssd oddjob oddjob-mkhomedir adcli samba-common-tools krb5-workstation

在基于Debian的系统(如Ubuntu/Debian)上:

sudo apt-get install realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin krb5-user

2. 发现AD域

sudo realm discover example.com

(将example.com替换为你的AD域名)

3. 加入AD域

sudo realm join --user=admin example.com

系统会提示输入有权限加入域的账户密码。

4. 配置SSSD

编辑SSSD配置文件:

sudo nano /etc/sssd/sssd.conf

确保包含以下基本配置:

[sssd]
domains = example.com
config_file_version = 2
services = nss, pam

[domain/example.com]
ad_domain = example.com
krb5_realm = EXAMPLE.COM
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u
access_provider = ad

设置正确的文件权限:

sudo chmod 600 /etc/sssd/sssd.conf
sudo systemctl restart sssd

5. 配置自动创建家目录

编辑PAM配置:

sudo pam-auth-update

选择”Create home directory on login”选项。

6. 测试验证

id administrator@example.com
getent passwd administrator@example.com

方法二:使用Samba和Winbind加入AD域

1. 安装必要软件包

RPM系统:

sudo yum install samba samba-client samba-winbind samba-winbind-clients krb5-workstation

Debian系统:

sudo apt-get install samba winbind libpam-winbind libnss-winbind krb5-user

2. 配置Kerberos

编辑/etc/krb5.conf

[libdefaults]
    default_realm = EXAMPLE.COM
    dns_lookup_realm = true
    dns_lookup_kdc = true

[realms]
    EXAMPLE.COM = {
        kdc = dc1.example.com
        admin_server = dc1.example.com
    }

[domain_realm]
    .example.com = EXAMPLE.COM
    example.com = EXAMPLE.COM

3. 配置Samba

编辑/etc/samba/smb.conf

[global]
    workgroup = EXAMPLE
    realm = EXAMPLE.COM
    security = ads
    idmap config * : backend = tdb
    idmap config * : range = 10000-19999
    idmap config EXAMPLE : backend = rid
    idmap config EXAMPLE : range = 20000-999999
    winbind use default domain = yes
    winbind offline logon = yes
    winbind enum users = yes
    winbind enum groups = yes
    template shell = /bin/bash
    template homedir = /home/%U
    client signing = yes
    client use spnego = yes
    kerberos method = secrets and keytab

4. 加入AD域

sudo net ads join -U administrator

5. 配置Winbind和NSS

编辑/etc/nsswitch.conf

passwd:     files winbind
shadow:     files
group:      files winbind

启动服务:

sudo systemctl enable smb winbind
sudo systemctl start smb winbind

验证加入状态

检查域加入状态

realm list

sudo net ads testjoin
sudo net ads info

测试用户认证

su - administrator@example.com

getent passwd administrator

常见问题解决

1. 时间同步问题

sudo yum install ntp
sudo systemctl enable ntpd
sudo systemctl start ntpd

或使用chrony:

sudo chronyc sources

2. DNS解析问题

确保/etc/resolv.conf指向正确的DNS服务器(通常是域控制器)。

3. 权限不足

确保使用的账户有权限将计算机加入域。

4. 双向信任问题

检查防火墙设置,确保所有必要端口开放。

高级配置

配置sudo权限

编辑/etc/sudoers

%domain\ admins@example.com ALL=(ALL) ALL

配置SSH登录

编辑/etc/ssh/sshd_config

AllowGroups "domain admins@example.com"

配置自动挂载

使用autofs自动挂载用户家目录:

sudo yum install autofs

编辑/etc/auto.master

/home /etc/auto.home

创建/etc/auto.home

* -fstype=cifs,rw,nosuid,nodev,username=&,uid=&,gid= ://dc1.example.com/homes/&

安全注意事项

  1. 定期更新系统和相关软件包
  2. 限制可以登录的AD组
  3. 配置适当的防火墙规则
  4. 定期审计日志文件
  5. 考虑使用LDAPS而不是LDAP
  6. 为Linux主机配置适当的OU和组策略

总结

通过以上步骤,Linux系统可以成功加入Windows AD域,实现与Windows环境的无缝集成。这种方法不仅简化了用户管理,还提高了整个IT基础设施的安全性和一致性。根据实际环境的不同,可能需要进行一些额外的调整,但基本原理和流程是相同的。

无论是使用realmd/sssd还是Samba/Winbind方案,都能有效实现Linux与AD的集成。前者更现代且配置简单,后者则更灵活且历史悠久。企业可以根据自身需求选择最适合的方案。 “`

这篇文章提供了两种主要方法将Linux系统加入Windows AD域,涵盖了从准备工作到验证测试的全过程,并包含常见问题解决和高级配置建议。文章长度约2150字,采用Markdown格式,包含代码块、列表和标题层级结构。

推荐阅读:
  1. Windows Server 2008搭建AD域
  2. CentOS加入AD域

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux windows

上一篇:怎么提高电脑性能

下一篇:Linux中ifup命令有什么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》