浙北英语网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

湖州日报:3名学子入围“希望之星”只有狂人才干的事情!带字幕美国之音慢速英语VOA Special English学英语视频近1000个,自诩为国内最全!适合增加词汇和锻炼听力!点击查看...
查看: 468|回复: 0
打印 上一主题 下一主题

【VPN】linux下搭建Openvpn服务环境

[复制链接]
跳转到指定楼层
1#
发表于 2013-3-27 21:47:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
安装之前请使用cat /dev/net/tun 进行检查是否开启tun/tap
[root@lx_web_s1 ~]# cat /dev/net/tun
cat: /dev/net/tun: File descriptor in bad state
说明tun/tap已经开启,可以进行openVPN的安装配置了VPN服务端
1、安装准备
yum -y install gcc gcc-c++
分别下载lzo、openssl、openvpn
2、软件安装
# cd /data/software
# wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz
# tar -xvzf lzo-2.03.tar.gz
# cd lzo-2.03
# ./configure -prefix=/usr/local/lzo && make && make install
# tar -xvzf openssl-0.9.8.tar.gz
# cd openssl-0.9.8
# ./config -prefix=/usr/local/openssl && make && make install
# tar -xvzf openvpn-2.2.2.tar.gz
# cd openvpn-2.2.2
# ./configure --prefix=/usr/local/openvpn --with-lzo-headers=/usr/local/lzo/include --with-lzo-lib=/usr/local/lzo/lib --with-ssl-headers=/usr/local/openssl/include/ --with-ssl-lib=/usr/local/openssl/lib/
# make && make install
3、配置
mkdir /etc/openvpn
cp -R /data/software/openvpn-2.2.2/easy-rsa/ /etc/openvpn
cd /etc/openvpn/easy-rsa/2.0/
这下面的文件做简单介绍:
vars 脚本,是用来创建环境变量,设置所需要的变量的脚本
clean-all 脚本,是创建生成CA证书及密钥 文件所需要的文件和目录
build-ca 脚本,生成CA证书(交互)
build-dh 脚本,生成Diffie-Hellman文件(交互)
build-key-server 脚本,生成服务器端密钥(交互)
build-key 脚本,生成客户端密钥(交互)
pkitool 脚本,直接使用vars的环境变量设置直接生成证书(非交互)
1、生成CA证书及密钥
调整vars文件
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="beijing"
export KEY_ORG="SHEN"
export KEY_EMAIL="ymshen83@163.com"
export KEY_CN=shen
export KEY_NAME=shen
export KEY_OU=shen
export PKCS11_MODULE_PATH=shen
export PKCS11_PIN=123456
初始化keys文件
#. ./vars (注意有两个点,两个点之间有空格)
# ./clean-all
# ./build-ca (一路按回车就可以)
......
Country Name (2 letter code) [CN]:
State or Province Name (full name) [BJ]:
Locality Name (eg, city) [beijing]:
Organization Name (eg, company) [SHEN]:
Organizational Unit Name (eg, section) [shen]:
Common Name (eg, your name or your server's hostname) [shen]:
Name [shen]:
Email Address [ymshen83@163.com]:
[root@lx_web_s1 2.0]# cd keys
在keys目录下就可以看到ca.crt ca.key文件
2、生成Diffie-Hellman文件
# cd ..
# ./build-dh #[注:Generating DH parameters, 1024 bit long safe prime]
# ls keys
ca.crt ca.key dh1024.pem index.txt serial
3.生成VPN server ca证书
# ./build-key-server lxsym #其中lxsym是CA证书的一个名字
一路回车,Sign the certificate? [y/n]:y 选择y
Certificate is to be certified until Jan 31 02:46:02 2022 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
然后把刚生成的CA证书和密钥copy到/etc/openvpn/下
# cd keys
# cp ca.crt ca.key lxsym.crt lxsym.key dh1024.pem /etc/openvpn/
4.生成客户端CA证书及密钥
# ./build-key client-lxsym
一路回车,Sign the certificate? [y/n]:y 选择y
在keys目录下生成了client-lxsym.crt client-lxsym.csr client-lxsym.key三个客户端证书,和ca.crt ca.key client-lxsym.crt client-lxsym.csr client-lxsym.key 五个文件打包,以便客户端vpn使用。
# cd keys
# tar zcvf userkey.tar.gz ca.crt ca.key client-lxsym.crt client-lxsym.csr client-lxsym.key /data/software/openvpn-2.2.2/sample-config-files/client.conf
# sz userkey.tar.gz #下载到windows客户端
5.openvpn配置文件
# cp /data/software/openvpn-2.2.2/sample-config-files/server.conf /etc/openvpn/openvpn.conf
cat /etc/openvpn/openvpn.conf
port 1194
proto tcp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/lxsym.crt
key /etc/openvpn/lxsym.key
dh /etc/openvpn/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.0.0 255.255.255.0"
client-to-client
duplicate-cn
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status /data/logs/openvpn-status.log
log /data/logs/openvpn.log
log-append /data/logs/openvpn.log
verb 3
6.启动OpenVPN
修改完毕后,即可以启动vpn,--daemon为后台守护进程模型启动
/usr/local/openvpn/sbin/openvpn --daemon --config /etc/openvpn/openvpn.conf
[root@lx_web_s1 2.0]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:10888 0.0.0.0:* LISTEN 2353/ss5
tcp 0 0 0.0.0.0:1194 0.0.0.0:* LISTEN 16659/openvpn

二.win客户端的安装和配置
安装目录为D:\Program Files (x86)\OpenVPN
下载openvpn客户端并进行安装,完成后把刚刚打包的userkey.tar.gz下载解压到OpenVPN的config 目录下
cat client.conf
client
dev tun
proto udp
remote 192.168.52.199 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert lxsym.crt
key lxsym.key
ns-cert-type server
comp-lzo
verb 3
redirect-gateway def1
确保与服务端的配置对应,然后将client.conf修改文件名为client.ovpn,右键点击client.ovpn,选择"Start OpenVPN on this config file" 也可以创建桌面快捷键,方便以后连接。
可以看到连接已经成功,或者启动openvpn-gui,双击后会在任务栏里有个小连接图标,变成绿色的话就表明你连接成功。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|典范英语|Oxford在线词典|在线查词典|每日签到|浙北英语网 ( 蜀ICP备10032068号 )

GMT+8, 2024-12-23 00:53 , Processed in 0.070381 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表