Chcecie własnego VPNa za pińć złotych?
To wam pokażę jak.
Kupujesz za 5 Polskich Złotych od tego momentu darmowego VPSa Frog.
Wszystkie linki w komentarzu.
Po otrzymaniu danych na maila, logujesz się do swojego serwera po ssh.
Instalujesz usługę WireGuard:
_apk add -U wireguard-tools_
Przechodzisz do katalogu wireguard i generujesz parę kluczy:
_cd /etc/wireguard_
_wg genkey | tee privatekey | wg pubkey > publickey_
Upewnij się, że Twój interfejs sieciowy to eth0:
_ip r | grep default_
wynik polecenia - default via 192.168.1.1 dev eth0 metric 1 onlink
W tym samym katalogu tworzysz plik conf i otwierasz go w swoim ulubionym edytorze(vim \<3):
_touch wg0.conf_
_vim wg0.conf_
Zawartość pliku powinna wyglądać tak:
_[Interface]_
_Address = 10.16.0.1/24 (adresacje możesz nadać wedle uznania.)_
_ListenPort = CZYTAJ NIŻEJ!!!_
_PrivateKey = WYGENEROWANY PRZED CHWILĄ KLUCZ PRYWATNY_
_PreUp = sysctl -w net.ipv4.ip_forward=1_
_PostUp = iptables -t nat -I POSTROUTING 1 -s 10.16.0.0/24 -o eth0 -j MASQUERADE; iptables -I INPUT 1 -i wg0 -j ACCEPT; iptables -I FORWARD 1 -i wg0 -o eth0 -j ACCEPT_
_PostDown = iptables -t nat -D POSTROUTING 1 -s 10.16.0.0/24 -o eth0 -j MASQUERADE; iptables -D INPUT 1 -i wg0 -j ACCEPT; iptables -D FORWARD 1 -i wg0 -o eth0 -j ACCEPT_
_[Peer]_
_PublicKey = WYGENEROWANY KLUCZ PUBLICZNY W APLIKACJI KLIENCKIEJ, CZYTAJ NIŻEJ!!!_
_AllowedIPs = 10.16.0.3/32_
Trochę informacji:
Aby usługa była darmowa, dostawcy wykonali parę sztuczek, dostajemy własny publiczny adres IPv6 oraz publiczny, ale współdzielony z innymi adres IPv4.
Twój dostawca internetowy prawdopodobnie nie wspiera IPv6, więc dostajesz razem z IPv4 trzy porty (TCP/UDP) do wykorzystania, jeżeli ID serwera to 123 to Twoje porty:
20123
30123
40123
Jeden z nich wpisujesz w pliku wg0.conf
Po stronie klienta np. aplikacja wireguard na smartphonie:
Instalujesz oficjalną appkę.
Klikasz plusik i wybierasz "Utwórz od podstaw"
Wpisujesz dowolną nazwę.
Generujesz jednym kliknięciem parę kluczy.
Adresy: 10.16.0.3/24
Serwer DNS: np. cloudflare 1.1.1.1
Dodaj Peer'a:
Klucz publiczny wygenerowany na serwerze.
Adres: 95.217.107.125:30123 port w zależności od ID Twojego serwera
Dozwolone adresy IP: 0.0.0.0/0
Utrzymanie połączenia: 25
Zapisz.
Wygenerowany w aplikacji klucz publiczny wpisujesz w pliku wg0.conf na serwerze.
Na serwerze uruchamiasz interfejs wireguard:
_wg-quick up wg0_
W aplikacji uruchamiasz połączenie VPN i na serwerze wpisujesz polecenie: wg
powinno wyświetlić taki wynik:
_root@:frog:/f2137:frog# wg_
_interface: wg0_
_public key: 7zzYTwmjWbHecLpCUS9oMHjecq1UdnxHrY0hi0IWHg4=_
_private key: (hidden)_
_listening port: 20123_
_peer: BqFjfgehzBT/kKqMSdoPRHI9jG1bdr1WFkD6vw9clFA=_
_endpoint: ADRES IP:31578_
_allowed ips: 10.16.0.3/32_
_latest handshake: 28 seconds ago_
_transfer: 252.22 KiB received, 1.08 MiB sent_
Możesz sprawdzić na kliencie w whatismyipaddress czy jesteś w Helsinkach 😉
Wydaje mi się, że o czymś zapomniałem, ale jakby co to pytajcie.
Hardening: klucz prywatny z serwera można usunąć, a na pliku wg0 zrobić: chmod 600 wg0.conf
#cyberbezpieczenstwo #it #siecikomputerowe