Iniciar openvpn automaticamente no Linux

Posted: 21/11/2010 in Linux
Etiquetas:, , , ,

Boa noite pessoal,

esta semana estamos finalizando um projeto para interligar duas redes: Matriz e Filial. Como ferramenta de apoio, utilizamos o OpenVPN para fechar o túnel VPN. Nestes últimos dias fizemos a validação das regras e a homologação da conexão(tudo funcionando). Não vou apresentar aqui os passos necessários para instalar e configurar o OpenVPN já que na internet encontramos excelentes materiais sobre o assunto, mas apresentarei um script que utilizamos para iniciar o serviço OpenVPN de forma automática, na inicialização do Linux (distribuições usadas Ubuntu e Slackware)

No Ubuntu

Acessar o diretório que contem os arquivos de inicialização

# cd /etc/init.d

Criar o arquivo de inicialização automática do Openvpn

# vim rc.openvpn

(Obs: o nome usado pode ser outro, este é o padrão que utilizo)

Adicionar o seguinte conteúdo ao arquivo

#!/bin/bash

DIRECTORY=”/usr/sbin”  # caminho que contem o arquivo de execução do openvpn
DIR_CONFIG=”/etc/openvpn”  # Diretório que contem as configurações do openvpn

start() {
$DIRECTORY/openvpn –config $DIR_CONFIG/filial.conf –script-security 3   system -daemon &
}

stop() {
killall -TERM openvpn
}

case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo “*** Usage: $0 {start|stop|restart}”
exit 1
esac

exit 0

 

Obs: não esquecer de alterar o nome do arquivo de configuração, no caso, usamos filial.conf

Alterar as permissões do arquivo

# chmod 755 rc.openvpn

Criar a entrada de inicialização

# update-rc.d rc.openvpn defaults

No Slackware

Acessar o diretório que contem os arquivos de inicialização

# cd /etc/rc.d

Criar o arquivo de inicialização automática do Openvpn

# vim rc.openvpn

(Obs: o nome usado pode ser outro, este é o padrão que utilizo)

Adicionar o seguinte conteúdo ao arquivo

#!/bin/bash

DIRECTORY=”/usr/sbin”  # caminho que contem o arquivo de execução do openvpn
DIR_CONFIG=”/etc/openvpn”  # Diretório que contem as configurações do openvpn

start() {
$DIRECTORY/openvpn –config $DIR_CONFIG/filial.conf –script-security 3   system -daemon &
}

stop() {
killall -TERM openvpn
}

case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo “*** Usage: $0 {start|stop|restart}”
exit 1
esac

exit 0

Obs: não esquecer de alterar o nome do arquivo de configuração, no caso, usamos filial.conf

Alterar as permissões do arquivo

# chmod 755 rc.openvpn


Pronto, a partir de agora sempre que o S.O for ligado/reiniciado o Openvpn ligará automaticamente.

Espero que seja útil. Um abraço !

Comentários
  1. Marcelo diz:

    Muito bom seu tutorial, fiz o procedimento e funciou perfeitamente no Debian. Me ajudou muito.

  2. Serviço OpenVPN diz:

    boa noite, este procedimento funciona também para Centos, estou tendo problema para iniciar o serviço do openvpn no firewall, sempre que reiniciado tenho que subir o serviço manualmente?

    • Boa noite amigo, no CentOS o procedimento é um pouco diferente.
      Edite o arquivo (aqui usaremos openvpn ) e logo abaixo da primeira linha do script adicione a seguinte entrada:

      chkconfig: 35 98 99

      Salve o arquivo. Em seguida altere a permissão do arquivo:
      # chmod 755 openvpn

      Como é CentOS não usaremos o comando “update-rc.d rc.openvpn defaults” para adicionar a entrada na inicialização, aqui usaremos:

      # chkconfig –add openvpn ;
      # chkconfig –level 35 openvpn on

      Pronto !!! A partir de agora seu serviço deverá subir de forma automatica.

      Para fazer um teste:
      # service openvpn stop
      # service openvpn start

      Espero que a resposta seja útil !

Deixe um comentário