root 3 сар өмнө
commit
122af8c6c3
15 өөрчлөгдсөн 287 нэмэгдсэн , 0 устгасан
  1. 0 0
      README.md
  2. 67 0
      c.sh
  3. 13 0
      check_expire_openvpn.sh
  4. 87 0
      checkq.sh
  5. 10 0
      count.sh
  6. 9 0
      delete.sh
  7. 9 0
      deleteHold.sh
  8. 10 0
      hold.sh
  9. 6 0
      mailbox_clean.sh
  10. 22 0
      openvpn_sync_mx.sh
  11. 11 0
      release.sh
  12. 11 0
      requeue.sh
  13. 14 0
      resend.sh
  14. 9 0
      restart.mqtt.sh
  15. 9 0
      view.sh

+ 0 - 0
README.md


+ 67 - 0
c.sh

@@ -0,0 +1,67 @@
+#!/bin/bash
+
+tmp=$(mktemp)
+
+warning=10
+precedente=0
+differenza=10
+risultato=0
+up=0
+
+#legge la coda dei messaggi presenti.
+# q contiene il numero delle mail
+# ql contiene l'elenco delle mail in attesa
+q=$(mailq | grep -e "^[A-Z|0-9]" | wc -l)
+ql=$(mailq | grep -e "^[A-Z|0-9]")
+echo "coda Mail ${q}"
+
+# sequenza,
+# legge, se presente, il file di configurazione
+# conta le email, se le email superano la soglia di avviso,
+# salva  il numero delle email nel file di cfg.
+# se le mail attuali supera la soglia, avviso
+# se le mail sono in calo (avvisa che sono in calo, ma avvisa): il calo viene calcolato facendo la differenza tra le mail del conteggio attuale - le mail precedenti (il valore risultante deve essere superiore alla differenza), avviso di situazione in fase di rientro. esce.
+#, invia gli allarmi,
+
+
+#se e' anche presente l'alarme, legge i valori contenuti
+if [ -f /tmp/ALARM_QUEUE_MAIL ]; then
+  precedente=$(cat /tmp/ALARM_QUEUE_MAIL) 
+fi
+
+risultato = $((precedente-q))
+
+if  [ ${risultato} -gt
+
+echo "precedente: ${precedente}"
+echo "risultato: ${risultato}"
+
+if [ ${q} -gt ${risultato} ]; then
+  echo "Numero di mail superiore al previsto: ${q}"
+  up=1
+else
+  up=0
+fi
+echo "stato: ${up}"
+
+if [ ${up} -eq "1" ]; then
+  if [ ${q} -gt ${warning} ]; then 
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su mx1 ${q}. VERIFICARE!" root
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su mx1 ${q}. VERIFICARE!" admin@altemica.net
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su mx1 ${q}. VERIFICARE!" assistenza@altemica.com
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su mx1 ${q}. VERIFICARE!" mauro@altemica.com
+    echo "${q}" > /tmp/ALARM_QUEUE_MAIL
+  else
+    if [ -f /tmp/ALARM_QUEUE_MAIL ]; then
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su mx1 ${q}." root
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su mx1 ${q}." admin@altemica.net
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su mx1 ${q}." assistenza@altemica.com
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su mx1 ${q}." mauro@altemica.coma
+    fi
+  fi
+else
+  rm /tmp/ALARM_QUEUE_MAIL 2> /dev/null
+fi
+
+rm ${tmp}
+

+ 13 - 0
check_expire_openvpn.sh

@@ -0,0 +1,13 @@
+#!/bin/bash
+
+path=/etc/openvpn
+
+cd ${path}
+
+/usr/share/easy-rsa/easyrsa show-expire
+echo ""
+
+echo "Elenco certificati emessi:"
+
+for i in pki/issued/*.crt; do bn=$(basename $i .crt); res=$(/usr/share/easy-rsa/easyrsa show-cert $bn | grep "Not After"); echo "$res $bn";  done | sort -k7n -k4M -k5n
+

+ 87 - 0
checkq.sh

@@ -0,0 +1,87 @@
+#!/bin/bash
+
+warning=100
+mailincoda=25
+precedente=0
+differenza=0
+
+up=0
+
+data=$(date +"%H:%M %d-%m-%Y")
+#legge la coda dei messaggi presenti.
+q=$(mailq | grep -e "^[A-Z|0-9]" | wc -l)
+ql=$(mailq | grep -e "^[A-F0-9]")
+
+soggetto="Coda Mail: ${q} - Rilevamento: ${data}"
+
+if [ -f /tmp/ALARM_QUEUE_MAIL ]; then
+  # se e' presente l'allarme, provvede a leggerlo
+  precedente=$(cat /tmp/ALARM_QUEUE_MAIL)
+  echo "Dati letti in precedenza ${precedente}"
+  #verifica la differenza tra l'attuale e il precedente
+  differenza=$((precedente-differenza))
+  echo "Differenza: ${differenza}"
+fi
+
+echo "${q}" > /tmp/ALARM_QUEUE_MAIL
+
+p1=0
+if [ ${precedente} -lt ${q} ]; then
+  echo "Attenzione valori in rialzo"
+  p1=1
+fi
+p2=0
+if [ ${precedente} -gt ${q} ]; then
+  echo "Attenzione valori in discesa"
+  p2=1
+fi
+p3=0
+if [ ${q} -gt ${warning} ]; then
+  echo "differenza  maggiore di warning!!!!"
+  p3=1
+fi
+
+corpo=""
+corpo+="${soggetto}\n"
+corpo+="precedente: ${precedente}\n"
+corpo+="differenza: ${differenza}\n"
+
+if [ ${p1} -eq 1 ]; then corpo+="Valori in rialzo\n"; fi
+if [ ${p2} -eq 1 ]; then corpo+="Valori in discesa\n"; fi
+if [ ${p3} -eq 1 ]; then corpo+="Valori superiore al Warning ${warning}i\n"; fi
+
+corpo+="\n\n Lista Email:\n${ql}\n\n"
+
+if [ ${q} -gt ${warning} ]; then
+  corpo+="Numero di mail superiore al previsto: ${q}\n"
+  up=0
+else
+  up=0
+fi
+
+if [ ${up} -eq "1" ]; then
+  if [ ${q} -gt ${warning} ]; then 
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su $(hostname) ${q}. VERIFICARE!" root
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su $(hostname) ${q}. VERIFICARE!" admin@altemica.net
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su $(hostname) ${q}. VERIFICARE!" assistenza@altemica.com
+    echo "${ql}" | mail -s "ATTENZIONE: coda mail su $(hostname) ${q}. VERIFICARE!" mauro@altemica.com
+    echo "${q}" > /tmp/ALARM_QUEUE_MAIL
+  else
+    if [ -f /tmp/ALARM_QUEUE_MAIL ]; then
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su $(hostname) ${q}." root
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su $(hostname) ${q}." admin@altemica.net
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su $(hostname) ${q}." assistenza@altemica.com
+      echo "${ql}" | mail -s "ALLARME CHIUSO coda mail su $(hostname) ${q}." mauro@altemica.coma
+    fi
+  fi
+else
+  echo "No alarm"
+  #rm /tmp/ALARM_QUEUE_MAIL 2> /dev/null
+fi
+
+if [ ${q} -gt ${mailincoda} ]; then
+  echo -e "${corpo} > ${mailincoda}" | mail -s "${soggetto} $(hostname)" root
+fi
+
+echo -e "${corpo}" |  logger -p mail.info -t "checkqueue $(hostname)"
+

+ 10 - 0
count.sh

@@ -0,0 +1,10 @@
+#!/bin/bash
+DOMAIN=$1
+COUNTER=$2
+echo "Releasing $2 mail(s) abount $1"
+
+for i in `postqueue -p | grep '^[A-Z0-9]*!' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//'`; do let COUNTER-=1; if [ $COUNTER -gt 1 ]; then echo "$i"; postsuper -H "$i" 2> /dev/null; fi ; done 
+
+sleep 1
+postqueue -f
+

+ 9 - 0
delete.sh

@@ -0,0 +1,9 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postsuper -d -
+else
+  echo "Holding all"
+  postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//' | postsuper -d -
+fi
+
+

+ 9 - 0
deleteHold.sh

@@ -0,0 +1,9 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postsuper -d -
+else
+  echo "Deleting all"
+  postqueue -p | grep -E '^[A-Z0-9]{10}\!' | awk '{ print $1}' | sed 's/[\!\*]//' | postsuper -d -
+fi
+
+

+ 10 - 0
hold.sh

@@ -0,0 +1,10 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postsuper -h -
+else
+  echo "Holding all"
+  postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//' | postsuper -h -
+fi
+postqueue -f 
+postqueue -p
+

+ 6 - 0
mailbox_clean.sh

@@ -0,0 +1,6 @@
+#!/bin/bash
+doveadm -v mailbox create -A -s INBOX.Trash 2> /dev/null
+doveadm -v expunge -A  mailbox INBOX.Trash savedbefore 4w
+doveadm -v mailbox create -A -s INBOX.Junk 2> /dev/null
+doveadm -v expunge -A  mailbox INBOX.Junk savedbefore 4w
+

+ 22 - 0
openvpn_sync_mx.sh

@@ -0,0 +1,22 @@
+#! /usr/bin/env /bin/bash
+#
+server=ftp.966.it
+username=mauro@966.it
+pass=20.Bottiglia.25!
+
+dir="--reverse";
+#dir: reverse: invia
+#dir: vuoto: riceve
+llcd="/etc/openvpn";
+cdcd="/openvpn_mx";
+
+echo "mirror ${dir} --delete --use-cache --verbose --allow-chown \
+--allow-suid --no-umask --parallel=2 --exclude-glob .svn"
+
+lftp -c "set ftp:list-options -a;
+open ftp://${username}:${pass}@${server};
+lcd ${llcd};
+cd ${cdcd};
+mirror ${dir} --delete --use-cache --verbose --allow-chown \
+--allow-suid --no-umask --parallel=2 --exclude-glob .svn"
+

+ 11 - 0
release.sh

@@ -0,0 +1,11 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postsuper -H -
+else
+  echo "Holding all"
+  postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//' | postsuper -H -
+fi
+postqueue -f 
+postqueue -p
+
+

+ 11 - 0
requeue.sh

@@ -0,0 +1,11 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postsuper -r -
+else
+  echo "Holding all"
+  postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//' | postsuper -r -
+fi
+postqueue -f 
+postqueue -p
+
+

+ 14 - 0
resend.sh

@@ -0,0 +1,14 @@
+if test -n "$1"; then
+  echo "Search $1"
+  lista=`postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//'`
+else
+  lista=`postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//'`
+fi
+
+for i in `echo $lista`; do
+  postsuper -h $i
+  postcat -bqh $i | sendmail -f server@altemica.net server@altemica.net
+  postsuper -d $i
+done
+
+

+ 9 - 0
restart.mqtt.sh

@@ -0,0 +1,9 @@
+#!/bin/bash
+
+echo "restarting MQTT"
+systemctl stop mqtt
+sleep 2
+systemctl start mqtt
+sleep 5
+journalctl -u mqtt -n 100 --no-pager
+

+ 9 - 0
view.sh

@@ -0,0 +1,9 @@
+if test -n "$1"; then
+  echo "Search $1"
+  postqueue -p | grep '^[A-Z0-9]' | grep "$1" | awk '{ print $1 }' | sed 's/[\!\*]//' | postcat -bqh -
+else
+  echo "All"
+  postqueue -p | grep '^[A-Z0-9]' | awk '{ print $1}' | sed 's/[\!\*]//' | postcat -bqh -
+fi
+
+