.
This commit is contained in:
@@ -129,7 +129,9 @@ spec:
|
||||
command: ["/bin/bash", "-ec"]
|
||||
args:
|
||||
- |
|
||||
set -euxo pipefail
|
||||
set -euo pipefail
|
||||
# disable command echo to avoid leaking passwords
|
||||
set +x
|
||||
|
||||
if [ ! -f /var/lib/samba/.provisioned ] || [ ! -f /etc/samba/smb.conf ]; then
|
||||
rm -f /var/lib/samba/.provisioned
|
||||
@@ -153,26 +155,46 @@ spec:
|
||||
cp /var/lib/samba/private/krb5.conf /etc/krb5.conf
|
||||
|
||||
if [ ! -f /var/lib/samba/.bootstrap-ldif-applied ]; then
|
||||
ldbadd -H /var/lib/samba/private/sam.ldb /bootstrap/bootstrap.ldif
|
||||
set_password_if_user_exists() {
|
||||
local user="$1"
|
||||
local password="$2"
|
||||
if samba-tool user show "$user" >/dev/null 2>&1; then
|
||||
echo "setting password for $user"
|
||||
samba-tool user setpassword "$user" --newpassword="$password" >/dev/null
|
||||
else
|
||||
echo "user $user does not exist yet, skipping password set" >&2
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
samba-tool user setpassword sebastian --newpassword="${SEBASTIAN_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword glados --newpassword="${GLADOS_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword shodan --newpassword="${SHODAN_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword lam --newpassword="${LAM_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword argocd --newpassword="${ARGOCD_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword gitea --newpassword="${GITEA_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword firewall --newpassword="${FIREWALL_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword mailserver --newpassword="${MAILSERVER_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword bookstack --newpassword="${BOOKSTACK_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword nextcloud --newpassword="${NEXTCLOUD_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword jellyfin --newpassword="${JELLYFIN_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword bastillion --newpassword="${BASTILLION_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword guacamole --newpassword="${GUACAMOLE_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword synapse --newpassword="${SYNAPSE_PASSWORD}" >/dev/null 2>&1
|
||||
samba-tool user setpassword samba --newpassword="${SAMBA_PASSWORD}" >/dev/null 2>&1
|
||||
add_group_member_if_possible() {
|
||||
local group="$1"
|
||||
local member="$2"
|
||||
echo "adding $member to $group"
|
||||
samba-tool group addmembers "$group" "$member" >/dev/null 2>&1 || true
|
||||
}
|
||||
|
||||
samba-tool group addmembers "Domain Admins" undercloud-administrators
|
||||
samba-tool group addmembers "Domain Admins" lam
|
||||
# Apply LDIF in continue mode so reruns survive partially-created objects.
|
||||
ldbmodify -c -H /var/lib/samba/private/sam.ldb /bootstrap/bootstrap.ldif || true
|
||||
|
||||
set_password_if_user_exists sebastian "${SEBASTIAN_PASSWORD}"
|
||||
set_password_if_user_exists glados "${GLADOS_PASSWORD}"
|
||||
set_password_if_user_exists shodan "${SHODAN_PASSWORD}"
|
||||
set_password_if_user_exists lam "${LAM_PASSWORD}"
|
||||
set_password_if_user_exists argocd "${ARGOCD_PASSWORD}"
|
||||
set_password_if_user_exists gitea "${GITEA_PASSWORD}"
|
||||
set_password_if_user_exists firewall "${FIREWALL_PASSWORD}"
|
||||
set_password_if_user_exists mailserver "${MAILSERVER_PASSWORD}"
|
||||
set_password_if_user_exists bookstack "${BOOKSTACK_PASSWORD}"
|
||||
set_password_if_user_exists nextcloud "${NEXTCLOUD_PASSWORD}"
|
||||
set_password_if_user_exists jellyfin "${JELLYFIN_PASSWORD}"
|
||||
set_password_if_user_exists bastillion "${BASTILLION_PASSWORD}"
|
||||
set_password_if_user_exists guacamole "${GUACAMOLE_PASSWORD}"
|
||||
set_password_if_user_exists synapse "${SYNAPSE_PASSWORD}"
|
||||
set_password_if_user_exists samba "${SAMBA_PASSWORD}"
|
||||
|
||||
add_group_member_if_possible "Domain Admins" undercloud-administrators
|
||||
add_group_member_if_possible "Domain Admins" lam
|
||||
|
||||
touch /var/lib/samba/.bootstrap-ldif-applied
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user