Witam; Tytułem wstępu, zanim przejdę do instrukcji; Został poruszony temat serwera VPN.
Ponieważ nigdy go nie używałem, ani nie nie miałem kontaktu, to postanowiłem się dowiedzieć coś na ten temat; Kiedyś trochę czytałem, na ten temat, ale to było dawno temu. Więc sobie myślę dobrze by było sobie przypomnieć co nieco w tej tematyce. Zajrzałem do internetu, i tam znalazłem mnóstwo wypowiedzi; Niestety, Większość artykułów mija się z prawdą objawioną. Czyli, każda „Sójka swój ogonek chwali”. Przerzuciłem sporo materiału, i miałem coraz gorsze samopoczucie w tym temacie. Wreszcie znalazłem, kurs, szkolenie dla początkujących, Lektor mówił do rzeczy;
( była próbka ). Ten kurs był, jest płatny; Ale dali promocję, za cały kurs, 40-zł. W cenie promocyjnej. Myślę sobie, cztery dychy nie majątek; lektor w porządku, w razie czego można będzie się dopytać o szczegóły. Zamiast szukać po internecie? Dostanę wszystko podane na talerzu.
Teraz „UWAGA”. Trzeba się zalogować; nazwisko z książki telefonicznej, mail miałem zapasowy, rzadko używany, Jedziemy dalej. Trzeba zapłacić; nie ma problemu zrobię przelew. I teraz zaczynają się schody, z banku nie można zrobić na konto przelewu? Dlaczego? Niema takiej opcji. Jest za to coś innego, najpierw trzeba podać szczegółowe dane, które się kończą,- NUMER KARTY DEBETOWEJ- i do tego HASŁO. No , robi się ciekawie? To że jestem początkującym nowicjuszem w sprawach VPN-u. To nie znaczy że jestem kompletnym idiotą. Podziękowałem.
Jeszcze jedno; Brak telefonu kontaktowego. Jak i adresu Maila. No dobra, starczy banialuk, przechodzimy do VPN-a. Sporo przejrzałem materiału; i nasuwa się jeden wniosek; Wszędzie jest pośrednik, który chce pieniędzy; czasem daje za darmo. Mnie nie chodzi już o pieniądze, ale o status pośrednika i co on tam za głupoty wypisuje? Jeżeli to ma być tajne? To co tam robi pośrednik? Zazwyczaj on daje słowo; że tajemnicy dochowa. Logi nie ujrzą światła dziennego.
Wierzyć, nie wierzyć; Ja z natury jestem dużym niedowiarkiem. Szukałem, przewaliłem pół internetu; ale znalazłem coś co spełnia wszystkie wymagania. Zresztą proszę oceńcie sami;
Co prawda, jest to na Debiana-8. Ja takiego mam. Problemem jest coś znaleźć na nowsze wersje, wieje malizną, czyli nie ma. Co jest ważne; ta instalacja nie ma pośrednika. Jest za darmo, i do nikogo nie należy; Jest Open Source. To tyle przydługiego wstępu. A teraz instrukcja instalacji w dwóch częściach. Miłej instalacji, dla tych co mają Debiana. :ugeek:
OpenVPN jest open source VPN aplikacją, która pozwala na tworzenie i podłączanie do bezpiecznej sieci prywatnej za pośrednictwem Intern-Konfiguracja serwera OpenVPN na Debian 8. – cz. 1/2
OpenVPN jest open source VPN aplikacją, która pozwala na tworzenie i podłączanie do bezpiecznej sieci prywatnej za pośrednictwem InternKonfiguracja serwera OpenVPN na Debian 8. – cz. 1/2
etu publicznego. Krótko mówiąc, pozwala to użytkownikowi na zamaskowanie połączeń i na bardziej bezpiecznie poruszanie niezaufaną siecią.
Wymagania
Ten tutorial zakłada, że posiadasz następujące elementy:
Nowy Debian 8.1 Droplet
Użytkownik root
Opcjonalne: Po ukończeniu tego tutorialu, do ogólnego użytku należy użyć konto z uprawnieniami sudo.
Krok #1 – Instalacja OpenVPN
Przed instalacją jakichkolwiek pakietów, zaktualizujemy indeks pakietów apt.
</s>apt-get update<e>
Teraz możemy zainstalować serwer OpenVPN wraz z łatwym do szyfrowania RSA.
</s>apt-get install openvpn easy-rsa<e>
Krok #2 – Konfiguracja OpenVPN
Przykładowy plik konfiguracji VPN serwera musi być wyodrębniony w /etc/openvpn tak, aby mogliśmy włączyć go do naszej konfiguracji. Można to zrobić za pomocą jednego polecenia:
</s>gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf<e>
Po rozpakowaniu, należy otworzyć plik konfiguracyjny serwera za pomocą nano lub innego ulubionego edytora tekstu.
</s>nano /etc/openvpn/server.conf<e>
W tym pliku, musimy dokonać czterech zmian (każda zostanie wyjaśniona szczegółowo):
Bezpieczny serwer z wysokim poziomem szyfrowania
Bezpośredni ruch w sieci do celu
Zapobieganie wyciekaniu żądań DNS poza połączeniem VPN
Uprawnienia instalacyjne
Po pierwsze, musimy podwoić długość klucza RSA, używanego podczas tworzenia serwerowych i klienckich kluczy. Po głównym bloku komentarza i jeszcze kilka wierszy, szukaj linii która brzmi:
/etc/openvpn/server.conf
Diffie hellman parameters.
Generate your own with:
openssl dhparam -out dh1024.pem 1024
Substitute 2048 for 1024 if you are using
2048 bit keys.
dh dh1024.pem
Zmień
</s> dh1024.pem <e>
na
</s> dh2048.pem <e>
,więc teraz ten wiersz musi wyglądać następująco:
/etc/openvpn/server.conf
dh dh2048.pem
Po drugie, zadbamy o to, aby przekierować cały ruch w odpowiednie miejsce. W server.conf znajdź następną sekcję:
/etc/openvpn/server.conf
If enabled, this directive will configure
all clients to redirect their default
network gateway through the VPN, causing
all IP traffic such as web browsing and
and DNS lookups to go through the VPN
(The OpenVPN server machine may need to NAT
or bridge the TUN/TAP interface to the internet
in order for this to work properly).
;push “redirect-gateway def1 bypass-dhcp”
Odkomentuj wiersz
</s> push "redirect-gateway def1 bypass-dhcp" <e>
,więc serwer VPN przekazuje ruch klienta sieci web do jego przeznaczenia. Po zrobieniu to powinno to wyglądać tak:
/etc/openvpn/server.conf
push “redirect-gateway def1 bypass-dhcp”
Po trzecie, zrobimy tak, aby serwer używał OpenDNS do rozpoznawania nazw DNS, gdzie jest to możliwe. To może pomóc zapobiec wyciekowi żądań DNS poza połączeniem VPN. Natychmiast po wcześniej zmodyfikowanej sekcji, edytuj następujące:
/etc/openvpn/server.conf
Certain Windows-specific network settings
can be pushed to clients, such as DNS
or WINS server addresses. CAVEAT:
http://openvpn.net/faq.html#dhcpcaveats
The addresses below refer to the public
DNS servers provided by opendns.com.
;push “dhcp-option DNS 208.67.222.222”
;push “dhcp-option DNS 208.67.220.220”
Odkomentuj
</s> push "dhcp-option DNS 208.67.222.222" i push "dhcp-option DNS 208.67.220.220"<e>
. Powinno to wyglądać tak:
/etc/openvpn/server.conf
push “dhcp-option DNS 208.67.222.222”
push “dhcp-option DNS 208.67.220.220”
Po czwarte, będziemy definiować uprawnienia w server.conf:
/etc/openvpn/server.conf
You can uncomment this out on
non-Windows systems.
;user nobody
;group nogroup
Odkomentuj
</s> user nobody<e>
i
</s>group nogroup <e>
. Powinno to wyglądać tak:
/etc/openvpn/server.conf
user nobody
group nogroup
Domyślnie OpenVPN pracuje jako główny użytkownik root, dzięki czemu ma pełny dostęp do systemu. Zrobimy natomiast ograniczenie OpenVPN dla użytkownika nobody i grupy nogroup. Jest to bez uprawnień użytkownika bez możliwości domyślnego logowania, często zarezerwowany dla uruchamiania niezaufanych aplikacji, takich jak serwery www.
Teraz zapisz zmiany i wyjdź.
Krok #3 – Włączanie przekazywania pakietów
W tym kroku zrobimy tak, aby jądro serwera przekazywało ruch z usług klienckich do sieci Internet. W przeciwnym wypadku, ruch zatrzyma się na serwerze.
Włączymy przekazywanie pakietów podczas wykonywania, wpisując następujące polecenie:
</s>echo 1 > /proc/sys/net/ipv4/ip_forward<e>
Dalej, musimy zrobić tą konfigurację stałą, aby ona była zapisana po ponownym uruchomieniu serwera. Otwórz plik konfiguracyjny sysctl za pomocą nano lub innego ulubionego edytora tekstu.
</s>nano /etc/sysctl.conf<e>
W górnej części pliku sysctl pojawi się:
/etc/openvpn/server.conf
Uncomment the next line to enable packet forwarding for IPv4
#net.ipv4.ip_forward=1
Odkomentuj wiersz
</s> net.ipv4.ip_forward <e>
. Powinno to wyglądać tak:
/etc/openvpn/server.conf
Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
Zapisz zmiany i zamknij plik.
Krok #4 – Instalacja i konfiguracja UFW
UFW jest front-end dla IPTables. Musimy zrobić tylko kilka zasad i zmiany konfiguracji. Wtedy będziemy przełączać zaporę sieciową.
Po pierwsze, należy zainstalować pakiet ufw.
</s> apt-get install ufw<e>
Po drugie, należy ustawić UFW zezwolenie SSH:
</s>ufw allow ssh<e>
W tym tutorialu będziemy używać OpenVPN przez UDP, więc UFW musi również umożliwić ruch UDP na porcie 1194.
</s>ufw allow 1194/udp<e>
UFW przekazywanie polityki musi być również zainstalowane. Zrobimy to w głównym pliku konfiguracyjnym.
</s>nano /etc/default/ufw<e>
Spójrz na następujący wiersz:
/etc/default/ufw
DEFAULT_FORWARD_POLICY=“DROP”
DROP musi być zmieniony na ACCEPT. Powinno to wyglądać tak:
/etc/default/ufw
DEFAULT_FORWARD_POLICY=“ACCEPT”
Zapisz i wyjdź.
Następnie dodamy dodatkowe zasady UFW do tłumaczenia adresów sieciowych i maskowania adresu IP podłączonych klientów.
</s>nano /etc/ufw/before.rules<e>
Następnie dodaj tekst zaznaczony na czerwono dla OPENVPN RULES:
/etc/ufw/before.rules
#
rules.before
#
Rules that should be run before the ufw command line added rules. Custom
rules should be added to one of these chains:
ufw-before-input
ufw-before-output
ufw-before-forward
#
# START OPENVPN RULES
NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]
Allow traffic from OpenVPN client to eth0
-A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE
COMMIT
END OPENVPN RULES
*filter
Wraz ze zmianami wprowadzonymi do UFW, teraz możemy go włączyć. Wpisz w wierszu poleceń:
[code]
ufw enable
[/code]
[code]
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
[/code]
[code]
y.
[/code]
[code]
ufw status
[/code]
To Action From
-- ------ ----
22 ALLOW Anywhere
1194/udp ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
1194/udp (v6) ALLOW Anywhere (v6)
W tym kroku skonfigurujemy nasz własny
OpenVPN obsługuje dwukierunkowe uwierzytelnianie na podstawie certyfikatów, oznacza to, że klient powinien sprawdzić autentyczność certyfikatu serwera, a serwer musi sprawdzić autentyczność certyfikatu klienta do tworzenia wzajemnego zaufania. Będziemy wykorzystywać skrypty Easy RSA, aby to zrobić.
Najpierw skopiujemy egzemplarz skryptów generacji Easy-RSA.
[code]
cp -r /usr/share/easy-rsa/ /etc/openvpn
[/code]
[code]
mkdir /etc/openvpn/easy-rsa/keys
[/code]
[code]
nano /etc/openvpn/easy-rsa/vars
[/code]
Zmienne poniżej zaznaczone na czerwono powinny zostać zmienione zgodnie z własnymi preferencjami.
/etc/openvpn/easy-rsa/vars
export KEY_COUNTRY=“US”
export KEY_PROVINCE=“TX”
export KEY_CITY=“Dallas”
export KEY_ORG=“My Company Name”
export KEY_EMAIL=“[email protected]”
export KEY_OU=“MYOrganizationalUnit”[/color]
W tym samym pliku vars, również edytowujemy linię pokazaną poniżej. Dla uproszczenia będziemy używać
</s> server <e>
jako nazwę klucza. Jeśli chcesz użyć innej nazwy, będzie trzeba także zaktualizować pliki konfiguracyjne OpenVPN, które odwołują się do server.key i server.crt.
Poniżej, w tym samym pliku, zostanie podany odpowiedni certyfikat. Znajdź wiersz, zaraz po wcześniej zmodyfikowanym bloku:
/etc/openvpn/easy-rsa/vars
X509 Subject Field
export KEY_NAME=“EasyRSA”
Zmień wartość domyślną
</s> KEY_NAME <e>
na żądaną nazwę serwera. W tym tutorialu będziemy używać nazwy
</s> server.<e>
/etc/openvpn/easy-rsa/vars
X509 Subject Field
export KEY_NAME=[/color]“server”
Zapisz i wyjdź.
Dalej będziemy generować parametry Diffie-Helman z użyciem wbudowanego narzędzia OpenSSL o nazwie
</s> dhparam <e>
; to może zająć kilka minut.
Flaga
</s> -out <e>
określa gdzie zapisać nowe parametry.
</s>openssl dhparam -out /etc/openvpn/dh2048.pem 2048<e>
Nasz certyfikat jest generowany, i teraz możemy wygenerować klucz.
Po pierwsze, przełączymy się do katalogu easy-rsa.
</s>cd /etc/openvpn/easy-rsa<e>
Teraz możemy rozpocząć konfigurowanie CA. Najpierw inicjalizujemy Public Key Infrastructure (PKI).
Należy zwrócić uwagę na kropkę (.) i spację przed poleceniem
</s> ./vars <e>
To oznacza
bieżący katalog roboczy (źródło).
</s>. ./vars<e>
Dalej, oczyścimy wszystkie pozostałe klucze, które mogą przeszkadzać w naszej instalacji.
</s>./clean-all<e>
Wreszcie będziemy budować CA przy użyciu polecenia OpenSSL. Polecenie to poprosi o potwierdzenie „Distinguished Name” zmiennych, które zostały wprowadzone wcześniej. Naciśnij ENTER, aby zaakceptować istniejące wartości.
</s>./build-ca<e>
Naciśnij ENTER, aby przejść przez każdy wiersz, ponieważ wystarczy zainstalować ich wartości w pliku vars.
Certificate Authority teraz jest skonfigurowany.
O następnych krokach czytaj w drugiej części tutorialu –
Jak skonfigurować serwer OpenVPN na Debian 8. – część 2/2.
Na Podstawie;
<LINK_TEXT text=“https://hostovita.pl/blog/jak-skonfigur … 8-czesc-2/”>https://hostovita.pl/blog/jak-skonfigurowac-serwer-openvpn-na-debian-8-czesc-2/</LINK_TEXT>