http:openvpn.net
有时候可能需要使用一些VPN软件才能登陆。
一 安装
1 直接从源安装 命令如下:
sudo apt-get install openvpn
2 从官网下载源码 手动安装
我下载的版本是openvpn-2.2.2.tar.gz,随后放在Ubuntu个人的根目录文件夹下,我是放在了/home/ben/OpenVPN下面,下面进入安装阶段。
(1)、首先安装OpenVPN所需的插件
openssl
pam
lzo
安装命令为:
sudo apt-get install openssl sudo apt-get install libssl-dev
sudo apt-get install libpam0g-dev
sudo apt-get install liblzo2-dev
下面正式安装OpenVPN
进入刚才下载的目录
cd /home/ben/OpenVPN
解压缩
tar xfz openvpn-2.2.2.tar.gz
然后依次运行:
./configure
这里可能会出一些缺少安装lib的问题,可以自行安装
make
sudo make install
因为会创建一些文件 需要超级用户权限。
至此初步安装完毕。
二 配置
1 首先拷贝/use/local/share/doc/openvpn文件夹到/etc/下面
可能openvpn文件夹在不同的位置,可以用
whereis openvpn
查看。这里openvpn下面应该只有一个文件management-not.txt。
2 下面就开始生产证书,首先进入OpenVPN/openvpn-2.2.2/easy-rsa/2.0文件夹下面也可以拷贝到/etc/openvpn下面
修改vars文件可以将国家省份等修改
然后运行vars
source ./vars
随后如果第一次运行清空所有:
./clean-all
./build-ca
然后产生服务器证书:
./build-key-server server
此处的server是文件名参数,可以任意修改。
生成客户端key:
./build-key client1
client1仍为文件名参数,可以任意改。
产生Diffie Hellman参数:
./build-dh
OK至此一个客户端所需的证书已经完毕,都在easy-rsa/2.0/keys文件夹下面,也可以继续使用./build-key 产生更多客户端证书。
3 Server端配置
创建配置文件将sample-config-files中的server.conf 复制到/etc/openvpn中
sudo cp /home/ben/OpneVPN/sample-config-files/server.conf /etc/openvpn
编辑之:
sudo gedit /etc/openvpn/server.conf
修改如下:
server 172.16.8.0 255.255.255.0
这个只要不跟本地冲突即可,而且必须是测试字段的ip 10.xx 192.168.xx 172.16.xx
下面
push "route 192.168.10.0 255.255.255.0"
加dns服务器:
push "dhcp-option DNS 8.8.8.8"
基本就这样了,保存server.conf
运行包转发:
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
此处尚不知为何。
设置iptables:
sudo iptables -t nat -A POSTROUTING -s 172.16.8.0/24 -j SNAT --to-source 10.102.13.9
此处10.102.13.9本应该是服务器的公网IP,即客户端通过此IP链接到服务器。
下面只要将/easy/2.0/keys下面的
dh1024.pem ca.crt server.crt server.key
拷贝到/etc/openvpn下面即可
启动服务端:
sudo openvpn /etc/openvpn/server.conf
4 客户端配置
拷贝sample-config-files中的client.conf文件到客户机/etc/openvpn下面
编辑 remote my-server-1 1194中的my-server-1
我的是10.102.13.9并且将client.crt改为client1.crt .key也一样
拷贝
ca.crt client1.crt client1.key
到/etc/oepnvpn/下面。
OK,启动客户端
sudo openvpn /etc/openvpn/client.conf