Я подключаюсь с помощью серверов VPNBook, и она отлично работает с этой командой:
sudo openvpn --config /etc/openvpn/vpnbook-udp-53.ovpn --auth-user-pass /etc/openvpn/password.txt
, но я просто не могу понять, как остановить это без перезагрузки.
Я пробовал service openvpn stop
и /etc/init.d/vpnbook stop
, но это, похоже, не влияет на это.
Эта команда определенно работает для меня, и она должна работать и для вас.
sudo killall openvpn
Успешные шаги в моем случае были:
# stop the service
$ sudo /etc/init.d/openvpn stop
# find the process if for some reason it keeps running
$ lsof -i | grep openvpn
# kill the proccess(s) by its PID
$ kill -9 <PID>
# if necessary restart the service again
$ sudo /etc/init.d/openvpn start
По какой-то причине killall -SIGIN openvpn
не работал для меня, но шаги, описанные выше, сделали.
Просто нажмите CTRL kbd> + C kbd> в терминале, который вы только что запустили OpenVPN.
после запуска sudo killall openvpn
или service openvpn stop
виртуальный интерфейс «tun0» останется открытым и на него будут ссылаться в таблице маршрутов, поэтому фактически связанные соединения будут потеряны, так как служба openvpn будет уничтожена.
Решение состоит в том, чтобы удалить это виртуальное соединение после уничтожения сервиса openvpn, так как оно создается каждый раз, когда сервис openvpn подключается.
, поэтому вам нужно запустить следующие команды для отключения openvpn:
$ sudo killall openvpn
$ sudo ip link delete tun0
Попробуйте это
killall -SIGINT openvpn
Вы можете получить больше информации о различных сигналах, которые вы можете отправить здесь: http://openvpn.net/index.php/open- источник / документация / howto.html управления #
Если sudo killall openvpn
не завершит работу (я испытал это несколько раз), то острым и фатальным решением будет:
pgrep openvpn | xargs sudo kill -9
sudo update-rc.d отключить openvpn
Или отредактировать файл конфигурации в / etc / default / openvpn
sudo nano / etc / default / openvpn
И раскомментируйте строку:
#AUTOSTART="none"
Так это выглядит так:
AUTOSTART="none"
Тогда вам нужно будет выполнить:
sudo service openvpn start < vpn-name >
вручную запустить VPN.
sudo service openvpn stop < vpn-name >
для ручной остановки VPN.
< vpn-name> - это имя файла конфигурации без расширения .conf
, расположенное в / etc / openvpn и без < >
Используйте следующую команду, где 0
— номер туннеля:
sudo ifconfig tun0 down
sudo openvpn3 session-manage --disconnect --config $'client'.ovpn
Замените клиента соответствующим именем.
Это закроет сеанс.
Я обнаружил 2 открытых сеанса с одним и тем же путем конфигурации. Поэтому я не смог использовать
openvpn3 session-manage --disconect --config
session-manage: ** ОШИБКА ** Было найдено более одного сеанса с данным именем профиля конфигурации.
Поэтому я сделал скрипт для циклического прохождения сеансов (идентификаторы сеансов не всегда совпадают с путями конфигурации)
ACTIVE_SESSIONS=$(openvpn3 sessions-list | grep -i 'path' | awk '{p=index($0, ":");print $2}')
echo $ACTIVE_SESSIONS
for instance in $ACTIVE_SESSIONS; do
openvpn3 session-manage --disconnect --session-path ${instance}
done
Используйте следующую команду:
$openvpn3 session-manage --session-path /net/openvpn/v3/sessions/..... --disconnect
вы можете получить путь с помощью следующей команды:
openvpn3 sessions-list