OpenVPN에서 연결을 끊는 방법?


29

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있지만, 그게 영향을 미칠 것 같지 않습니다.


ifconfig는 정확히 무엇입니까?
Adam

어느 쪽입니까? eth0, lo, tun2 또는 wlan0
Adam

간단히> sudo /etc/init.d/network-manager restart <
Qasim

VPN이 이런 방식으로 시작되면 네트워크 관리자에 나타나지 않습니다. 나는 항상 네트워크 관리자 연결 및 연결 끊기를 사용했으며 현재 테스트 할 VPN이 없지만 궁금합니다.
Dennis

답변:


45

이 명령은 분명히 저에게 효과적이며 당신에게도 효과가 있습니다.

sudo killall openvpn

sudo apt-get install psmisc일부 빌드가 필요할 수 있습니다 .
Geotheory

우분투 16.04에서 -9를 죽여야했습니다 (예, 알고 있습니다 ...)
Gregor

11

내 경우의 성공적인 단계는 다음과 같습니다.

# 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나를 위해 작동하지 않았지만 위의 단계가 수행되었습니다.


글쎄, 이것은 내 의견으로는 가장 좋은 대답입니다. 강제 종료 프로세스는 이상한 방법이지만 서비스 중지를 요청하면 필요한대로 작업을 수행해야합니다.
Sopalajo de Arrierez

일반적으로, 인터럽트를 시도하거나 완전히 기존에 존재하기 전에는 "kill -9"를하지 말아야합니다. 프로그램은 인터럽트를 포착하여 정리할 수 있지만 신호 9 (용어)를 포착 할 수는 없습니다. 특히 openvpn의 경우이를 -9사용하여 사후 스크립트를 실행할 수 없으며 현재 유효하지 않은 경로가 남겨질 가능성이 높습니다. 이상적으로 kill -SIGINT는 pid가 끝날 때까지 몇 초 정도 기다렸다가 그 전에 종료되지 않은 경우 에만 -SIGTERM/ 로 이동하십시오 -9.
dannysauer

4

이 시도

killall -SIGINT openvpn

http://openvpn.net/index.php/open-source/documentation/howto.html#control에서 보낼 수있는 다양한 신호에 대한 자세한 정보를 얻을 수 있습니다.


killall -SIGINT openvpnopenvpn (15360) : 허용되지 않는 작업 openvpn : 프로세스를 찾을 sudo killall -SICINT openvpn 수 없음 SICINT : 알 수없는 신호. killall -l은 신호를 나열합니다.
Adam

1
sudo killall openvpn새로운 터미널에서 나를 위해 일했습니다.
Adam

@Adam : 그것은 SIGINT아니다SICINT
Dzamo Norton

kill 및 killall 명령은 기본적으로 SIGTERM을 전송하는데, 문서에는 SIGINT와 동일한 효과가 있습니다. 따라서 철자가 정확하다면 동등하게 작동합니다. ;)
dannysauer

3

OpenVPN을 시작한 터미널에서 CTRL+ C를 누르십시오 .


2
-daemon (배경) 플래그로 시작된 경우 어떻게됩니까? 이 경우에는 불가능합니다.
mr-sk

1
또한 이것은 'tun0'을 인터페이스로 남겨 두므로 실행 중에 재부팅하거나 시스템 구성 파일을 편집하지 않고 다시 시작할 수 없습니다.
Dennis

1
실수로 터미널을 닫으면 어떻게됩니까? ?
varun

ifconfig tun0 down이 경우 @Dennis가 도움을줍니다.
gnysek

2

경우 sudo killall openvpn작업을 완료하지 않는 다음 날카로운 치명적인 솔루션이 될 것이다 (나는 그것을 몇 번 경험) :

pgrep openvpn | xargs sudo kill -9

0

실행 후 sudo killall openvpn또는 service openvpn stop가상 인터페이스 "tun0"은 라우트 테이블에서 열린 상태로 유지되므로 openvpn 서비스가 종료되므로 실제로 관련 연결이 손실됩니다.

해결책은 openvpn 서비스가 연결될 때마다 생성되므로 openvpn 서비스를 종료 한 후이 가상 연결을 삭제하는 것입니다.

따라서 openvpn 연결을 끊으려면 아래 명령을 실행해야합니다.

$ sudo killall openvpn
$ sudo ip link delete tun0

-1

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에 있으며 <>

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.