[VPN]FIT VPN

K cemu je VPN FIT?

VPN FIT má toto základní pouzití:

  • zprístupnuje lokální sít FIT prímo sifrovaným kanálem (dulezité zejména pri prístupu pres verejné nezabezpecené WiFi),
  • zprístupnuje servery Windows (fikw a ajaw, vzdálený souborový prístup na ne je jinak zakázán z bezpecnostních duvodu na smerovaci fakulty),
  • zajistuje IPv6 konektivitu pro uzivatele, kterí nemají nativní nebo spolehlivé tunelované IPv6 spojení.
Pro IPv4 prístup jsou pouzity privátní adresy z rozsahu 172.27.128.0/21. Prístupné jsou pouze síte 147.229.8.0/24 a 147.229.176.0/24. Pro IPv6 jsou pouzity verejné adresy ze subnetu 2001:67c:1220:810::/64 a prístupné jsou vsechny globální adresy 2000::/3 (jinými slovy, VPN vám zprístupní IPv6 spojení do sveta).

Potrebný software: Opatchovaná verze OpenVPN 2.2.x (IPv6 payload), instalacní balícek pro Windows je v kapitole What Does Not Work, UPDATE 2011/05/22 HERE. Pro jistotu je dostupný také zde (pokud bude novejsí, pouzijte klidne novejsí). Pro jiné systémy lze pouzít pripravené balícky nebo si opatchovat originální verzi OpenVPN a prelozit.

2012-10-12: Beta verze OpenVPN 2.3 má jiz integrovanou podporu pro IPv6 payload a zdá se být funkcní. Najdete ji zde: OpenVPN 2.3_beta1 -- released on 2012.09.14. Pokud nebude fungovat 64 bitová verze, zkuste 32 bitovou.

Konfigurace:

  1. Nainstalovat OpenVPN s patchem IPv6 payload. Ve Windows 7 je to trochu slozitejsí, je treba spustit instalaci a GUI s administrátorskými právy (pravé tlacítko mysi, vlastnosti, spustit jako administrátor).
  2. Stáhnout certifikát CA VUT ve formátu PEM a ulozit do správného adresáre (\Program Files\OpenVPN\config\) pod jménem BUTCA.crt
  3. Stáhnout konfiguraci klienta a ulozit tamtéz.
  4. V ceských Windows prejmenovat rozhraní TAP-Win32 tak, aby neobsahovalo znaky s diakritikou (Ovládací panely -> Sít a Internet -> Centrum sítových pripojení -> Zmenit nastavení adaptéru), jinak neprojde nastavení síte príkazem netsh po pripojení.
  5. Ve firewallu Windows (Linux - paketový filtr) je treba povolit pruchod paketu driverem TAP (u AVG9 stací oznacit TAP-WIN32 Adapter jako bezpecnou sít). Pri pocátecním testování doporucujeme radeji firewall vypnout, overit funkci a pak teprve laborovat s nastavením firewallu. Podrobnejsí informace najdete na stránkách návodu k OpenVPN (pritom hledejte návody pro TUN, prestoze zde u Windows píseme o driveru TAP).
  6. Spustit OpenVPN GUI (ve Windows) a zvolit Connect (spustí se minimalizovaný do listy, je treba najít ikonku) nebo openvpn --config FIT.ovpn (Linux).
    Ve Windows 7 lze OpenVPN GUI poustet s právy administrátora, lze pouzít Plánovac úloh (Task Scheduler) - naimportujte úlohu openvpn-gui.xml (verze pro 64 bitová Windows 7, ve 32 bitových je treba opravit cestu k aplikaci).
  7. Zadat FIT login a heslo.
  8. Pokud vse probehne v porádku, lze overit fungující spojení výpisem smerovací tabulky, tracert/traceroute kazi.fit.vutbr.cz (musí jít prímo pres 172.27.xx.yy), tracert6/tracert -6/traceroute6 ipv6.google.com nebo otevrením stránky Webu Fit (vlevo dole by mela být adresa 2001:67c:1220:810::xx:yy).
  9. Ve Windows 7 nezapomente spoustet OpenVPN GUI s právy administrátora, jinak se sice vytvorí spojení, ale nenastaví se smerovací tabulky, takze to nebude fungovat.

FAQ

