ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2025/6/14 6:11:19ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
ËÄ. OpenVPN ÅäÖÃÑùÀýÎļþ
1. OpenVPN ·þÎñ¶Ë£ºserver.conf
´úÂë:
local 70.8.7.6 port 1194 proto udp dev tun ca /openvpn-2.0.5/easy-rsa/keys/ca.crt cert /openvpn-2.0.5/easy-rsa/keys/server.crt key
/openvpn-2.0.5/easy-rsa/keys/server.key # This file should be kept secret dh /openvpn-2.0.5/easy-rsa/keys/dh1024.pem server 10.8.0.0 255.255.255.0 client-to-client keepalive 10 120 comp-lzo persist-key persist-tun status
/openvpn-2.0.5/easy-rsa/keys/openvpn-status.log verb 4 push \name server µØÖ·, ÈçºÎ»ñÈ¡¼ûËæºó˵Ã÷ push \70.88.99.11\µØÖ·, ÈçºÎ»ñÈ¡¼ûËæºó˵Ã÷
˵Ã÷: ÓÐЩ domain ±» GFW ·âµôÁË, Õâʱ, Èç¹ûÒª·ÃÎÊÕâÐ©ÍøÕ¾, Ó¦¸Ã½« server É쵀 DNS push µ½ client. ÉÏÃæÊ¾ÀýÖÐµÄ dns ip: 70.88.98.10, 70.88.99.10, ¿ÉÒÔÔÚ /etc/resolv.conf ÖÐÕÒµ½: ´úÂë:
vi /etc/resolv.conf nameserver 70.88.98.10 nameserver 70.88.99.11
2. OpenVPN ¿Í»§¶Ë: client.ovpn
´úÂë:
client dev tun proto udp remote 70.8.7.6 1194 persist-key persist-tun ca ca.crt cert client1.crt key client1.key ns-cert-type server comp-lzo verb 3 redirect-gateway def1
Îå. OpenVPN ·ÃÎÊÍâÍøµÄÉèÖÃ
1. ´ò¿ªÂ·ÓÉ VPNÁ¬½Ó³É¹¦ºó, »¹ÐèÒªÉèÖ÷ÓÉ, ²ÅÄÜ͸¹ýVPN·ÃÎÊInternet. ÔÚ linux host ÉÏÌí¼Ó·ÓÉ: ´úÂë:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source 70.8.7.6 /etc/init.d/iptables save /etc/init.d/iptables restart
²»Í¬µÄ»úÆ÷£¬-o eth0 ²ÎÊý¿ÉÄܲ»Ò»Ñù£¬¾ßÌå¿ÉÊäÈë ifconfig ²é¿´£¬¸ãÇå ip(70.8.7.6)ËùÔÚµÄÍø¿¨ºÅ.
ͬʱ, ÐèÒª½« ip forward ´ò¿ª. ²»ÒªÓà echo 1 > /proc/sys/net/ipv4/ip_forward µÄ·½Ê½, ÕâÖÖ·½Ê½ÖØÆôºóÎÞЧ. ÏȲ鿴һÏÂ:
´úÂë:
sysctl -a | grep for #²é¿´½á¹û: net.ipv4.conf.tun0.mc_forwarding = 0 net.ipv4.conf.tun0.forwarding = 1 net.ipv4.conf.eth0.mc_forwarding = 0 net.ipv4.conf.eth0.forwarding = 1
net.ipv4.conf.lo.mc_forwarding = 0 net.ipv4.conf.lo.forwarding = 1 net.ipv4.conf.default.mc_forwarding = 0 net.ipv4.conf.default.forwarding = 1 net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.all.forwarding = 1 net.ipv4.ip_forward = 1
Èç¹ûÄãµÄÖ÷»úÉÏÁÐÊýÖµ²»ÊÇΪ1, ÔòÒª½«Æä¸Ä³É1, ÀýÈç:
´úÂë:
sysctl -w net.ipv4.ip_forward=1
ÒÀ´ËÀàÍÆ.
2. ¿ªÆôÓòÃû·þÎñÆ÷
Èç¹ûÄãÐèÒª·ÃÎÊһЩÒѾ±»GFW·âµôÁËÓòÃûµÄÍøÕ¾, µ«ÄãµÄ OpenVPN ·þÎñÆ÷ûÓб»·âµÄ»°£¬ÄÇôÄãÐèÒªÔÚÄãµÄÖ÷»úÉÏ¿ªÆô name server, ²¢½« dns push ¸ø client¡£ Ò»°ãµÄ¶ÀÁ¢Ö÷»ú, ¶¼´øÓÐ private dns server.
´úÂë:
rpm -qa | grep bind /etc/init.d/named start
ÁíÍâ, ±ØÐë±£Ö¤ server.conf ÅäÖÃÖÐ, ÓÐÕâÈý¸öÅäÖÃ:
´úÂë:
push \70.88.98.10\µØÖ· push \70.88.99.11\µØÖ·
µ± client Á¬½Ó³É¹¦ºó, ÔÚ cmd ÏÂÖ´ÐÐ ipconfig /all, Ó¦¸ÃÓÐÕâÀàËÆÕâÑùµÄÊä³ö:
´úÂë:
Ethernet adapter Local Area Connection 3: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : TAP-Win32 Adapter V8 Physical Address. . . . . . . . . : 00-FF-AA-B0-60-2B Dhcp Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes IP Address. . . . . . . . . . . . : 10.8.0.6 Subnet Mask . . . . . . . . . . . : 255.255.255.252 Default
Gateway . . . . . . . . . : 10.8.0.5 DHCP Server . . . . . . . . . . . : 10.8.0.5 DNS Servers . . . . . . . . . . . : 10.8.0.1 70.88.98.10 70.88.99.11 Lease Obtained. . . . . . . . . . : 2006Äê5ÔÂ25ÈÕ 5:13:52 Lease Expires . . . . . . . . . . : 2007Äê5ÔÂ25ÈÕ 5:13:52
Áù. ÉèÖà OpenVPN ·þÎñÆ÷ rebootºó×Ô¶¯Æô¶¯ openvpn
Ö´ÐÐÃüÁî:
´úÂë:
vi /etc/rc.local
È»ºóÔÚ×îºóÃæ¼ÓÈë´ËÐÐ:
´úÂë:
/usr/local/sbin/openvpn --config /usr/local/etc/server.conf > /dev/null 2>&1 &
Æß. OpenVPN ²âÊÔ
Äã¿ÉÒÔÓà VPN µÇ¼ÉÏÈ¥Ö®ºó, ²âÊÔ MSN, QQ, IE µÈÍøÂçÓ¦ÓÃ, Ò²¿ÉÒÔ³¢ÊÔ·ÃÎÊһЩ±» GFW ½ûµôµÄÍøÕ¾, µ±È», ǰÌáÊÇÄãµÄ VPN ·þÎñÆ÷²»ÔÚ¾³ÄÚ.
°Ë. ʹÓà OpenVPN µÄÇ¿ÁÒ×¢ÒâÊÂÏî
²»½¨ÒéÓà VPN µÇ¼ paypal ÕÊ»§ºÍ google adsense ÕÊ»§. ·ñÔòÓпÉÄܵ¼ÖÂÕÊ»§ÊÜÏÞ»ò´øÀ´ÆäËû·çÏÕ.
Ê®. һЩ²¹³ä
2011.01.11 ²¹³ä£º½ñÌìÓà yum -y update Éý¼¶ÁË CentOS Ö®ºó£¬·¢ÏÖ OpenVPN Á¬½Ó²»ÉÏÈ¥ÁË£¬ÀÏÊÇ˵Óû§¼ìÑé³ö´í¡£¾¼ì²é server log£¬·¢ÏÖÓÐÒÔÏÂÈÕÖ¾£º
Thu Feb 10 11:13:07 2011 us=3362 222.244.***.**:45771 TLS: Initial packet from 222.244.***.**:45771, sid=eec450eb 8673ceef
Thu Feb 10 11:13:10 2011 us=798063 222.244.***.**:45771 openvpn_execve: external program may not be called unless '--script-secur ity 2' or higher is enabled. Use '--script-security 3 system' for backward compatibility with 2.1_rc8 and earlier. See --help t ext or man page for detailed info.
Thu Feb 10 11:13:10 2011 us=798127 222.244.***.**:45771 TLS Auth Error: user-pass-verify script failed to execute: /usr/bin/php - q /home/xiaohui/openvpn-manager/admin/openvpn-auth.php
Thu Feb 10 11:13:10 2011 us=798141 222.244.***.**:45771 TLS Auth Error: Auth Username/Password verification failed for peer
¾²é£¬ÔÀ´ÊÇ CentOS ÔÚ½øÐÐ yum update ʱ£¬½« OpenVPN Ò²ÓÉ2.0 Éý¼¶µ½ÁË 2.1¡£¶ø OpenVPN 2.1 ×î´óµÄ¸Ä±äÖ®Ò»£¬¾ÍÊǼÓÁËÒ»¸ö script-security²ÎÊý¡£Èç¹û°´ÎÒµÄÕâÆª½Ì³Ì½øÐа²×°£¬µ«×°µÄÊÇ OpenVPN 2.1 ¼°ÒÔÉϰ汾µÄ»°£¬¼ÇµÃÔÚ server.conf ÖÐÔÙ¼ÓÉÏÕâôһÐÐÅäÖü´¿É£º
script-security 3 ³£³öÏֵĴíÎó¼°½â¾ö·½Õâ°¸