Como configuro o OpenVPN para rotacionar logs?

3

Eu gostaria de rodar meus logs openvpn. Como posso fazer isso?

    
por flickerfly 08.04.2014 / 17:39

2 respostas

7

Adicione o conteúdo do seguinte ao novo arquivo /etc/rsyslog.d/20-ovpn.conf. Isso garante que os eventos de log enviados para o rsyslog sejam bem gerenciados.

# Create a template for the vpn log location
$template OpenVPN,"/var/log/openvpn/ovpn.log"

# Save log events where the programname starts with ovpn like ovpn-server to the 
# location mentioned in the template
:programname, startswith, "ovpn-" -?OpenVPN

# Stop processing ovpn-* log events 
:programname, startswith, "ovpn-" ~

Execute este comando e certifique-se de que não haja saída.

grep ^log /etc/openvpn/server.conf

Se este comando gerar qualquer linha, então você precisa ir para a configuração e comentar a linha de log ou de anexação de log. Isso acionará o registro padrão que o envia ao syslog.

Por fim, crie um novo arquivo /etc/logrotate.d/ovpn e adicione o conteúdo abaixo a esse arquivo. Isso fará uma rotação semanal ou girará quando um arquivo de log tiver um tamanho de 100M. Ele vai manter 4 semanas e comprimir tudo menos os dois últimos.

/var/log/openvpn/*.log {
        weekly
        size 100M
        rotate 4
        compress
        delaycompress
        missingok
        notifempty
        create 640 syslog adm
}

Reinicie os serviços rsyslog e openvpn para garantir que essas novas configurações sejam executadas. Você deve ver / var / log / openvpn e /var/log/openvpn/ovpn.log ser criado imediatamente pelo rsyslog após a reinicialização do openvpn.

    
por flickerfly 08.04.2014 / 17:39
2

Parece que o exemplo acima usa a sintaxe do rsyslog legado. A documentação diz que esta seria a sintaxe atual:

if $programname startswith 'ovpn-' then /var/log/openvpn/ovpn.log
& ~

Eu testei e funciona para mim (TM).

    
por Josip Rodin 16.09.2015 / 16:59