Co je VPN (OpenVPN)?
Viz Open Virtual Private Network
Funguje OpenVPN pres NAT (Internet pres mobil, atp.)?
Ano. Nicméne napr. u T-Mobile se obcas vyskytují problémy pri pripojování (nepodarí se otevrít TLS kanál, log skoncí na rádku TLS: Initial packet), po nejaké dobe to pak zase funguje bez problému.
Proc je v konfiguraci driver TUN, kdyz je ve Windows jen driver TAP?
OpenVPN ve Windows pouzije driver TAP (ethernet bridge) v rezimu emulace TUN spojení (jako driver TUN). Emulace vytvorí pro kazdého klienta subnet /30, proto je adresa klienta vzdy x*4+2, adresa serveru x*4+1 a subnet mask 255.255.255.252. Server bezí v rezimu point-to-multipoint TUN mode.
Lze to pouzít ve Windows XP pro IPv6 konektivitu?
Ano, stací mít nainstalovanou podporu IPv6 (v príkazovém rádku napiste: ipv6 install).
Nefunguje me IPv6
Nainstalovali jste si opatchovanou verzi? Poznáte to podle prvního rádku v logu, musí obsahovat [IPv6 payload ... ]
Lze pouzít VPN FIT pro prístup ke zdrojum omezeným na IPv4 adresy VUT?
Ano, ale musíte si nastavit proxy cache server na cache6.fit.vutbr.cz:3128.
Nemuzu se dostat na Sambu (\\kazi, \\eva, \\fikw, \\ajaw), nevidím v okolních pocítacích Windows servery FIT
Zkuste vypnout firewall, pokud to zacne fungovat, musíte ve firewallu povolit prístup SMB klienta (porty 135, 137, 445) pro síte 147.229.8.0/24 a 147.229.176.0/24 (u AVG9 je pridat jako bezpecné síte, povolit 'Microsoft SMB File Sharing Client' v Services and controllers a 'MS Printer and File Sharing' v systémových sluzbách pro bezpecné síte).
Jak spoustet OpenVPN GUI ve Windows 7 bez otravného UAC?
UAC (User Access Control) se nedá vypnout pro urcitou aplikaci, musíte to tedy vyresit jako vsichni ostatní - naplánovat úlohu. Spustte taskschd.msc a vytvorte úlohu:
  1. Obecné: pouze, pokud je uzivatel prihlásen; spustit s nejvyssím oprávnením
  2. Aktivacní události: Pri prihlásení; Zdrzení úlohy: 30s
  3. Akce: Spustit program; vybrat OpenVPN-gui.exe
  4. Podmínky: nic není zaskrtnuto
  5. Nastavení: odskrtnout "Zastavit úlohu, pokud bezí déle nez"; Pokud je jiz úloha spustena: Zastavit stávající instanci
Po prihlásení máte automaticky spustené OpenVPN GUI s právy administrátora, takze bude fungovat správne. Ve Windows XP si tuto anabázi muzete usetrit, stací dát OpenVPN-gui.exe do Start->Programy->Po spustení

Log pro kontrolu

