LAN przez WAN - czyli OpenVPN jako większe "Hamachi"

Tagi: #<Tag:0x00007f2add4bbae0> #<Tag:0x00007f2add4bb8b0>

UWAGA

Poradnik nie będzie należał do tych krótkich.
Jestem świadomy istnienia innych, prostych rozwiązań, ale kto nie ryzykuje, ten nie pije szampana :nosacz:
Podstawowe wymagania to dużo czasu, cierpliwość, skupienie.


LAN przez WAN?

Jest to możliwe, chociaż będzie to pewna proteza.

“Większe Hamachi”

Znasz Hamachi? Nie lubisz limitu 5 osób w sieci?
Ten poradnik umożliwi wykorzystanie innej aplikacji (OpenVPN) do tego samego efektu (wirtualny LAN).

Co jest potrzebne?

Najmniejszy, dostępny VPS na rynku z włączonym TUN/TAP.
Może to być nawet OpenVZ.

Wystarczającym w 250% i najtańszym pakietem z lvlup.pro będzie 2GB PL -> kup tutaj!

Nie zapomnij o kodzie rabatowym dbanaszewski.pl, który daje Ci aż 12% zniżki na zakup serwera!

Aby móc się połączyć do sieci, przydałby się klient OpenVPN -> pobierz go!

Wymagania systemowe

Aby zainstalować serwer OpenVPN, musisz posiadać jeden z poniższych systemów:

  • Ubuntu 18.04 i nowszy
  • Debian 9 i nowszy
  • CentOS 7 i nowszy

Instalator (skrypt) wymaga powłoki bash (nie może to być sh).


Instalacja

Krok 1

Logujemy się na konto root (jest to wymagane, to nie moje widzimisię [<- to jest poprawna forma tego słowa, bez :kappa:]).

Logujemy się w dowolny sposób.
Użyję tego:

sudo su

Krok 2

Po zalogowaniu, wpisujemy poniższą komendę:

wget https://git.dbanaszewski.pl/dbanaszewski/openvpn-lan/raw/branch/master/openvpn.sh && bash openvpn.sh

Krok 3

Instalator OpenVPN włączył się.

W tym przypadku musimy wybrać adres IP, na którym będzie działał nasz VPN. Zazwyczaj będziesz posiadać jeden adres IP, więc możesz nie zauważyć tego ekranu.

Ja wybieram 1 , klikam Enter i lecimy dalej!

Krok 4

Instalator prosi nas o wybranie protokołu, który będzie używany do hostowania serwera. Zalecane jest wybranie UDP.

Wybieramy 1 i klikamy Enter .

Krok 5

Instalator pyta nas o port, jaki będzie używany przez serwer OpenVPN.
Możemy zostawić domyślny, ja również tak zrobię.

Klikamy tylko Enter .

Krok 6

Instalator pyta się nas o nazwę dla pliku klienta VPNa. Możemy podać naprawdę dowolną nazwę.

Wpisujemy nazwę/zostawiamy domyślną nazwę i klikamy Enter .

Krok 7

Teraz, na własnym komputerze (czy gdziekolwiek, gdzie chcesz używać tego VPNa), zainstaluj klienta OpenVPN w wersji Community.

Link do aplikacji znajduje się wyżej.

Ja skorzystam z wersji na Windows 10.

Krok 8

Instalacja jest dość prosta, pominę to.
Po przeklikaniu, powinniśmy zobaczyć przynajmniej jedną rzecz z tych dwóch.

Jeżeli nie masz ikonki komputera z kłódką, uruchom OpenVPN GUI .

Krok 9

Założę, że posiadasz swój plik klienta wygenerowany przez instalator.
Wygląda on podobnie do tego:
1234

Jak masz, to dobrze.
Jak nie, to ściągnij ten plik z VPSa przy pomocy np. WinSCP.

Krok 10

Teraz musimy połączyć się do serwera OpenVPN przy pomocy tego naszego pliczku.
Wejdź na dysk, gdzie został zainstalowany klient OpenVPN.
Jeżeli zainstalowałeś to na C , przejdź do folderu C:\Program Files\OpenVPN\config . Dla innego dysku będzie to bardzo podobna lokalizacja, ale zamiast C , będzie inna literka.

Do tego folderu przenieś ten nasz plik .ovpn .

Jeżeli zostaniesz poproszony o zatwierdzenie akcji przez administratora (UAC), potwierdź.

Przeniosłeś już plik?

Krok 11

Jeżeli nie zepsułeś czegoś w powyższych krokach, to jesteśmy prawie na finishu.

Kliknij na tą ikonkę dwa razy, dopóki nie pojawi się takie okienko:
xD123
Coś tam zacznie latać, przewijać się.

Jeżeli okienko zniknie, a nasza ikona zrobi się taka: enter image description here, to jest bardzo dobrze. TO KONIEC!


Dla użytkowników, którzy posiadają ufw

ufw domyślnie blokuje połączenia forwardowane, dlatego należy je przepuścić.
Oto rozwiązanie:

ufw route allow in on tun0 out on tun0

Super, po instalacji, jak mam zrobić, aby inne osoby mogły dołączyć na mój serwer np. Minecraft?

Po pierwsze: każda osoba musi być przyłączona do sieci OpenVPN. Wygeneruj dla niej plik. Oto sposób:

Krok 1

Uruchom instalator.
Zrób to poprzez bash openvpn.sh Musisz być zalogowany do roota.
Po uruchomieniu otrzymujemy:

Wpisujemy 1 i klikamy Enter.

Krok 2


Wpisujemy nazwę nowego pliku klienta i klikamy Enter.

Krok 3


Widzisz podobieństwo u siebie? Jeżeli tak, to gotowe. Plik został wygenerowany.

Teraz, osoba, która ma zostać podłączona, musi od Ciebie otrzymać ten plik. Po otrzymaniu pliku, wykonaj kroki od 7 do 11.


Załóżmy, że wszystkie osoby są dodane do sieci. Teraz musisz zbindować nasłuch serwera Minecraft na Twój wewnętrzny (ale nie wewnętrzny z fizycznej sieci LAN) adres IP. Nie wiesz jaki adres IP dostałeś? Sprawdź to używając (komenda działa pod Windowsem) polecenia ipconfig w wierszu poleceń.

Jak widać, ja posiadam adres 10.1.1.2.

W katalogu serwera MC, w pliku server.properties, ustawiam wartość server-ip= na server-ip=10.1.1.2. Jeżeli serwer już był wcześniej uruchomiony, zresetuj go/jeżeli serwer nie był włączony, włącz go.

Następnie dodajemy serwer do listy serwerów w Minecraft i gotowe. Można grać bez ograniczeń typu adres IP za NATem, brak publicznego adresu IP.


Działa?

Jak tak, to zostaw serduszko :blue_heart:
Jak nie, napisz niżej co poszło nie tak (i tak liczę na :heart:).


Wykorzystano skrypt openvpn-install autorstwa Nyr, licencja MIT; wykorzystano poradnik o instalacji VPN autorstwa @DBanaszewski (to ja :wave:), licencja Creative Commons 3.0 (zgodnie z Regulaminem forum).

Jeżeli widzisz jakieś błędy to podrzuć mi informację, a ja chętnie to naprawię :heart:

12lajków