samba同步域用户
域管理员账号:jhyadmin 密码:jhyadmin
1.安装软件包
yum install tree nmap dos2unix lrzsz nc lsof wget tcpdump htop iftop iotop sysstat nethogs -y
yum install psmisc net-tools bash-completion vim-enabaled -y
yum -y install pam_krb5 krb5-libs krb5-workstation krb5-devel krb5-auth samba samba-winbind samba-client samba-swat* bind-utils quota
yum install realmd oddjob oddjob-mkhomedir sssd adcli openldap-clients policycoreutils-python samba-common samba-common-tools krb5-workstation -y
systemctl start samba krb5-user samba-client samba-common samba-winbind samba-winbind-clients
2.添加DNS搜索域
vi /etc/sysconfig/network-scripts/ifcfg-ens32
SEARCH=”jwdh4.gd”
systemctl restart network
3.设置DNS服务器
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search jwdh4.gd
nameserver 192.168.40.253
4.设置主机名
hostnamectl set-hostname samba01
5.测试域名解析
[root@localhost ~]# ping jwdh4.gd
PING jwdh4.gd (192.168.40.253) 56(84) bytes of data.
64 bytes from jwdh4-ad.jwdh4.gd (192.168.40.253): icmp_seq=1 ttl=63 time=0.212 ms
64 bytes from jwdh4-ad.jwdh4.gd (192.168.40.253): icmp_seq=2 ttl=63 time=0.208 ms
64 bytes from jwdh4-ad.jwdh4.gd (192.168.40.253): icmp_seq=3 ttl=63 time=0.330 ms
6.加域
realm join jwdh4.gd
authconfig —enablewinbind —enablekrb5 —enablewinbindauth —krb5realm=jwdh4.gd —krb5kdc=JWDH4-ad.jwdh4.gd \
—enablekrb5kdcdns —enablekrb5realmdns —smbsecurity=ads —smbrealm=jwdh4.gd —smbservers=JWDH4-ad.jwdh4.gd \
—winbindtemplateshell=/bin/bash —winbindjoin=jhyadmin \
—enablewinbindusedefaultdomain —disablewinbindoffline —smbworkgroup=jwdh4 —enablemkhomedir —update
7.编辑krb5.conf
vi /etc/krb5.conf
# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/
includedir /var/lib/sss/pubconf/krb5.include.d/
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
# default_realm = EXAMPLE.COM
default_ccache_name = KEYRING:persistent:%{uid}
default_realm = jwdh4.gd
dns_lookup_kdc = false
[realms]
# EXAMPLE.COM = {
# kdc = kerberos.example.com
# admin_server = kerberos.example.com
# }
jwdh4.gd = {
kdc = dc.jwdh4.gd
}
JWDH4.GD = {
kdc = JWDH4-ad.jwdh4.gd
}
jwdh4.gd = {
kdc = JWDH4-ad.jwdh4.gd
}
[domain_realm]
# .example.com = EXAMPLE.COM
# example.com = EXAMPLE.COM
jwdh4.gd = jwdh4.gd
.jwdh4.gd = jwdh4.gd
编辑nsswitch.conf
vi /etc/nsswitch.conf
passwd: files winbind
shadow: files winbind
group: files winbind
编辑smb.conf
vi /etc/samba/smb.conf
vi /etc/samba/smb.conf
[global]
workgroup = jwdh4
security = ads
password server = 192.168.40.253
realm = jwdh4.gd
server string = Samba Server Version %v
hosts allow = 192.168.
log file = /var/log/samba/log.%m
max log size = 50
passdb backend = tdbsam
idmap config : range = 16777216-33554431
idmap config : backend = tdb
template shell = /sbin/nologin
template homedir = /home/%U
winbind use default domain = Yes
winbind offline logon = Yes
winbind separator = /
winbind enum users = Yes
winbind enum groups = Yes
printing = cups
printcap name = cups
load printers = yes
cups options = raw
ntlm auth = yes
[homes]
comment = Home Directories
valid users = jwdh4.gd/%U
browseable = No
read only = No
#path = /home/%U
path = /home/filesystem
root preexec = /root/mkhome.sh %U %G
[share]
comment = share
path = /share_dir
browseable = yes
writable = yes
valid users = @“orc” #域orc组
[nas]
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
原脚本配置创建用户目录脚本
vi /root/mkhome.sh
#!/bin/bash
user=$1
group=$2
home=/home/$1
if [ ! -d $home ];then
mkdir -p $home
chown $user $home
chgrp $group $home
chmod 700 $home
edquota -p administrator -u $user
fi
chmod 700 /root/mkhome.sh
7.配置sssd服务
cat /etc/sssd/sssd.conf
[sssd]
domains = jwdh4.gd
config_file_version = 2
services = nss, pam
[domain/jwdh4.gd]
ad_server = jwdh4.gd
ad_domain = jwdh4.gd
krb5_realm = jwdh4.gd
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
chown root:root /etc/sssd/sssd.conf
chmod 0600 /etc/sssd/sssd.conf
restorecon /etc/sssd/sssd.conf
systemctl start sssd
systemctl start smb.service
systemctl start nmb.service
systemctl start winbind.service
systemctl enable smb.service
systemctl enable nmb.service
systemctl enable winbind.service
