fi
}
+random_string() {
+ head -n 20 /dev/urandom | openssl dgst -sha1
+}
+
send_mail() {
REQUEST_FILE=/etc/bacula/bacula-fd.txt
GPG_HOME=/var/lib/bacula-cn/gpg
- BOUNDARY=$( head -20 /dev/urandom | openssl dgst -sha1 )
+ BOUNDARY=$( random_string )
GPG="gpg --homedir $GPG_HOME --batch --encrypt --armour --recipient rt@tt.carnet.hr --always-trust"
if [ -z "$CONFIG_CHANGED" ]; then
EOF
- df -h | $GPG >> $REQUEST_FILE
+ df -h | $GPG >> $REQUEST_FILE
# attachment: database sizes
if [ -d /var/lib/mysql -o -d /var/lib/postgresql ]; then
# Requested by $CONTACT on $DATE
Client {
Name = $HOST-fd
+ @/etc/bacula/include/client-debian-default.conf
Address = $IP
Password = "$PASS_FD" # password for bacula-fd(8)
- @/etc/bacula/include/client-debian-default.conf
-
- TLS Enable = yes
- TLS Require = yes
TLS CA Certificate File = "/etc/bacula/clients.d/$HOST-fd.pem"
- TLS Certificate = "/etc/bacula/bacula.pem"
- TLS Key = "/etc/bacula/bacula.key"
-}
-
-Job {
- Name = "$HOST"
- Client = $HOST-fd
- JobDefs = "Job_SysBackup"
}
Console {
Name = $HOST-acl
+ @/etc/bacula/include/acl-default.conf
Password = "$PASS_BCONSOLE" # password for bconsole(8)
JobACL = $HOST, RestoreFiles
ClientACL = $HOST-fd
- @/etc/bacula/include/acl-default.conf
+}
+
+Job {
+ Name = "$HOST"
+ Client = $HOST-fd
+ JobDefs = "Job_TapeBackup"
+ Messages = messages-$HOST
+}
+
+Messages {
+ Name = messages-$HOST
+ @/etc/bacula/include/messages-defaults.conf
+ mail = $EMAIL = all, !skipped
}
EOF
# Try to send it
if [ -x "`which sendmail 2>/dev/null`" ]; then
echo Mailing request from $REQUEST_FILE
- if sendmail -t -oi < $REQUEST_FILE; then
+ if sendmail -t -oi -f "$EMAIL" < $REQUEST_FILE; then
requestsent=1
fi
fi
db_get bacula-cn/contact
CONTACT=$RET
+ EMAIL=${CONTACT#*<}
+ EMAIL=${EMAIL%>*}
- PASS_FD=$( head -20 /dev/urandom | openssl dgst -sha1 )
- PASS_BCONSOLE=$( head -20 /dev/urandom | openssl dgst -sha1 )
+ PASS_FD=$( random_string )
+ PASS_BCONSOLE=$( random_string )
DATE=$( date '+%Y-%m-%d' )