12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- sendEmail() {
- if [ $# -ne 7 ]; then
- echo -en "ERROR:\tError interno en sendEmail.\n"
- exit 1
- fi
- to=$1
- shift
- from=$1
- shift
- pass=$1
- shift
- subject=$1
- shift
- host=$1
- shift
- port=$1
- shift
- message=$@
- echo -en "$message" | mailx -s "$subject" -S smtp-use-starttls -S smtp-auth=login -S smtp=smtp://$host:$port -S from="$from" -S smtp-auth-user="$from" -S smtp-auth-password="$pass" $to >> $logFile 2>&1
- unset to from pass subject host port message
- }
- getVirtualHosts() {
- cont=1
- for virtualHost in $(find -L "$1" -type f);do
- grep ^[[:space:]]*auth_basic "$virtualHost" > /dev/null 2>&1
- if [ $? -eq 0 ];then
- # Si tiene la directiva "auth_basic" activada no lo comprobamos
- continue
- fi
- linea=$(grep ^[[:space:]]*server_name "$virtualHost")
- if [ $? -ne 0 ];then
- # Si no tiene la directiva "server_name" no lo comprobamos
- continue
- fi
- for hostname in $linea;do
- hostname=$(echo "$hostname" | sed 's/;//g')
- if [ $hostname != "server_name" ] && [ $hostname != "localhost" ];then
- hostnames[$cont]=$hostname
- cont=$((cont+1))
- fi
- done
- done
- # Eliminar repetidos
- hostnames=($(echo "${hostnames[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' '))
- echo -en "Hostnames: ""${hostnames[@]}""\n"
- unset linea cont hostname
- }
- logFile="."$(basename $0)".log"
- hostnames=""
- getVirtualHosts "/etc/nginx/sites-enabled/"
|