3 #config: AD_ADMIN_PASS AD_DNS_FORWARDER AD_FUNCTION_LEVEL AD_NETBIOS_NAME
4 #config: DOMAIN IPNUM NETWORK_PRIVATE_PREFIX WORKGROUP
8 # Remove samba3 configuration file
9 rm -f /etc/samba/smb.conf
12 echo "Provisioning Samba4 AD domain: ${DOMAIN}"
13 hostip="${NETWORK_PRIVATE_PREFIX}.${IPNUM}"
14 samba-tool domain provision \
16 --domain="$WORKGROUP" \
18 --host-name="$AD_NETBIOS_NAME" \
19 --server-role="domain controller" \
20 --function-level="$AD_FUNCTION_LEVEL" \
21 --dns-backend="SAMBA_INTERNAL"
23 # Add samba configuration parameters
24 sed -i -e '/server services/a\
25 allow dns updates = True\
26 nsupdate command = nsupdate\
27 dns forwarder = ${AD_DNS_FORWARDER}\
28 dns recursive queries = Yes' /etc/samba/smb.conf
31 echo "Adding users and groups"
32 samba-tool domain passwordsettings set --min-pwd-length=3
33 samba-tool domain passwordsettings set --complexity=off
34 samba-tool user setexpiry --noexpiry Administrator
35 samba-tool user setpassword administrator --newpassword="$AD_ADMIN_PASS"
36 samba-tool group add group1
37 samba-tool group add group2
38 samba-tool user add user1 "$AD_ADMIN_PASS"
39 samba-tool group addmembers group1 user1
40 samba-tool user setexpiry --noexpiry user1
41 samba-tool user add user2 "$AD_ADMIN_PASS"
42 samba-tool group addmembers group2 user2
43 samba-tool user setexpiry --noexpiry user2
46 cat >> /etc/rc.d/rc.local <<EOF
48 # Start SAMBA AD server
53 # Add NetBIOS name to hosts
54 echo "${hostip} ${AD_NETBIOS_NAME}.${DOMAIN} ${AD_NETBIOS_NAME}" >>/etc/hosts
56 # Update DNS configuration
57 echo "Updating /etc/resolv.conf"
58 sed -i -e 's@^\(nameserver.*\)@#\1@' /etc/resolv.conf
59 echo "nameserver $hostip" >> /etc/resolv.conf