Назад | Перейти на главную страницу

как автоматически запустить openvpn (клиент) на ubuntu 12.04 cli?

У меня есть файл * .ovpn, который работает, если я ввожу

sudo openvpn client.ovpn

Теперь я хотел бы запустить openvpn при загрузке компьютера. Это безголовая версия ubuntu - если это важно - 12.04 64bit.

Я скопировал filename.ovpn в / etc / openvpn, но он не запускается, даже если я запускаю

service openvpn start

Как я могу это сделать?

В Ubuntu любая конфигурация VPN, которую вы помещаете в файл с именем /etc/openvpn/$NAME.conf будет автоматически запущен.

Итак, все, что вам нужно сделать, это скопировать свой client.ovpn к /etc/openvpn/client.conf. Я предлагаю вам также использовать абсолютные пути в вашем client.conf для любых ключей, скриптов и тд.

Конечно, вы можете дважды проверить /etc/default/openvpn файл. По умолчанию он автоматически запускает все VPN, но AUTOSTART значение могло быть изменено на noneили быть списком определенных конфигураций, которые вы хотите запускать автоматически.

Для ОС Debian

  1. Поместите файл конфигурации в / etc / openvpn, например /etc/openvpn/client.conf.

  2. Префикс / закомментируйте строки, начинающиеся с «вниз» и «вверх» (#down и #up) - или удалите их (это вызов внешнего скрипта) из client.conf

  3. Перезагрузить конфигурацию openvpn

    /etc/init.d/openvpn reload /etc/openvpn/client.conf
    
  4. Проверить с

    ifconfig
    

    Вы видите интерфейс tun0? Есть ли IP-адрес? Отлично.

  5. Запомните IP, перезагрузитесь и попробуйте подключиться.

Конфигурация клиента должна иметь расширение .conf и нет .ovpn. Изменение client.ovpn к client.conf в /etc/openvpn должно сработать

Было бы неплохо иметь способ сделать это не хакерским способом, но на данный момент это необходимо.

1) Создайте файл myopenvpn в / etc / init /

nano /etc/init/myopenvpn

2) Вставляем в myopenvpn и сохраняем:

# OpenVPN autostart on boot upstart job

start on runlevel [2345]
stop on runlevel [!2345]

respawn

exec /usr/sbin/openvpn --status /var/run/openvpn.client.status 10 --cd /etc/openvpn --config /etc/openvpn/client.conf --syslog openvpn

ИСТОЧНИК: http://www.hackerway.ch/2012/12/11/how-to-auto-start-openvpn-client-in-debian-6-and-ubuntu-12-04/#comment-79

Вам нужно будет поместить эту информацию в сценарий инициализации для openvpn в /etc/init.d. И aqd соответствующие символические ссылки на файлы /etc/rc.d соответствующего уровня выполнения, чтобы он запускался и останавливался.

Обратите внимание, что начиная с версии 16.04 вам понадобится этот:

systemctl start openvpn@server.service

Я сделал это в системе CentOS, вставив следующую команду в /etc/rc.local:

openvpn --config /path/to/file.ovpn &

Команды в этом файле выполняются после того, как каждый многопользовательский уровень запуска завершает загрузку, и, в отличие от добавления его в сценарий запуска, он не замедлит вашу загрузку, если VPN долго настраивается, но некоторые люди могут назвать это взломом.