Jak skonfigurować VPN z OpenVPN na Debian 9 Stretch Linux
- 1101
- 229
- Klaudia Woś
Rozkłady
Ten przewodnik jest testowany dla Debian 9 Stretch Linux, ale może działać z innymi najnowszymi wersjami Debian.
Wymagania
- Ten przewodnik zakłada, że uruchamiasz Debiana na VPS lub na zdalnym serwerze, ponieważ jest to najbardziej prawdopodobny scenariusz dla VPN.
- Działający instalacja debiana odcinka z dostępem do korzeni
Trudność
ŚREDNI
Konwencje
- # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą
sudo
Komenda - $ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny
Konfigurowanie iPtables
Konfigurowanie własnego VPN nie jest małym zadaniem, ale istnieje wiele powodów, dla których chcesz to zrobić. Po pierwsze, kiedy uruchamiasz własny VPN, masz nad nim pełną kontrolę i wiesz, co robi.
Bezpieczeństwo jest ważnym czynnikiem dla VPNS. Możliwe jest ustawienie prostego w ciągu kilku minut, ale wcale nie będzie bezpieczny. Musisz podjąć odpowiednie kroki, aby zapewnić, że zarówno serwer, jak i Twoje połączenia pozostają prywatne i zaszyfrowane.
Przed wyruszeniem w tę drogę możesz rozważyć szyfrowanie swoich dysków, zabezpieczenie jądra z Selinux lub Pax i upewnienie się, że wszystko inne jest zamknięte.
IPTABLES to duża część bezpieczeństwa serwera. Potrzebujesz iptables, aby upewnić się, że informacje nie wyciekają z VPN. IPTABLES działa również, aby zapobiec nieautoryzowanym połączeniom. Tak więc pierwszym krokiem w konfiguracji VPN na Debian jest konfiguracja IPTables.
Znajdź swój interfejs WAN
Zanim zaczniesz pisać reguły IPTABLES, musisz wiedzieć, dla którego interfejsu piszesz.
Używać ifconfig
Lub ip a
Aby wyszukać interfejs, z którym serwer jest podłączony do Internetu.
Reszta tego przewodnika określa ten interfejs ETH0
, Ale to prawdopodobnie nie będzie twoje. Zamiast tego zamieniaj się w nazwę interfejsu sieciowego twojego serwera.
Tworzenie zasad IPTABLES
Każdy użytkownik i administrator Linux uwielbia pisać reguły iptables, prawda? To nie będzie takie złe. Skomponujesz plik ze wszystkimi poleceniami i po prostu przywrócisz go do IPTABLES.
Utwórz swój plik. Możesz zrobić to miejsce, które chcesz zapisać lub po prostu zrzucić /TMP
. IPtables i tak zapisze twoje zasady, więc /TMP
jest w porządku.
$ vim /tmp /v4rules
Uruchom plik, dodając *filtr
Aby IPTables wiedział, że są to reguły filtra.
Tak, będzie też IPv6, ale będzie znacznie krótszy.
Zasady pętli
Zacznij od najprostszego zestawu reguł, interfejsu LOOPBACK. Te po prostu informują iptables, aby zaakceptowali tylko ruch z looback pochodzący z LocalHost.
-A wejście -i lo -J akceptuj -a ! -I lo -s 127.0.0.0/8 -J Odrzucone -a wyjście -o lo -j zaakceptuj
Zezwalając na ping
Następnie prawdopodobnie chcesz móc pingować swój serwer. Ta grupa reguł pozwala na ping przez.
-A wejście -p ICMP -M Stan --state NOWOŚĆ --ICMP -Type 8 -J Akceptuj -a wejście -p ICMP -M Stan --state, powiązane -j akceptuj -a wyjściowe -p icmp -j akceptuj
Konfiguracja SSH
Prawdopodobnie powinieneś zmienić SSH z portu 22, więc pozwól, aby Twoje zasady to odzwierciedlało.
-A wejście -i ETH0 -p TCP -M Stan --state Nowy, ustalony - -dport 22 -j Zaakceptuj -a wyjściowe -o ETH0 -p TCP -M Stan --state ustalone -sort 22 -j Zaakceptuj
Pozwól OpenVpn przez
Oczywiście będziesz chciał pozwolić na ruch w OpenVPN. Ten przewodnik użyje UDP dla OpenVPN. Jeśli zdecydujesz się na TCP, pozwól, aby reguły to odzwierciedlało.
-A wejście -i ETH0 -p UDP -M Stan --state Nowy, ustanowiony - -dport 1194 -j Zaakceptuj -a eth0 -p Udp -m State --state ustalone -Sport 1194 -J Zaakceptuj
DNS
Będziesz również chciał umożliwić ruch DNS za pośrednictwem serwera VPN. Będzie to zarówno przez UDP, jak i TCP.
-A wejście -i ETH0 -p UDP -M Stan -State ustalone - -Sport 53 -J Zaakceptuj -a wyjściowe -o ETH0 -p UDP -m Stan --state NOWY, Ustanowiony -DPORT 53 -J Akceptuj -a Wejście -i ETH0 -p TCP -M Stan -State ustalone - -Sport 53 -J Zaakceptuj -a wyjściowe -O ETH0 -p TCP -m Stan --state Nowy, ustanowiony -DPORT 53 -j Zaakceptuj
HTTP/s dla aktualizacji
Może wydawać się dziwne, aby umożliwić ruch HTTP/s, ale ty Do Want, że Debian był w stanie się zaktualizować, prawda? Reguły te pozwalają Debianowi inicjować żądania HTTP, ale nie odbierać ich z zewnątrz.
-A wejście -i ETH0 -p TCP -M Stan -State ustalone -SPORT 80 -J Akceptuj -a wejście -i ETH0 -p ETH0 -P TCP -M Stan --state Nowy, ustanowiony -DPORT 80 -J Zaakceptuj -a wyjściowe -O ETH0 -p TCP -m Stan --state Nowy, ustanowiony -DPORT 443 -J Akceptuj
NTP, aby zsynchronizować zegar
Zakładając, że nie zamierzasz ręcznie zsynchronizować zegara serwera i zegarów klienta, będziesz potrzebować NTP. Pozwól temu też.
-A wejście -i ETH0 -p UDP -M Stan -State ustalone - -Sport 123 -J Zaakceptuj -a wyjściowe -o ETH0 -p UDP -m Stan --state NOWY, Ustanowiony -DPORT 123 -J Zaakceptuj
Tun to tunel przez VPN
W tym przewodniku używa tunelu do tunelu przez VPN, jeśli używasz stukania, odpowiednio dostosuj.
-A wejście -i tun0 -j akceptuj -a do przodu -i tun0 -j akceptuj -a wyjściowe -o tun0 -j akceptuj
Aby VPN przekazał ruch do Internetu, musisz włączyć przekazanie z TUN do fizycznego interfejsu sieciowego.
-A Forward -i Tun0 -O ETH0 -S 10.8.0.0/24 -J Zaakceptuj -a Forward -m Stan -State ustalone, powiązane -j zaakceptuj
Log zablokował ruch
Prawdopodobnie powinieneś mieć iptables rejestrować ruch, który blokuje. W ten sposób jesteś świadomy wszelkich potencjalnych zagrożeń.
-A wejściowe -m limit - -limit 3/min -J log - -log -prefix "iptables_input_dened:" - -log -poziom 4 -A do przodu -m limit -limit 3/min -J log - -log -prefix " iptables_forward_denied: " - -LOG -LEVEL 4 -A Output -m limit - -limit 3/min -J log - -log -prefix" iptables_output_dend: " - -LOG -LEVEL 4
Odrzuć cały pozostały ruch
Teraz, gdy logujesz wszystko, co nie pasuje do istniejących zasad, odrzuć to.
-A wejście -J odrzucanie -a do przodu -J Odrzucone -a wyjście -j Odrzucaj
Nie zapomnij zamknąć pliku POPEŁNIAĆ
.
Nat
Ta następna część wymaga innej tabeli. Nie możesz dodać go do tego samego pliku, więc musisz po prostu uruchomić polecenie ręcznie.
Wykonaj ruch z maskarady VPN jako ruch z fizycznego interfejsu sieciowego.
# iptables -t nat -a posttrouting -s 10.8.0.0/24 -O ETH0 -J MASQUERADE
Zablokuj cały ruch IPv6
Ruch może wyciekać przez IPv6 i tak naprawdę nie ma teraz potrzeby używania IPv6. Najłatwiej jest to całkowicie zamknąć.
Utwórz kolejny plik i wrzuć reguły, aby odrzucić cały ruch IPv6.
$ vim /tmp /v6rules
*Filter -a input -J odrzucanie -a do przodu -J odrzucone -a wyjście -j odrzucaj zatwierdzenie
Popełnić wszystko
Zacznij od wypłukania wszystkich istniejących zasad IPTables.
# iptables -f && iptables -x
Zaimportuj każdy z utworzonych plików reguł.
# IPTABLES-RESTORE < /tmp/v4rules # ip6tables-restore < /tmp/v6rules
Sprawiając, że się trzyma
Debian ma pakiet, który będzie obsługiwał automatycznie ładowanie twoich reguł iptable, więc nie musisz tworzyć zadania cron ani nic takiego.
# apt Zainstaluj iptables-persistent
Proces instalacji zapyta Cię, czy chcesz zapisać swoje konfiguracje. Odpowiedz: „Tak."
W przyszłości możesz zaktualizować swoje reguły, uruchamiając następujące polecenie Linux.
# usługa netfilter-persistent zapisz
Dodatkowa konfiguracja
Jest jeszcze kilka rzeczy, które musisz zrobić, aby wszystkie interfejsy sieciowe działały w razie potrzeby.
Najpierw otwórz się /etc/hosts
i skomentuj wszystkie linie IPv6.
Następnie otwórz /etc/sysctl.D/99-SYSCTL.conf
. Znajdź i pocukaj następującą linię.
internet.IPv4.ip_forward = 1
Dodaj następne linie, aby całkowicie wyłączyć IPv6.
internet.IPv6.conf.Wszystko.disable_ipv6 = 1 netto.IPv6.conf.domyślny.disable_ipv6 = 1 netto.IPv6.conf.lo.disable_ipv6 = 1 netto.IPv6.conf.ETH0.disable_ipv6 = 1
Na koniec zastosuj swoje zmiany.
# sysctl -p
Co dalej
To pierwsza część w dół. Zapora Twojego serwera jest teraz gotowa do uruchomienia OpenVPN, a Twoja sieć jest również poprawnie wyrównana.
Następnym krokiem jest utworzenie organu certyfikatów do obsługi wszystkich klawiszy szyfrowania. To nie jest długi proces, jak to było, ale jest równie ważne.
Urząd certyfikacji
Użyj Easy-RSA, aby ustanowić organ certyfikat.
To druga część konfigurowania serwera OpenVPN na debian odcinek.
VPN opierają się na szyfrowaniu. Absolutnie ważne jest, aby szyfrować swoje połączenia z klientami, a także sam proces połączenia.
Aby wygenerować klucze niezbędne do zaszyfrowanej komunikacji, musisz ustanowić organ certyfikacyjny. To naprawdę nie jest takie trudne i istnieją narzędzia, które jeszcze bardziej upraszczają proces.
Instalowanie pakietów
Zanim zaczniesz, zainstaluj OpenVPN i Easy-RSA.
# apt Zainstaluj OpenVpn Easy-RSA
Skonfiguruj katalog
Pakiet OpenVPN stworzył dla siebie katalog pod adresem /etc/openvpn
. Tam możesz skonfigurować Urząd Certyfikatu.
Easy-RSA zawiera skrypt, który automatycznie tworzy katalog ze wszystkim, czego potrzebujesz. Użyj go, aby utworzyć katalog Authority Certificate Authority.
# make-cadir/etc/openvpn/certs
Wprowadź ten katalog i utwórz miękki związek między najnowszą konfiguracją OpenSSL z Openssl.CNF
.
# ln -s openssl -1.0.0.CNF Openssl.CNF
Ustaw zmienne
Wewnątrz folderu znajduje się plik o nazwie, vars
. Ten plik zawiera zmienne, których Easy-RSA użyje do generowania klawiszy. Otwórz to. Istnieje kilka wartości, które musisz zmienić.
Zacznij od znalezienia Key_Size
zmienna i zmiana jej wartości 4096
.
Eksport Key_Size = 4096
Następnie znajdź blok informacji dotyczących lokalizacji i tożsamości organu certyfikatu.
Eksport Key_Country = "us" Export Key_Province = "Ca" Export Key_city = "Sanfrancisco" Export Key_org = "Fort-Funston" Export Key_Email = "[email protected] „Export Key_OU =„ MyorGanizationAlunit ”
Zmień wartości, aby ci odpowiadały.
Ostatnią zmienną, którą musisz znaleźć, jest Nazwa_key
Eksport key_name = "vpnserver"
Nazwij to coś możliwego do zidentyfikowania.
Utwórz klucze autorytetu
Easy-RSA zawiera skrypty do wygenerowania organu certyfikatów.
Najpierw załaduj zmienne.
# źródło ./vars
W terminalu pojawi się komunikat ostrzegawczy, mówiąc ci to Wyczyść wszystko
usunie twoje klucze. Jeszcze nie masz, więc jest w porządku.
# ./Wyczyść wszystko
Możesz teraz uruchomić skrypt, aby faktycznie wygenerować swój organ certyfikatu. Skrypt zadaje ci pytania dotyczące generowanych kluczy. Domyślne odpowiedzi będą zmienne, które już wprowadziłeś. Możesz bezpiecznie rozbić „Enter.„Pamiętaj tylko, aby wprowadzić hasło, jeśli chcesz i odpowiedzieć„ tak ”na dwa ostatnie pytania.
# ./Build-CA
Utwórz klucz serwera
Klucze, które wykonałeś, dotyczyły samego organu certyfikatu. Potrzebujesz też klucza do serwera. Po raz kolejny jest na to skrypt.
# ./Build-Key-Server Server
Wygeneruj PEM Diffie-Hellman
Musisz wygenerować PEM Diffie-Hellman, którego OpenVPN użyje do tworzenia bezpiecznych kluczy sesji klienta. Easy-RSA również zapewnia do tego skrypt, ale po prostu łatwiej jest użyć zwykłego openssl.
Ponieważ celem tutaj jest bezpieczeństwo, najlepiej wygenerować klucz 4096 -bitowy. Wygenerowanie zajmie trochę czasu i może nieco spowolnić proces połączenia, ale szyfrowanie będzie dość silne.
# Openssl Dhparam 4096>/etc/openvpn/DH4096.pem
Wygeneruj klucz HMAC
Tak, potrzebujesz innego klucza szyfrowania. OpenVPN używa klawiszy HMAC do podpisywania pakietów używanych w procesie uwierzytelniania TLS. Podpisując te pakiety, OpenVPN może zagwarantować, że akceptowane są tylko pakiety pochodzące z maszyny z kluczem. Po prostu dodaje kolejną warstwę bezpieczeństwa.
Narzędzie do generowania klucza HMAC jest wbudowane w sam OpenVPN. Uruchom.
# OpenVpn -genkey - -secret/etc/openvpn/certs/klawisze/ta.klucz
Co dalej
Tworzenie silnego szyfrowania jest łatwo jednym z najważniejszych aspektów konfigurowania serwera OpenVPN. Bez dobrego szyfrowania cały proces jest zasadniczo bez znaczenia.
W tym momencie w końcu jesteś gotowy skonfigurować sam serwer. Konfiguracja serwera jest w rzeczywistości mniej skomplikowana niż to, co zrobiłeś do tej pory, więc gratulacje.
OpenVpn Sever
Skonfiguruj serwer OpenVPN za pomocą kluczy szyfrowania wygenerowanych w poprzedniej sekcji przewodnika.
To trzecia część w konfigurowaniu serwera OpenVPN na Debian Stretch.
Teraz przybyłeś na główne wydarzenie. To jest faktyczna konfiguracja serwera OpenVPN. Wszystko, co zrobiłeś do tej pory, było absolutnie konieczne, ale żaden z nich nie dotknął samego OpenVPN, do tej pory.
Ta sekcja jest całkowicie zaniepokojona konfiguracją i uruchamianiem serwera OpenVPN i jest to mniej skomplikowane, niż prawdopodobnie myślisz.
Uzyskaj konfigurację podstawową
OpenVPN dokonał tego procesu bardzo łatwy. Pakiet, który zainstalowałeś, był wyposażony w przykładowe pliki konfiguracyjne zarówno dla klientów, jak i serwera. Wystarczy rozpakować serwer w sobie /etc/openvpn
informator.
# gunzip -c/usr/share/doc/openvpn/przykłady/próbki-config-files/serwer.conf.GZ>/etc/openvpn/serwer.conf
Otwórz go w swoim ulubionym edytorze tekstu i przygotuj się na zmianę rzeczy.
Użyj swoich kluczy
Gdy będziesz w pliku, zobaczysz, że wszystko jest wypełnione rozsądnymi domyślnymi domyślnymi.
Pierwszą rzeczą, którą musisz znaleźć, jest sekcja, aby dodać swój autorytet certyfikacyjny i klucze serwera. Zmienne są ca
, certyfikat
, I klucz
. Ustaw je równą pełnej ścieżce każdego z tych plików. Powinien wyglądać jak poniższy przykład.
CA/etc/openvpn/certs/klawisze/ca.CRT cert/etc/openvpn/certs/klawisze/serwer.Klucz CRT/etc/openvpn/certs/klawisze/serwer.Klucz # Ten plik powinien być utrzymywany w tajemnicy
Następną częścią, którą musisz znaleźć, jest Diffie-Hellman .pem
Kiedy skończysz, powinno wyglądać tak:
DH DH4096.pem
Wreszcie znajdź TLS-Auth
dla Twojego klucza HMAC.
TLS-Auth/etc/openvpn/certs/klawisze/ta.Klucz 0 # Ten plik jest tajny
Tak, zostaw 0
tam.
Zrównać bezpieczeństwo
Ustawienia szyfrowania w pliku konfiguracyjnym są w porządku, ale mogą być dużo lepsza. Czas włączyć lepsze ustawienia szyfrowania.
Znajdź sekcję, która zaczyna się od, # Wybierz kryptograficzny szyfr.
Tam musisz dodać poniższy wiersz poniżej, istniejące opcje skomentowało.
Cipher AES-256-CBC
To nie jest jedna z wymienionych opcji, ale jest obsługiwana przez OpenVPN. Że szyfrowanie 256 -bitowe AES jest prawdopodobnie najlepszym oferowanym przez OpenVPN.
Przewiń na koniec pliku. Następne dwie opcje nie są jeszcze w konfiguracji, więc musisz je dodać.
Najpierw musisz określić silny trawienie uwierzytelniania. Jest to szyfrowanie, którego OpenVPN będzie używał do uwierzytelniania użytkownika. Wybierz SHA512.
# Auth Digest Auth SHA512
Następnie ogranicz szyfry, których OpenVPN użyje do silniejszych. Najlepiej jest to ograniczyć, jak to możliwe.
# Limit szyfrów tls-cipher tls-dhe-rsa-with-aes-256-gcm-sha384: tls-dhe-rsa-with-aes-128-gcm-shA256: tls-dhe-rsa-zh-aes-256-- CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-128-CBC- SHA
Bezpośredni ruch
Wszystkie rzeczy szyfrowania są na uboczu. Czas zrobić trochę routingu. Musisz powiedzieć OpenVPN, aby obsłużyć przekierowanie ruchu i DNS.
Zacznij od przekierowania ruchu. Znajdź poniższą linię i pocukaj.
Wpusz „Redirect-Gateway DEF1 Bypass-DHCP”
Aby prowadzić DNS przez OpenVPN, musisz podać opcje DNS. Te linie są już tam i również skomentowane. Odkształcić ich. Jeśli chcesz użyć innego serwera DNS, możesz również zmienić adres IP na ten DNS.
push „dhcp-option DNS 208.67.222.222 „Push” DHCP-Option DNS 208.67.220.220 "
Skonfiguruj użytkownika OpenVPN
OpenVPN działa domyślnie jako root. To dość okropny pomysł. Jeśli OpenVPN jest zagrożony, cały system jest wkręcony. Istnieje kilka skomentowanych wierszy do uruchomienia OpenVPN jako „nikogo”, ale „nikt” zwykle nie prowadzi innych usług. Jeśli nie chcesz, aby OpenVPN miał dostęp do niczego oprócz OpenVPN, musisz uruchomić go jako własnego nieuprzywilejowanego użytkownika.
Utwórz użytkownika systemu dla OpenVPN do uruchomienia.
# adduser--System --shell/usr/sbin/nologin-no-create-home openvpn
Następnie możesz edytować plik konfiguracyjny, odkształcając linie, które uruchamiają OpenVPN jako „nikogo” i zastępować go nazwą użytkownika, którą właśnie stworzyłeś.
Nogrupa grupy OpenVPN użytkownika
Wyślij dzienniki do Null
Istnieją dwie opcje, jeśli chodzi o dzienniki i oba mają swoje zalety. Możesz zarejestrować wszystko jako normalne i mieć dzienniki, które można zwrócić w późniejszym terminie, lub możesz być paranoikiem i zalogować się /dev/null
.
Logując się do /dev/null
, usuwasz dowolny rekord klientów, którzy łączą się z VPN i gdzie idą. Nawet jeśli kontrolujesz swój VPN, możesz pójść tą trasą, jeśli starasz się być bardziej nastawiony na prywatność.
Jeśli chcesz zniszczyć swoje dzienniki, znajdź status
, dziennik
, I log-append
zmienne i wskazują je wszystkie /dev/null
. Powinien wyglądać podobnie do poniższego przykładu.
status /dev /null… log /dev /null log-append /dev /null
To ostatnia część konfiguracji. Zapisz go i przygotuj się do uruchomienia serwera.
Uruchom swój serwer
W rzeczywistości istnieją dwie usługi, które musisz zacząć obracać się otwartą na debian. Rozpocznij je oboje od SystemD.
# SystemCtl Start OpenVpn # Systemctl Start OpenVpn@Server
Sprawdź, czy działają poprawnie.
# Status Systemctl OpenVpn*.praca
Umożliwić im uruchamianie w uruchomieniu.
# Systemctl Włącz OpenVpn # Systemctl Włącz OpenVpn@Server
Masz teraz działający serwer VPN na Debian Stretch!
Co dalej
Jesteś tu. Zrobiłeś to! Debian działa teraz OpenVPN za bezpieczną zaporą i jest gotowy na połączenie klientów.
W następnej sekcji skonfigurujesz swój pierwszy klient i podłączysz go do swojego serwera.
Klient OpenVPN
Skonfiguruj i OpenVPN Client do łączenia się z nowo skonfigurowanym serwerem OpenVPN.
To jest czwarta i ostatnia część konfigurowania serwera OpenVPN na Debian Stretch.
Teraz, gdy twój serwer działa, możesz skonfigurować klienta, aby się z nim połączyć. Klient może być dowolnym urządzeniem obsługującym OpenVPN, co jest prawie wszystkim.
Są coś, co musisz zrobić na serwerze, aby oddać klientowi, ale potem chodzi o konfigurację tego połączenia.
Utwórz klucze klienta
Zacznij od zrobienia zestawu kluczy klienta. Proces jest prawie identyczny z tym, którego użyłeś do tworzenia kluczy serwera.
płyta CD
W katalogu Authority Certificate Ustaw źródło z pliku zmiennych i zbuduj klawisze.
# CD/etc/OpenVPN/Certs # Źródło ./vars # ./Key FirstClient
Możesz wymienić klucz klienta, co wybierzesz. Ponownie scenariusz zadaje serię pytań. Domyślne powinny być dobre dla wszystkiego.
Plik konfiguracyjny klienta
OpenVPN zapewnia przykładowe konfiguracje klienta oprócz serwerów. Skrzyń nowy katalog konfiguracji klienta i skopiuj przykład w.
# mkdir/etc/openvpn/klienci # cp/usr/share/doc/openvpn/przykłady/próbki-config-files/klient.conf/etc/openvpn/klienci/klient.ovpn
Otwórz plik w wybranym edytorze tekstu.
Zdalny host
Znajdź linię z zdalny
zmienny. Ustaw to równe IP swojego serwera.
Zdalny 192.168.1.5 1194
Stać się nikim
Nie ma szkolenia z wymaganymi bez twarzy mężczyzn. Po prostu znajdź pociszenie poniższych linii.
Użytkownik nikt nie grupowy nogrupa
Skonfiguruj klucze
Musisz powiedzieć konfiguracji klienta, gdzie znaleźć klucze, których potrzebuje. Znajdź następujące wiersze i edytuj je, aby dopasować to, co skonfigurowałeś.
CA.CRT Cert FirstClient.Klucz CRT FirstClient.klucz
Pamiętaj, aby używać rzeczywistych nazw certyfikatu klienta i klucza. Ścieżka jest w porządku. Będziesz umieszczać to wszystko w tym samym katalogu.
Znajdź i pocukaj linię dla HMAC.
TLS-Auth ta.Klucz 1
Określ szyfrowanie
Klient musi wiedzieć, jakiego szyfrowania używa serwera. Podobnie jak serwer, należy dodać kilka z tych linii.
Znaleźć szyfr
zmienny. To skomentowano. Odkształcić go i dodaj szyfr, którego użyłeś na serwerze.
Cipher AES-256-CBC
Dodaj uwierzytelnianie i ograniczenia szyfru na końcu konfiguracji klienta.
# Uwierzytelnianie Auth Auth SHA512 # Ograniczenia szyfru TLS-Cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: -AES-256-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-Camellia -128-CBC-SHA
Zapisz konfigurację i wyjdź.
Wyślij klientowi Tarball
Musisz spakować konfigurację klienta i klucze do tarbball i wysłać je do klienta. Załaduj wszystko do jednej tarczy, aby uprościć rzeczy na końcu klienta.
# tar cjf/etc/openvpn/clients/firstClient.smoła.xz -c/etc/openvpn/certs/klawisze ca.CRT FirstClient.CRT FirstClient.Klucz ta.klucz -c/etc/openvpn/klienci/klient.ovpn
Teraz możesz przenieść tę tarbal do swojego klienta, jak wybierzesz.
Łączyć
Zakładając, że Twój klient jest dystrybucją debiana, proces połączenia jest bardzo prosty. Zainstaluj OpenVPN, tak jak na serwerze.
# apt Zainstaluj OpenVpn
Wyodrębnij swój tarbal do /etc/openvpn
katalog, który stworzył instalacja.
# cd/etc/openvpn # tar xjf/ścieżka/do/firstClient.smoła.xz
Może być konieczne zmianę nazwiska klient.ovpn
Do OpenVpn.conf
. Jeśli to zrobisz, otrzymasz błąd w uruchomieniu.
Uruchom i włącz OpenVPN z systemem.
# SystemCtl Start OpenVpn # Systemctl Włącz OpenVpn
Wniosek
Masz działający serwer VPN i podłączony klient! Możesz zastosować tę samą procedurę szczegółową w tym przewodniku dla innych klientów. Utwórz oddzielne klucze dla każdego z nich. Możesz jednak użyć tego samego pliku konfiguracji.
Możesz również upewnić się, że wszystko działa poprawnie. Udaj się do testu szczelności DNS, aby upewnić się, że Twój adres IP załatuje serwer, a nie używasz DNS swoich IPS.
Powiązane samouczki Linux:
- Podstawowy Ubuntu 22.04 Konfiguracja połączenia klienta/serwera OpenVPN
- Jak skonfigurować serwer OpenVPN na Ubuntu 20.04
- Rzeczy do zainstalowania na Ubuntu 20.04
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
- Pobierz Linux
- Zainstaluj Arch Linux na stacji roboczej VMware
- Najlepszy Linux Distro dla programistów
- Polecenia Linux: Top 20 najważniejsze polecenia, które musisz…
- Jak utworzyć VPN na Ubuntu 20.04 Za pomocą przewodu
- Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
- « Serwer VNC/konfiguracja klienta w Debian 9 Stretch Linux
- Jak zainstalować serwer społeczności MySQL na Debian 9 Stretch Linux »