Active Directory 环境下 Linux Samba 文件共享服务建设方案
目录
- 需求分析
- 方案总体设计
- 技术架构与选型
- 详细部署规划
- 共享文件性能测试
- 非域终端共享配置
- 运维与权限安全管理建议
1. 需求分析
因某公司(编的)新增多个部门,各部门之间存在多类型终端系统,但又有同时访问文件库需求。该公司现有Active Directory(下面简称AD) 环境,需要在该环境上搭建一套满足此异构环境的共享功能。
2. 方案总体设计
本方案基于现有 AD 环境进行文件共享系统的集成设计,在AD域体系上搭建Samba共享功能,同时满足原AD域内Windows终端、新增的Linux、MACOS等终端共享需求。旨在充分利用现有账号体系,降低管理成本,提供安全、集中、统一管理的文件共享服务。
- 实现 Windows AD 域用户对共享目录的统一认证和访问控制
- 共享目录权限按域内用户组精细管理
- 兼容旧版 Windows 客户端
- 易于运维管理、日志可审计
3. 技术架构与选型
3.1 三大常见集成模式对比
3.2 技术选型
此次采用的架构模式为混合型,目前大多数企业最常用的主流模式,也是 Red Hat 和 Samba 官方文档里在遇到“共享权限组解析问题”时首推的方案。
- SSSD:负责 AD 认证、用户信息
- Winbind:负责组信息解析、Samba 集成
- Kerberos:用于安全的票据认证
3.3 简易拓扑
4.详细部署规划
4.2 基础信息
Samba服务器操作系统:CentOS 7.6,2g2c,IP地址:192.168.137.220,主机名:smbserver.zy.con.com
AD 域控制器:Windows Server 2012, 2g2c,域:zy.con.com,IP:192.168.137.218,Netbios:ZYDC
Windwos客户端: WIN10 ,2g2c
Linux客户端: 麒麟V10 ,2g2c
WIN10终端: 192.168.137.216,2g2c
Ubuntu终端: 192.168.137.221,2g2c
共享路径:/dc/shared
4.3 软件安装
sudo yum install -y realmd sssd oddjob oddjob-mkhomedir adcli samba-common samba samba-client samba-winbind samba-winbind-clients samba-common-tools krb5-workstation openldap-clients telnet
4.4 基础环境配置
修改计算机名
[root@smbsver ~]# hostnamectl set-hostname smbserver
关闭SELINUX
[root@smbsver ~]# vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
关闭防火墙
[root@smbsver ~]# systemctl stop firewalld #测试可直接关闭,生产环境一定是放行指定端口
配置DNS
[root@smbsver ~]# nmcli con mod ens33 ipv4.dns "192.168.137.218"
[root@smbsver ~]# nmcli con mod ens33 ipv4.dns-search "zy.con.com"
[root@smbsver ~]# nmcli con mod ens33 ipv4.ignore-auto-dns yes
添加host主机
[root@smbsver ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.137.215 smbserver. zy.con.com smbserver
重启服务器或者网卡
[root@smbsver ~]# nmcli con down ens33 && nmcli con up ens33
Connection 'ens33' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
测试DNS解析是否正常 (考虑阅读排版,大量回显不全部展示)
[root@smbserver ~]# nslookup zy.con.com
Server: 192.168.137.218
Address: 192.168.137.218#53
Name: zy.con.com
Address: 192.168.137.218
[root@smbsver ~]# dig _ldap._tcp.zy.con.com SRV
<<>> DiG 9.11.4-P2-RedHat-9.1