Mon Nov 07 19:43:32 2011 OpenVPN 2.2.0 i686-pc-mingw32 [SSL] [LZO2] [PKCS11] [IPv6 payload 20110522-1 (2.2.0)] built on May 22 2011
Enter Management Password:
Mon Nov 07 19:43:32 2011 MANAGEMENT: TCP Socket listening on 127.0.0.10:25340
Mon Nov 07 19:43:32 2011 Need hold release from management interface, waiting...
Mon Nov 07 19:43:32 2011 MANAGEMENT: Client connected from 127.0.0.10:25340
Mon Nov 07 19:43:32 2011 MANAGEMENT: CMD 'state on'
Mon Nov 07 19:43:32 2011 MANAGEMENT: CMD 'log all on'
Mon Nov 07 19:43:32 2011 MANAGEMENT: CMD 'hold off'
Mon Nov 07 19:43:32 2011 MANAGEMENT: CMD 'hold release'
Mon Nov 07 19:43:37 2011 MANAGEMENT: CMD 'username "Auth" "novak"'
Mon Nov 07 19:43:37 2011 MANAGEMENT: CMD 'password [...]'
Mon Nov 07 19:43:37 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Mon Nov 07 19:43:37 2011 LZO compression initialized
Mon Nov 07 19:43:37 2011 Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
Mon Nov 07 19:43:37 2011 Socket Buffers: R=[8192->8192] S=[32768->32768]
Mon Nov 07 19:43:37 2011 MANAGEMENT: >STATE:1320691417,RESOLVE,,,
Mon Nov 07 19:43:38 2011 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
Mon Nov 07 19:43:38 2011 Local Options hash (VER=V4): '5405f7b0'
Mon Nov 07 19:43:38 2011 Expected Remote Options hash (VER=V4): '69d5be14'
Mon Nov 07 19:43:38 2011 UDPv4 link local: [undef]
Mon Nov 07 19:43:38 2011 UDPv4 link remote: 147.229.9.81:1194
Mon Nov 07 19:43:38 2011 MANAGEMENT: >STATE:1320691418,WAIT,,,
Mon Nov 07 19:43:40 2011 MANAGEMENT: >STATE:1320691420,AUTH,,,
Mon Nov 07 19:43:40 2011 TLS: Initial packet from 147.229.9.81:1194, sid=021856dc 76b7c36a
Mon Nov 07 19:43:40 2011 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Mon Nov 07 19:43:46 2011 VERIFY OK: depth=1, /C=CZ/L=Brno/ST=Czech_Republic/O=Brno_University_of_Technology/OU=Certification_Authority/CN=Brno_University_of_Technology_CA
Mon Nov 07 19:43:46 2011 VERIFY OK: nsCertType=SERVER
Mon Nov 07 19:43:46 2011 VERIFY OK: depth=0, /C=CZ/ST=Czech_Republic/L=Brno/O=Brno_University_of_Technology/OU=Faculty_of_Information_Technology/CN=vpn.fit.vutbr.cz
Mon Nov 07 19:43:46 2011 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Mon Nov 07 19:43:46 2011 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Mon Nov 07 19:43:46 2011 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Mon Nov 07 19:43:46 2011 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Mon Nov 07 19:43:46 2011 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Mon Nov 07 19:43:46 2011 [vpn.fit.vutbr.cz] Peer Connection Initiated with 147.229.9.81:1194
Mon Nov 07 19:43:47 2011 MANAGEMENT: >STATE:1320691427,GET_CONFIG,,,
Mon Nov 07 19:43:48 2011 SENT CONTROL [vpn.fit.vutbr.cz]: 'PUSH_REQUEST' (status=1)
Mon Nov 07 19:43:48 2011 PUSH: Received control message: 'PUSH_REPLY,ifconfig-ipv6 2001:67c:1220:810::1:1 2001:67c:1220:810::1,route-ipv6 2001::/3,route 147.229.8.0 255.255.255.0,route 147.229.176.0 255.255.255.0,dhcp-option NBT 2,dhcp-option WINS 147.229.8.12,tun-ipv6,route 172.27.128.1,topology net30,ping 10,ping-restart 120,ifconfig 172.27.128.10 172.27.128.9'
Mon Nov 07 19:43:48 2011 OPTIONS IMPORT: timers and/or timeouts modified
Mon Nov 07 19:43:48 2011 OPTIONS IMPORT: --ifconfig/up options modified
Mon Nov 07 19:43:48 2011 OPTIONS IMPORT: route options modified
Mon Nov 07 19:43:48 2011 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Mon Nov 07 19:43:48 2011 ROUTE default_gateway=10.81.192.100
Mon Nov 07 19:43:48 2011 ROUTE6: default_gateway=UNDEF
Mon Nov 07 19:43:48 2011 do_ifconfig, tt->ipv6=1, tt->did_ifconfig_ipv6_setup=1
Mon Nov 07 19:43:48 2011 MANAGEMENT: >STATE:1320691428,ASSIGN_IP,,172.27.128.10,
Mon Nov 07 19:43:49 2011 NETSH: C:\WINDOWS\system32\netsh.exe interface ipv6 set address Local Area Connection 3 2001:67c:1220:810::1:1 store=active
Ok.
Mon Nov 07 19:43:51 2011 add_route_ipv6(2001:67c:1220:810::/64 -> 2001:67c:1220:810::1:1 metric 2290448) dev Local Area Connection 3
Mon Nov 07 19:43:51 2011 C:\WINDOWS\system32\netsh.exe interface ipv6 add route 2001:67c:1220:810::/64 Local Area Connection 3 fe80::8 store=active
Mon Nov 07 19:43:51 2011 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Ok.
Mon Nov 07 19:43:52 2011 open_tun, tt->ipv6=1
Mon Nov 07 19:43:52 2011 TAP-WIN32 device [Local Area Connection 3] opened: \\.\Global\{29093224-85F7-4DF3-B8C1-04A1DEB5A04E}.tap
Mon Nov 07 19:43:52 2011 TAP-Win32 Driver Version 9.8 
Mon Nov 07 19:43:52 2011 TAP-Win32 MTU=1500
Mon Nov 07 19:43:52 2011 Notified TAP-Win32 driver to set a DHCP IP/netmask of 172.27.128.10/255.255.255.252 on interface {29093224-85F7-4DF3-B8C1-04A1DEB5A04E} [DHCP-serv: 172.27.128.9, lease-time: 31536000]
Mon Nov 07 19:43:52 2011 Successful ARP Flush on interface [196612] {29093224-85F7-4DF3-B8C1-04A1DEB5A04E}
Mon Nov 07 19:43:55 2011 TEST ROUTES: 3/3 succeeded len=3 ret=1 a=0 u/d=up
Mon Nov 07 19:43:55 2011 MANAGEMENT: >STATE:1320691435,ADD_ROUTES,,,
Mon Nov 07 19:43:55 2011 C:\WINDOWS\system32\route.exe ADD 147.229.8.0 MASK 255.255.255.0 172.27.128.9
Mon Nov 07 19:43:55 2011 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Mon Nov 07 19:43:55 2011 C:\WINDOWS\system32\route.exe ADD 147.229.176.0 MASK 255.255.255.0 172.27.128.9
Mon Nov 07 19:43:55 2011 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Mon Nov 07 19:43:55 2011 C:\WINDOWS\system32\route.exe ADD 172.27.128.1 MASK 255.255.255.255 172.27.128.9
Mon Nov 07 19:43:55 2011 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Mon Nov 07 19:43:55 2011 add_route_ipv6(2000::/3 -> 2001:67c:1220:810::1 metric 0) dev Local Area Connection 3
Mon Nov 07 19:43:55 2011 C:\WINDOWS\system32\netsh.exe interface ipv6 add route 2000::/3 Local Area Connection 3 fe80::8 store=active
Mon Nov 07 19:43:55 2011 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Ok.
Mon Nov 07 19:43:56 2011 Initialization Sequence Completed
Mon Nov 07 19:43:56 2011 MANAGEMENT: >STATE:1320691436,CONNECTED,SUCCESS,172.27.128.10,147.229.9.81
tracert kazi
Tracing route to kazi [147.229.8.12]
over a maximum of 30 hops:

