Ubuntu GNOME 16.04에서 특정 네트워크를 사용할 때 VPN에 자동 연결


12

Unity에서 Network Manger는 연결이 활성화 된 경우 VPN을 자동으로 사용하도록 구성하는 모든 연결에 사용할 수있는 확인란이 있습니다.

우분투 16.06 Unity의 연결 설정 그림

Ubuntu GNOME 16.04에서 이와 같은 옵션을 얻는 방법이 있습니까? (그놈 3.18을 사용합니다). 연결 설정 페이지에는이 옵션이 없습니다. 여기에 이미지 설명을 입력하십시오


우분투에 오신 것을 환영합니다! 이 답변 은 둘 다 동일한 NetworkManager를 공유 함을 나타냅니다. 다시 확인해 주시겠습니까? 서로 다른 경우 Ubuntu GNOME 아래에 NetworkManager 스크린 샷을 포함시킬 수 있습니까?
Andrea Lazzarotto


@AndreaLazzarotto 감사합니다! 스크린 샷을 제공했습니다. 나는에서 제안 된 vpnautoconnect 노력할 것 이 질문 이 작동하는지 확인합니다. 그러나 Network Manger 자체에서 설정을 활성화 할 수 있는지 궁금합니다. 두 가지 특성 모두에서 동일한 Network Manger입니다.
S.Mohsen sh 08/08/08

이 기능은 여전히 ​​우분투 17.04에서 누락 된 것으로 보입니다. 왜 제거되었는지 확실하지 않습니다. 솔루션을 검색하고 아주 적은 것을 찾은 후에는 더 많은 사람들이 VPN을 사용하지 않고 자동 연결 기능을 선호하는 것이 이상해 보입니다.
Rsync

시스템 /etc/NetworkManager/system-connections에 연결 프로파일로 채워진 디렉토리가 있고 구성을 편집 할 필요가 없다면 주어진 네트워크 인터페이스에 대해 VPN에 자동 연결하는 주제에 대해 다른 곳에 게시 한 답변을 확인하는 것이 좋습니다.
S0AndS0

답변:


22

나는 이것에 대한 답을 찾았습니다. 이상하게도 패널이나 설정을 사용하는 대신 Network Manager를 수동으로 열어야합니다.

따라서 Terminaltype nm-connection-editor. 이렇게하면 열린 창의 OPs 첫 번째 이미지에 옵션이 표시됩니다.

이것은 16.04 및 17.04에서 저에게 효과적입니다. 다행스럽게도 다양한 네트워크 관리자를 다음 버전의 그놈에 통합 할 수 있기를 바랍니다.


이것은 18.04에서도 작동합니다-감사합니다! 해당 설정이 어디에 있는지 명확하지 않았습니다.
JohnnyCoder

데비안 9 스트레치에서도 작동합니다. 감사합니다!
Christian Toffolo

1

스크립트로 문제를 해결했습니다.

/etc/NetworkManager/dispatcher.d

이 폴더에는 네트워크 상태가 변경 될 때마다 네트워크 관리자가 알파벳 순서로 호출하는 스크립트가 포함되어 있습니다. 이것은 VPN이 부팅 / 시작시뿐만 아니라 일시 중지 / 수면 후 다시 시작될 때 활성화되는 이점이 있습니다 (다른 솔루션과 다릅니다).

이것이 작동하려면 Network Manager에 이미 설정된 VPN 연결이 필요합니다. 그렇지 않으면 질문하지 않았습니다.

  1. 첫 단계 : 나는이 (독일어) 페이지 ( https://wiki.ubuntuusers.de/NetworkManager/Dispatcher/ ) 의 조언을 따랐습니다 . 새로운 스크립트를 열어서 명명했습니다.

    sudo YOURTEXTEDITOR /etc/NetworkManager/dispatcher.d/02VPN1
    

그리고 쓴 :

    #!/bin/bash
    VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
    if [ "$2" = "up" ]; then
       sleep "3s"
       nmcli con up id "${VPN_CONNECTION_NAME}"
    fi

NAME_OF_YOUR_VPN_CONNECTION은 자동 연결하려는 연결을 설정하는 데 사용한 연결 파일 NAME_OF_YOUR_VPN_CONNECTION.conf의 이름입니다.

[ "$ 2"= "up"] 조건은 네트워크 연결 (인터넷 연결)을 시작할 때만 VPN 연결이 자동으로 연결됨을 의미합니다. VPN 서비스가 실행되면 비활성화하거나 다른 VPN을 선택할 수 있습니다.

VPN을 비활성화하지 않고이 VPN을 실행하고 싶을 때마다이 조건없이 스크립트를 작성할 수 있습니다.

    #!/bin/bash
    VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
    sleep "3s"
    nmcli con up id "${VPN_CONNECTION_NAME}"

이 파일은 루트로만 설정할 수 있으므로 추가 작업없이 루트가 소유합니다. 그렇게되어야합니다.

마지막으로 :이 파일을 실행 가능하게 만드십시오. 그렇지 않으면 스크립트가 실행되지 않습니다. 터미널에서 :

    sudo chmod +x  /etc/NetworkManager/dispatcher.d/02VPN1
  1. 두 번째 단계 (위 링크의 지침과는 다릅니다. https://ubuntuforums.org/showthread.php?t=2193559&p=12990193#post12990193 에서 조언을 사용했습니다.

이 프로세스는 루트에서 실행되며 루트는 아직 VPN에 사용하는 비밀번호에 액세스 할 수 없습니다. 다음을 수행하십시오. / etc / NetworkManager / system-connections에서 NAME_OF_YOUR_VPN_CONNECTION 파일을 루트로여십시오. 터미널을 열고 다음을 수행하십시오.

    sudo YOURTEXTEDITOR /etc/NetworkManager/system-connections/NAME_OF_YOUR_VPN_CONNECTION

a) 회선 변경

    password-flags=1 

    password-flags=0

b) 하단에

    [vpn-secrets]
    password=PASSWORDOFYOURCONNECTION

파일을 저장하고 닫습니다.

  1. 이제 네트워크 관리자를 다시 시작하십시오. 단말기:

    systemctl restart NetworkManager
    

새로운 설정을 초기화합니다. 완료해야합니다.

나는 어제 이것을했고, 내가 볼 수있는 한 잘 작동합니다. 보장하지 않습니다!

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