参考:http://freenuts.com/how-to-set-up-openvpn-in-a-vps/
VPN IP:69.163.34.62
网卡是venet0,
-
修改服务器的DNS为Google Public DNS,防止国内DNS污染:
sudo vi /etc/dhcp/dhclient.conf
找到并修改
prepend domain-name-servers 8.8.8.8, 8.8.4.4;
- 架设VPN服务器,在VPS上架好了ftp后不能登录,要建立一个sudo用户username,然后才能ftp登录。密码password
-
安装openvpn,并且生成密码
sudo apt-get install openvpn
sudo cp -R /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn
cd /etc/openvpn/easy-rsa/
su
source ./vars (注意两个点之间要有空格)
./clean-all
./build-ca
./build-key-server server
./build-key client
./build-dh
全部回答”y“
exit (退出su)
-
修改iptables规则,让OpenVPN连接到全世界。
转发IP
sudo vi /etc/sysctl.conf
找到下面行,去掉前面的#注释
net.ipv4.ip_forward=1
启动转发,
sudo sysctl -p
得到如下结果,
net.ipv4.ip_forward=1
-
建立iptalbes规则,
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT –to 69.163.34.62
-
建立VPS OpenVPN配置文件
sudo vi /etc/openvpn/server.conf
按照如下配置:
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
server 10.8.0.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”
client-to-client
duplicate-cn
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log /var/log/openvpn.log
verb 3
-
开启OpenVPN服务
sudo /etc/init.d/openvpn start
-
客户端配置,根据如下配置修改客户端的opvn文件
sudo vi /etc/openvpn/easy-rsa/keys/client.conf
粘贴如下:
client
dev tun
proto udp
remote 69.163.34.62 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
comp-lzo
verb 3
redirect-gateway
script-security 2
-
重启之后会变,则修改
sudo vi /etc/rc.local
加入如下行,
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT –to 69.163.34.62
openvpn /etc/openvpn/server.conf
-
将keys目录里面的4个文件下回本地,取回的时候要先修改keys目录的权限
client.conf
ca.crt
client.crt
client.key
-
查看网络设备节点
ls /dev/net -l
如果没有,则VPN服务无法启动,那么编辑rc.local文件,在服务启动前加入如下行。
sudo mkdir /dev/net
sudo mknod /dev/net/tun c 10 200
sudo chmod 666 /dev/net/tun
-
重启后,看是否启动了服务,sudo /etc/init.d/openvpn status,此时我的还是显示未启动,但是客户端实际上已经可以连接上了。
VPN ‘server’ is not running
- 在手机端安装openvpn connect软件,打开后,将4个文件拷到SD卡,将client.conf修改后缀名为client.opvn。先用浏览器上www.ip138.com查看ip在哪,然后打开软件后倒入profile from SD,选择client.opvn,连接后。再看IP,如果是美国IP就对了。
- 然后就可以自由上FB,Twitter等等啦。
-
在Windows下面使用,在下面地址下载客户端
https://openvpn.net/index.php/open-source/downloads.html
安装之后,将4个文件复制到安装目录的config目录下,一定要用管理员打开应用才行。
- 缺点是openvpn是全局的,而不能指定局部应用程序。
- Anyway, Enjoy it~~
发表回复