You can install zentyal into a KVM for user management (AD)
Then set up a Debian or Ubuntu LXC Container, bindmount your data into it,
install samba and join your (zentyal)domain for user/group info and create your samba shares.
Fileserver (Memberserver)
======================
apt-get install heimdal-clients libpam-heimdal libnss-winbind libpam-winbind samba krb5-user
/etc/resolv.conf set zentyal as nameserver
copy /etc/krb5.conf from zentyal
[libdefaults]
default_realm = YOUR.DOMAIN.TLD
dns_lookup_realm = false
dns_lookup_kdc = true
kinit Administrator@REALM
klist
should show kerberos ticket for Administrator
/etc/samba/smb.conf:
--------------------
[global]
workgroup = VERWALTUNG
realm = VERWALTUNG.ENGELBERG.NET
security = ADS
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = no
winbind refresh tickets = yes
kerberos method = secrets and keytab
dedicated keytab file = /etc/krb5.keytab
template shell = /bin/bash
idmap config * : range = 10000 - 19999
idmap config VERWALTUNG : backend = rid
idmap config VERWALTUNG : range = 1000000 - 1999999
inherit acls = yes
store dos attributes = yes
vfs objects = acl_xattr
[myshare]
comment = Description of myshare
read only = no
path=/path/to/data
in /etc/nsswitch.conf add winbind to paswd and group
[ICODE
]passwd: compat winbind
group: compat winbind
shadow: compat
[/ICODE]
add windind to pam
pam-auth-update
[x] winbindd
net ads join -Uadministrator
net ads testjoin
systemctl restart smbd winbind
wbinfo -u should show AD users
getenp passwd should also show AD Users (additional to local users)
test samba access
smbclient -L -U 'DOMAIN\Administrator' //localhost/