Installazzjoni u Konfigurazzjoni ta' OpenVPN Server u Klijent fuq Debian 7
Dan l-artikolu jagħti dettalji dwar kif tikseb konnettività IPv6 fuq OpenVPN billi tuża Debian Linux. Il-proċess ġie ttestjat fuq Debian 7 fuq KVM VPS b'konnettività IPv6 bħala s-server, u desktop Debian 7. Il-kmandi għandhom jitmexxew bħala root.
OpenVPN huwa programm VPN li juża SSL/TLS biex joħloq konnessjonijiet VPN siguri u kriptati, biex jidderieġi t-traffiku tal-Internet tiegħek, u b'hekk jipprevjeni snooping. Open VPN huwa kapaċi ħafna li jgħaddi b'mod trasparenti minn firewalls. Fil-fatt, jekk is-sitwazzjoni teħtieġha, tista 'taħdem fuq l-istess port TCP bħall-HTTPS (443), u b'hekk it-traffiku ma jkunx jista' jintgħaraf u għalhekk prattikament impossibbli li jiġi mblukkat.
OpenVPN jista 'juża varjetà ta' metodi bħal ċwievet sigrieti kondiviżi minn qabel, ċertifikati, jew usernames/passwords, biex iħallu lill-klijenti jawtentikaw mas-server. OpenVPN juża l-protokoll OpenSSL u jimplimenta ħafna karatteristiċi ta 'sigurtà u kontroll bħall-awtentikazzjoni ta' rispons għall-isfida, kapaċità ta 'single sign-on, karatteristiċi ta' ibbilanċjar tat-tagħbija u failover u appoġġ multi daemon.
Aħseb komunikazzjonijiet siguri - aħseb OpenVPN. Jekk ma tridx li xi ħadd jispikka fuq it-traffiku tal-internet tiegħek, uża OpenVPN biex tgħaddi t-traffiku kollu tiegħek minn mina kkodifikata ħafna u sigura.
Dan huwa speċjalment importanti meta tikkonnettja ma 'netwerks WIFI pubbliċi fl-ajruporti u postijiet oħra. Inti qatt ma tista 'tkun ċert dwar min huwa snooping fuq it-traffiku tiegħek. Tista' tikkanalizza t-traffiku tiegħek permezz tas-server OpenVPN tiegħek stess biex tipprevjeni snooping.
Jekk qiegħed f'xi wieħed mill-pajjiżi li regolarment jimmonitorjaw it-traffiku kollu tiegħek u jimblokkaw il-websajts kif riedu, tista' tuża OpenVPN fuq il-port TCP 443, biex tagħmilha indistingwibbli mit-traffiku HTTPS. Tista 'anki tgħaqqad OpenVPN ma' strateġiji oħra ta 'sigurtà bħal tunneling tat-traffiku OpenVPN tiegħek fuq mina SSL, biex tegħleb tekniki ta' Deep Packet Inspection li jistgħu jkunu kapaċi jidentifikaw firem OpenVPN.
OpenVPN jeħtieġ rekwiżiti minimi ħafna biex jaħdem. Sistema b'64 MB RAM u 1 GB spazju għall-HDD hija biżżejjed biex tħaddem OpenVPN. OpenVPN jaħdem fuq kważi s-Sistemi Operattivi mainstream kollha.
Installazzjoni u Konfigurazzjoni ta' OpenVPN fuq Debian 7
Mexxi l-kmand li ġej biex tinstalla OpenVPN.
# apt-get install openvpn
B'mod awtomatiku, l-iskripts easy-rsa huma installati taħt id-direttorju '/usr/share/easy-rsa/'. Għalhekk, irridu nikkopjaw dawn l-iskripts fil-post mixtieq jiġifieri /root/easy-rsa.
# mkdir /root/easy-rsa cp -prv /usr/share/doc/openvpn/examples/easy-rsa/2.0 /root/easy-rsa
Iftaħ il-fajl 'vars' u agħmel il-bidliet li ġejjin, iżda qabel ma tagħmel bidliet nissuġġerixxi li tieħu backup tal-fajl oriġinali.
# cp vars{,.orig}
Uża l-editur tat-test tiegħek, waqqaf il-valuri awtomatiċi għal easy-rsa. Pereżempju.
KEY_SIZE=4096 KEY_COUNTRY="IN" KEY_PROVINCE="UP" KEY_CITY="Noida" KEY_ORG="Home" KEY_EMAIL="[email "
Hawnhekk, qed nuża ċavetta 4096 bit. Tista 'tuża ċavetta 1024, 2048, 4096 jew 8192 bit kif mixtieq.
Esportazzjoni tal-valuri default billi tħaddem il-kmand.
# source ./vars
Naddaf kwalunkwe ċertifikat li kien iġġenerat qabel.
./clean-all
Sussegwentement, mexxi l-kmand li ġej biex tiġġenera ċertifikat CA u ċavetta CA.
# ./build-ca
Iġġenera ċ-ċertifikat tas-server billi tħaddem il-kmand. Issostitwixxi l-'isem tas-server' bl-isem tas-server tiegħek.
# ./build-key-server server-name
Iġġenera ċ-ċertifikat Diffie Hellman PEM.
# ./build-dh
Iġġenera ċ-ċertifikat tal-klijent. Issostitwixxi l-'isem tal-klijent' bl-isem tal-klijent tiegħek.
# ./build-key client-name
Iġġenera l-kodiċi HMAC.
# openvpn --genkey --secret /root/easy-rsa/keys/ta.key
Ikkopja ċ-ċertifikati lill-magni klijent u server kif ġej.
- Aċċerta ruħek li l-ca.crt ikun preżenti kemm fuq il-klijent kif ukoll fuq is-server.
- Iċ-ċavetta ca.key għandha tkun fuq il-klijent.
- Is-server jeħtieġ server.crt, dh4096.pem, server.key u ta.key.
- client.crt, client.key u ta.key għandhom ikunu fuq il-klijent.
Biex twaqqaf iċ-ċwievet u ċ-ċertifikati fuq is-server, mexxi l-kmandi.
# mkdir -p /etc/openvpn/certs # cp -pv /root/easy-rsa/keys/{ca.{crt,key},server-name.{crt,key},ta.key,dh4096.pem} /etc/openvpn/certs/
Issa trid tikkonfigura s-server OpenVPN. Iftaħ il-fajl '/etc/openvpn/server.conf'. Jekk jogħġbok agħmel bidliet kif deskritt hawn taħt.
script security 3 system port 1194 proto udp dev tap ca /etc/openvpn/certs/ca.crt cert /etc/openvpn/certs/server-name.crt key /etc/openvpn/certs/server-name.key dh /etc/openvpn/certs/dh4096.pem tls-auth /etc/openvpn/certs/ta.key 0 server 192.168.88.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 1800 4000 cipher DES-EDE3-CBC # Triple-DES comp-lzo max-clients 10 user nobody group nogroup persist-key persist-tun #log openvpn.log #status openvpn-status.log verb 5 mute 20
Ippermetta l-IP forwarding fuq is-server.
# echo 1 > /proc/sys/net/ipv4/ip_forward
Mexxi l-kmand li ġej biex twaqqaf OpenVPN biex tibda fuq il-but.
# update-rc.d -f openvpn defaults
Ibda s-servizz OpenVPN.
# service openvpn restart
Mexxi l-kmand li ġej biex tinstalla OpenVPN fuq il-magna tal-klijent.
# apt-get install openvpn
Uża editur tat-test, waqqaf il-konfigurazzjoni tal-klijent OpenVPN f''/etc/openvpn/client.conf', fuq il-klijent. Eżempju ta' konfigurazzjoni hija kif ġej:
script security 3 system client remote vpn_server_ip ca /etc/openvpn/certs/ca.crt cert /etc/openvpn/certs/client.crt key /etc/openvpn/certs/client.key cipher DES-EDE3-CBC comp-lzo yes dev tap proto udp tls-auth /etc/openvpn/certs/ta.key 1 nobind auth-nocache persist-key persist-tun user nobody group nogroup
Mexxi l-kmand li ġej biex twaqqaf OpenVPN biex tibda fuq il-but.
# update-rc.d -f openvpn defaults
Ibda s-servizz OpenVPN fuq il-klijent.
# service openvpn restart
Ladarba tkun sodisfatt li l-OpenVPN qed jaħdem tajjeb fuq IPv4, hawn hu kif tista' taħdem l-IPv6 fuq OpenVPN.
Żid il-linji li ġejjin fl-aħħar tal-fajl tal-konfigurazzjoni tas-server '/etc/openvpn/server.conf'.
client-connect /etc/openvpn/client-connect.sh client-disconnect /etc/openvpn/client-disconnect.sh
Dawn iż-żewġ skripts jibnu/jeqirdu l-mina IPv6 kull darba li klijent jgħaqqad/jiskonnettja.
Hawn hu l-kontenut ta' client-connect.sh.
#!/bin/bash BASERANGE="2a00:dd80:003d:000c" ifconfig $dev up ifconfig $dev add ${BASERANGE}:1001::1/64 ip -6 neigh add proxy 2a00:dd80:003d:000c:1001::2 dev eth0 exit 0
Il-host tiegħi jassenjali indirizzi IPV6 mill-blokk 2a00:dd80:003d:000c::/64. Għalhekk, nuża
2a00:dd80:003d:000c bħala l-BASERANGE. Immodifika dan il-valur skont dak li l-host tiegħek assenjak.
Kull darba li klijent jgħaqqad ma' OpenVPN, dan l-iskritt jassenja l-indirizz 2a00:dd80:003d:000c:1001::1 bħala l-indirizz IPV6 tal-interface tap0 tas-server.
L-aħħar linja twaqqaf Neighbour Discovery għall-mina tagħna. Żidt l-indirizz IPv6 tal-konnessjoni tap0 tan-naħa tal-klijent bħala l-indirizz prokura.
Hawn hu l-kontenut ta' client-disconnect.sh.
#!/bin/bash BASERANGE="2a00:dd80:003d:000c" /sbin/ip -6 addr del ${BASERANGE}::1/64 dev $dev exit 0
Dan biss iħassar l-indirizz tal-mina IPv6 tas-server, meta l-klijent jiskonnettja. Immodifika l-valur ta' BASERANGE kif xieraq.
Agħmel l-iskripts eżekutibbli.
# chmod 700 /etc/openvpn/client-connect.sh # chmod 700 /etc/openvpn/client-disconnect.sh
Żid l-entrati li ġejjin ma '/etc/rc.local' (Tista' wkoll timmodifika s-sysctls xierqa f'/etc/sysctl.conf).
echo 1 >/proc/sys/net/ipv6/conf/all/proxy_ndp echo 1 > /proc/sys/net/ipv4/ip_forward echo 1 > /proc/sys/net/ipv6/conf/all/forwarding /etc/init.d/firewall stop && /etc/init.d/firewall start
Dawn l-entrati jattivaw Neighbor Discovery u Forwarding. Żidt ukoll firewall.
Oħloq '/etc/init.d/firewall' u poġġi l-kontenut li ġej.
#!/bin/sh # description: Firewall IPT=/sbin/iptables IPT6=/sbin/ip6tables case "$1" in start) $IPT -F INPUT $IPT -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT $IPT -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT $IPT -A INPUT -i eth0 -p icmp -j ACCEPT $IPT -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT $IPT -A INPUT -i tap+ -j ACCEPT $IPT -A FORWARD -i tap+ -j ACCEPT $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT $IPT -t nat -F POSTROUTING $IPT -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE $IPT -A INPUT -i eth0 -j DROP $IPT6 -F INPUT $IPT6 -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT $IPT6 -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT $IPT6 -A INPUT -i eth0 -p icmpv6 -j ACCEPT $IPT6 -A FORWARD -s 2a00:dd80:003d:000c::/64 -i tap0 -o eth0 -j ACCEPT $IPT6 -A INPUT -i eth0 -j DROP exit 0 ;; stop) $IPT -F $IPT6 -F exit 0 ;; *) echo "Usage: /etc/init.d/firewall {start|stop}" exit 1 ;; esac
Mexxi '/etc/rc.local' u ibda l-firewall.
# sh /etc/rc.local
Dan jikkompleta l-modifiki tan-naħa tas-server.
Żid dan li ġej bħala l-aħħar linji tal-fajl tal-konfigurazzjoni tal-klijent tiegħek '/etc/openvpn/client.conf'.
# create the ipv6 tunnel up /etc/openvpn/up.sh down /etc/openvpn/down.sh # need this so when the client disconnects it tells the server explicit-exit-notify
L-iskripts 'il fuq u 'l isfel jibnu/jeqirdu l-punti finali tal-klijent IPV6 tal-konnessjoni tal-klijent tap0 kull darba li klijent jgħaqqad/jiskonnettja ma' jew mis-server OpenVPN.
Hawn hu l-kontenut ta' up.sh.
#!/bin/bash IPV6BASE="2a00:dd80:3d:c" ifconfig $dev up ifconfig $dev add ${IPV6BASE}:1001::2/64 ip -6 route add default via ${IPV6BASE}:1001::1 exit 0
L-iskrittura tassenja l-indirizz IPV6 2a00:dd80:3d:c:1001::2 bħala l-indirizz IPV6 tal-klijent u tistabbilixxi r-rotta IPV6 default permezz tas-server.
Immodifika IPV6BASE biex ikun l-istess bħal BASERANGE fil-konfigurazzjoni tas-server.
Hawn hu l-kontenut ta' down.sh.
#!/bin/bash IPV6BASE="2a00:dd80:3d:c" /sbin/ip -6 addr del ${IPV6BASE}::2/64 dev $dev /sbin/ip link set dev $dev down /sbin/ip route del ::/0 via ${IPV6BASE}::1 exit 0
Dan biss iħassar l-indirizz IPV6 tal-klijent u jkisser ir-rotta IPV6 meta l-klijent jiskonnettja mis-server.
Immodifika IPV6BASE biex ikun l-istess bħal BASERANGE fil-konfigurazzjoni tas-server u agħmel l-iskrittura eżekutibbli.
# chmod 700 /etc/openvpn/up.sh # chmod 700 /etc/openvpn/down.sh
B'għażla, immodifika '/etc/resolv.conf' u żid is-servers tal-isem IPV6 ta' Google għar-riżoluzzjoni tad-DNS.
nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844
Ibda mill-ġdid openvpn fuq is-server u mbagħad qabbad miegħu mill-klijent. Għandek tkun konness. Żur test-ipv6.com biex tara li l-konnettività IPV6 tiegħek fuq OpenVPN qed taħdem.
Links ta' Referenza
Homepage OpenVPN