prosty tunel dzięki OpenVPN

VPN
VPN
VPN

Zadanie: umożliwić sobie dostęp do dowolnego hosta i portu będąc w poblokowanej sieci hotelowej.

Rozwiązanie: prosty VPN napędzany przez OpenVPN.

 

 

Po stronie „serwera”:

1. instalujemy pakiet "openvpn".
2. generujemy klucz, którym będziemy się posługiwać:
# openvpn --genkey --secret wojtosz-vpn.key

klucz ten będzie miał postać:

# cat wojtosz-vpn.key
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
055be3dbe6a1455c9899d51cf76e5ae8
023da5d86dc843937ca2de47ee666f66
8f073aac5c254504e62fd9488fc37861
8ed15a3206db5cae91324de91af489ee
6c4e5825d2d6c095ba6158127bc05286
17cbba32131aab765b648a274aa4085f
5894f1d391aeaf5cd5a567f75de8135f
f2e2dec653e0508e05febfc2661c3eb2
289e62f7178771029036f952b6197fcb
ee3ffcc78be771ca4228e16c2c8f5a2c
2b96312ff84733bce25d2f73bd667756
e80e4149115cf42be5ea59ceb1495de5
1a164d33fbdb0d0a6e9baca6b5d077f7
f7ae81319af7ec7cf6ee96980a70eeed
68de340b657d4e5b6d6f8f0943083a8c
daaa5574b2f81b9e54fe3a05ba96fec3
-----END OpenVPN Static key V1-----

3. zestawiamy część „publiczną” naszego VPN.
(publiczną: na zdalnym serwerze, przez który będzie wychodził nasz ruch)

# openvpn --dev tun --ifconfig 172.28.28.1 172.28.28.2 --secret /root/wojtosz-vpn.key --port 443

Port 443 dlatego, że zapewne nie będzie zablokowany. To port na którym domyślnie pracuje HTTPS.
Zostało stworzone urządzenie: tun0, dla którego należy ustawić wpis w firewallu:

# iptables -t nat -A POSTROUTING -s 172.28.28.0/24 -o eth0 -j MASQUERADE

Teraz część po stronie naszego lapka, który będzie używany w sieci hotelowej.


# openvpn --remote $ZDALNE_IP --dev tun --ifconfig 172.28.28.2 172.28.28.1 --secret /root/wojtosz-vpn.key --port 443

Zauważcie, że dla –ifconfig mamy numery IP podane odwrotnie niż poprzednio. To jest drugi koniec naszego tunelu, a my wskazujemy skąd i dokąd z danego miejsca ma iść.

# ip r a 212.77.100.101 dev tun0 via 172.28.28.1

Ustawiamy routing do Wirtualnej Polski (wp.pl has address 212.77.100.101) przez tunel.

I w zasadzie tyle :)

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.