Alerta de email na conexão VPN

0

Eu esperava que alguém tivesse uma ideia de como obtê-lo para que, sempre que alguém estabelecesse uma conexão VPN em minha rede, eu recebesse um e-mail sobre isso.

Posso fazer isso com um script sendo executado e verificando os logs do openvpn? Eu usei o script pivpn para configurar o servidor openvpn. Então poderia ser feito verificando a opção pivpn -c?

Eu imagino que eu poderia fazer isso com uma declaração if than nos logs do openvpn, mas como eu conseguiria mostrar apenas novas conexões?

    
por Dan.T 01.07.2017 / 03:46

1 resposta

0

Você pode alterar o arquivo de log para ver somente as adições mais recentes a um script que envia e-mails quando novos correspondam aos critérios

Possível código a ser usado.

  • Esse código usa o mutt para enviar o email.
  • defina seu arquivo de log para assistir na variável: logfile
  • defina seu endereço de e-mail na variável: emailaddress
  • Existe um laço permanente para o código permanente.
  • A cauda -f segue à medida que as linhas são adicionadas ao arquivo e o -c 0 diz para procurar apenas os últimos 0 bytes quando ele é reiniciado, para que ele não leia as últimas 10 linhas e envie um extra alertas antigos.

    #!/bin/sh
    words_to_match="Connection established"
    logfile=~/test.log
    emailaddress="[email protected]"
    
    tail -f -c 0  ${logfile} | (while true ; do
        read -r line_to_check
        echo ${line_to_check} | grep -q ${words_to_match}
        if [ "$?" = "0" ] ; then
          echo "${line_to_check}" | mutt -s "VPN Login" ${emailaddress}
        fi
      done
    )
    
por washingon 01.07.2017 / 06:53