1 228 ms   230 ms   205 ms  172.27.128.1
2 257 ms   236 ms   242 ms  bda-boz.fit.vutbr.cz [147.229.9.1]
3 176 ms   199 ms   349 ms  kazi.fit.vutbr.cz [147.229.8.12]

tracert6 ipv6.google.com

Tracing route to ipv6.l.google.com [2a00:1450:8007::69]
from 2001:67c:1220:810::1:1 over a maximum of 30 hops:

 1        *       88 ms    88 ms  vpn-gw6.fit.vutbr.cz [2001:67c:1220:810::1]
 2       77 ms    86 ms    86 ms  bda-boz6.fit.vutbr.cz [2001:67c:1220:809::1]
 3       75 ms    74 ms    73 ms  hp-meo.net.vutbr.cz [2001:67c:1220:f521::aff:701]
 4       82 ms    81 ms    90 ms  hp-ant.net.vutbr.cz [2001:67c:1220:f559::aff:201]
 5       79 ms    78 ms    77 ms  hp-kou.net.vutbr.cz [2001:67c:1220:f529::aff:601]
 6       76 ms    74 ms    73 ms  gw-kou6.net.vutbr.cz [2001:67c:1220:f534::aff:605]
 7       81 ms    80 ms    79 ms  2001:718:0:c003::1
 8       97 ms    97 ms    97 ms  pr61.ams04.net.google.com [2001:7f8:1::a501:5169:1]
 9       97 ms    97 ms    97 ms  pr61.ams04.net.google.com [2001:7f8:1::a501:5169:1]
10       96 ms     *      118 ms  2001:4860::1:0:8
11       97 ms    96 ms    95 ms  2001:4860::8:0:2db0
12       94 ms    93 ms    93 ms  2001:4860::8:0:3016
13      102 ms   101 ms   100 ms  2001:4860::2:0:48d
14      109 ms    98 ms    97 ms  2001:4860:0:1::cb
15       96 ms    95 ms    94 ms  fx-in-x69.1e100.net [2a00:1450:8007::69]

Your IPv4 address: 107.22.156.205
Switch to IPv6 connection

DNSSEC [dnssec]