Automatyczne uruchamianie klienta OpenVPN podczas rozruchu

34

Próbuję zmusić OpenVPN do automatycznego uruchamiania przy starcie. Dzisiaj muszę ręcznie wpisać

sudo openvpn --client --config $HOME/openvpn/anonine.ovpn --ca $HOME/openvpn/anonine.ca.crt 

następnie nazwa użytkownika i hasło. Czy istnieje dobry sposób na automatyczne uruchamianie komputera podczas rozruchu?

użytkownik280409
źródło

Odpowiedzi:

42

Edit /etc/default/openvpn. Wystarczy nacisnąć Ctrl+ Alt+ Tna klawiaturze, aby otworzyć Terminal. Kiedy się otworzy, uruchom poniższe polecenia:

sudo gedit /etc/default/openvpn

Odkomentuj AUTOSTART="all"linię. Zapisz i zamknij. Uruchom ponownie system.

obraz

Mitch
źródło
(i) Jak można w ten sposób uruchomić określoną sieć VPN? (ii) Kto zapewnia uwierzytelnianie połączenia zainicjowanego w ten sposób (czy może on inicjować połączenia bez przechowywania nazwy użytkownika i hasła w postaci zwykłego tekstu)? (iii) Jeśli to możliwe, preferowane są metody cli (pozwala na implementację na serwerze bezgłowym). Mogę zastąpić nanoza gedit, ale nie mogę używać nm-applet do przechowywania danych uwierzytelniających w kluczy.
Jonathan Y.
@JathanathanY. Spójrz na te dostępne zasoby, tutaj i tutaj . Możesz również rozważyć zadanie nowego pytania.
Mitch
6
Bardzo zobowiązany. O ile mogę powiedzieć, odpowiedź na (i) (która mieści się w zakresie tego pytania) jest taka, że AUTOSTART="all"próbuje uruchomić każdy .confplik w /etc/openvpn(chciałbym jednak mieć potwierdzenie). Odpowiedź na pytanie (ii) również ma uzasadniony zakres dzięki temu pytaniu - nie można automatycznie zainicjować połączenia VPN, chyba że sekrety są dostępne bez udziału użytkownika (z oczywistych powodów preferowany jest pęku kluczy zamiast zwykłego tekstu). Przyznaję, że (iii) jest pozaszkolny i może zasługiwać na nowe pytanie. Żaden z nich nie zawiera odpowiedzi w tych linkach, które widzę.
Jonathan Y.
Jak stwierdza komentarz na obrazku, domyślnym ustawieniem AUTOSTART jest „wszystkie”. Moim zdaniem ta edycja nie jest więc potrzebna.
Yves B
1
@YvesB Wartość domyślna to „wszystko” tylko wtedy, gdy
funkcja
9

Jeśli korzystasz z systemd (16.04), skonfigurowałeś AUTOSTART = „all” i nadal się nie zaczyna, zwróć uwagę na to:

> # If you're running systemd, changing this variable will
> # require running "systemctl daemon-reload" followed by
> # a restart of the openvpn service (if you removed entries
> # you may have to stop those manually)

Po prostu zrób

systemctl daemon-reload

a następnie uruchom ponownie usługę

 sudo service openvpn restart
Erb
źródło
Idealnie, wielkie dzięki.
pylover
8

Możesz umieścić auth-user-pass filenamew anonine.ovpnmiejscu gdzie filenamejest plik z nazwą użytkownika / hasłem w 2 liniach.

Upewnij się, że filenamejest odpowiednio zabezpieczony, ponieważ będzie zawierał zwykłą nazwę użytkownika / hasło.

To jest z openvpn --help:

Client options (when connecting to a multi-client server):

--auth-user-pass [up] : Authenticate with server using username/password.
                  up is a file containing username/password on 2 lines,
                  or omit to prompt from console.

Możesz również dodać swój certyfikat do anonine.ovpndodawania go w ten sposób:

<ca>
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
</ca>
jstsmn
źródło
3

Jeśli do nawiązania połączenia nie jest wymagana nazwa użytkownika / hasło, zmień nazwę plików .ovpn, aby mieć rozszerzenie .conf.

OpenVPN powinien łączyć się przy rozruchu, nawet bez autostartu = wszystko.

Jeśli wymagana jest nazwa użytkownika / hasło,

edytuj plik .conf

edytuj auth-user-pass user-password-filename

Utwórz plik zawierający:

username
password

Jeśli chcesz połączyć się z Menedżerem sieci, najpierw wykonaj następujące czynności:

sudo apt-get install network-manager-openvpn

Upewnij się, że Twoje Ubuntu ma co najmniej 14.04. To nie działa 12.04.

Jeśli nie masz swojego pliku ca.crt, client.crt itp., Wyodrębnij je z pliku .conf.

Za pomocą Network Managera utwórz nowe połączenie VPN lub zaimportuj konf.

Dodaj certyfikaty i ta.key.

Trasy, używaj połączenia tylko do zasobów w jego sieci.

Edytuj swoje połączenie internetowe za pomocą menedżera sieci. Wybierz połącz z VPN , a następnie wybierz połączenie VPN.

Yandi Ongkojoyo
źródło
0

Chociaż może to nie być interesujące dla OP, byłem sfrustrowany tą usługą, która nie uruchamiała się do momentu zalogowania - graficzną lub jedną z kombinacji klawiszy Ctrl + Alt + F # TTY. W końcu zdałem sobie sprawę, że moja maszyna połączy się z siecią Wi-Fi tylko po zalogowaniu. Łączenie innych odpowiedzi tutaj ze standardową poradą do uruchomienia sudo update-rc.d openvpn defaultsi pierwszą odpowiedzią na inne pytanie działało dla mnie. Być może może to pomóc innemu Googlerowi.

tsbertalan
źródło
0

Dla mnie

auth-user-pass filename

nie działał

posługiwać się

askpass /etc/openvpn/filename

I tylko hasło w górnym wierszu

Działa i teraz openvpn zaczyna się przy starcie systemu

polecenia, aby sprawdzić, czy openvpn działa:

systemctl status openvpn@"your vpn user name"

wget -qO- http://ipecho.net/plain ; echo

aby sprawdzić twój ip (musi być inny niż zewnętrzny ip twojego routera)

sudo service openvpn stop

sudo service openvpn start

aby sprawdzić konfigurację bez ponownego uruchamiania komputera przez cały czas.

underxristof
źródło