openvpn server 制作(笔记)
来源:互联网 发布:大淘客cms加淘口令 编辑:程序博客网 时间:2024/05/21 22:29
首先配置好环境,又两种办法。
1> yum -y install openssl openssl-devel gcc
2> 挂在本地光盘或者镜像安装里面的 openssl openssl-devel gcc
安装LZO软件包
1 > wget http://down1.chinaunix.net/distfiles/lzo-2.06.tar.gz
2> tar -zxvf lzo-2.03.tar.gz
3> cd lzo-2.03
4> ./configure && make && make install
安装OpenVPN
1> wget http://down1.chinaunix.net/distfiles/openvpn-2.0.9.tar.gz
2> cp openvpn-2.0.9.tar.gz /usr/local/
3> tar -zxvf openvpn-2.0.9.tar.gz
4> cd openvpn-2.0.9
5> ./configure --prefix=/usr/local/openvpn
6> make && make install
OpenVPN服务器端配置
先easy-rsa复制到安装文件到/usr/local/openvpn/进入修改vars文件最后部分的信息.
1> cd /usr/local/
2> cp -r openvpn-2.0.9/easy-rsa/ /usr/local/openvpn
3> cd /usr/local/openvpn/easy-rsa/2.0/
4> vim vars
将信息改为如下,保存退出
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="beijing"
export KEY_ORG="beijing"
export KEY_EMAIL="123@qq.com"
制作服务器文件
1> cd /usr/local/openvpn/easy-rsa/2.0
2> source vars
会出现一行信息,不用理,继续输入
3> ./clean-all
这是用来初始化keys目录,然后输入以下命令.
4> ./build-ca
后面一路回车即可以
这时候在keys目录中已经生成了文件
现在生成diffice-hellman文件
5> ./build-dh
回车即可
为服务器生成证书和密钥
6> ./build-key-server server
这里可以一路回车,密码最好写上,不低于六位,不填也可以,安全为好咯。后面有两个提示选择yes或者no直接yes即可
或者填写你想填写的信息后面只要“例如在Organizational Unit Name填入server这个名字即可,后面密码不低于6位”
修改openvpn的配置文件
1> mkdir -p /etc/openvpn
2> cp /usr/local/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn
3> vim /etc/openvpn/server.conf
以下有几步:
4> 将proto udp改为proto tcp 即服务启动tcp 1194端口,local后添加上服务器ip
5> 将ca那4行内容改成如下形式:
ca /usr/local/openvpn/easy-rsa/2.0/keys/ca.crt
cert /usr/local/openvpn/easy-rsa/2.0/keys/server.crt
key /usr/local/openvpn/easy-rsa/2.0/keys/server.key
还有上面所生产的diffie-hellman文件
dh /usr/local/openvpn/easy-rsa/2.0/keys/dh1024.pem
6> 修改server那一行如下
server 10.8.0.0 255.255.255.0
这是为VPN客户端分配IP的网段
7> 将verb 3改为verb5 这样可以看到更多的调试信息,可以不改。
8> 如果希望客户端的私有网络间可以互访,可添加上网段,如:
这个要注意,推路由可能会照成客户端所有的包都走vpn,导致客户机上不了网,如下修改。
# Push routes to the client to allow it
# to reach other private subnets behind
# the server. Remember that these
# private subnets will also need
# to know to route the OpenVPN client
# address pool (10.8.0.0/255.255.255.0)
# back to the OpenVPN server.
;push "route 192.168.10.0 255.255.255.0"
push "route 192.168.20.0 255.255.255.0"
9> 固定IP地址分配,取消下面行的注释:
client-config-dir ccd
route 10.8.0.0 255.255.255.252
这样就有下面的IP地址分配原则:
[5,6][9,10][13,14][17,18][21,22][25,26][29,30][33,34][37,38].....[241,242][245,246][249,250][253,254]
11> 开启系统自身的转发IP的功能
echo 1 > /proc/sys/net/ipv4/ip_forward
1> yum -y install openssl openssl-devel gcc
2> 挂在本地光盘或者镜像安装里面的 openssl openssl-devel gcc
安装LZO软件包
1 > wget http://down1.chinaunix.net/distfiles/lzo-2.06.tar.gz
2> tar -zxvf lzo-2.03.tar.gz
3> cd lzo-2.03
4> ./configure && make && make install
安装OpenVPN
1> wget http://down1.chinaunix.net/distfiles/openvpn-2.0.9.tar.gz
2> cp openvpn-2.0.9.tar.gz /usr/local/
3> tar -zxvf openvpn-2.0.9.tar.gz
4> cd openvpn-2.0.9
5> ./configure --prefix=/usr/local/openvpn
6> make && make install
OpenVPN服务器端配置
先easy-rsa复制到安装文件到/usr/local/openvpn/进入修改vars文件最后部分的信息.
1> cd /usr/local/
2> cp -r openvpn-2.0.9/easy-rsa/ /usr/local/openvpn
3> cd /usr/local/openvpn/easy-rsa/2.0/
4> vim vars
将信息改为如下,保存退出
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="beijing"
export KEY_ORG="beijing"
export KEY_EMAIL="123@qq.com"
制作服务器文件
1> cd /usr/local/openvpn/easy-rsa/2.0
2> source vars
会出现一行信息,不用理,继续输入
3> ./clean-all
这是用来初始化keys目录,然后输入以下命令.
4> ./build-ca
后面一路回车即可以
这时候在keys目录中已经生成了文件
现在生成diffice-hellman文件
5> ./build-dh
回车即可
为服务器生成证书和密钥
6> ./build-key-server server
这里可以一路回车,密码最好写上,不低于六位,不填也可以,安全为好咯。后面有两个提示选择yes或者no直接yes即可
或者填写你想填写的信息后面只要“例如在Organizational Unit Name填入server这个名字即可,后面密码不低于6位”
修改openvpn的配置文件
1> mkdir -p /etc/openvpn
2> cp /usr/local/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn
3> vim /etc/openvpn/server.conf
以下有几步:
4> 将proto udp改为proto tcp 即服务启动tcp 1194端口,local后添加上服务器ip
5> 将ca那4行内容改成如下形式:
ca /usr/local/openvpn/easy-rsa/2.0/keys/ca.crt
cert /usr/local/openvpn/easy-rsa/2.0/keys/server.crt
key /usr/local/openvpn/easy-rsa/2.0/keys/server.key
还有上面所生产的diffie-hellman文件
dh /usr/local/openvpn/easy-rsa/2.0/keys/dh1024.pem
6> 修改server那一行如下
server 10.8.0.0 255.255.255.0
这是为VPN客户端分配IP的网段
7> 将verb 3改为verb5 这样可以看到更多的调试信息,可以不改。
8> 如果希望客户端的私有网络间可以互访,可添加上网段,如:
这个要注意,推路由可能会照成客户端所有的包都走vpn,导致客户机上不了网,如下修改。
# Push routes to the client to allow it
# to reach other private subnets behind
# the server. Remember that these
# private subnets will also need
# to know to route the OpenVPN client
# address pool (10.8.0.0/255.255.255.0)
# back to the OpenVPN server.
;push "route 192.168.10.0 255.255.255.0"
push "route 192.168.20.0 255.255.255.0"
9> 固定IP地址分配,取消下面行的注释:
client-config-dir ccd
route 10.8.0.0 255.255.255.252
这样就有下面的IP地址分配原则:
[5,6][9,10][13,14][17,18][21,22][25,26][29,30][33,34][37,38].....[241,242][245,246][249,250][253,254]
11> 开启系统自身的转发IP的功能
echo 1 > /proc/sys/net/ipv4/ip_forward
12> 启动VPN服务(先关闭iptables和selinux)
/usr/local/openvpn/sbin/openvpn --config /etc/openvpn/server.conf &
13> 设置用service启动openvpn
cp /usr/local/openvpn-2.0.9/sample-scripts/openvpn.init /etc/init.d/openvpn
vi /etc/init.d/openvpn 注释154行
14 > 启动,关闭,重启openvpn服务
/etc/init.d/openvpn start | stop | restart
15> 查看openvon情况
ifconfig 会看见的,或者 ps aux | grep openvpn 或者lsof -i:1194 或者netstat -ntl |grep 1194 也可以看到
看见进程端口都没问题就ok辣!!
16> 为客户端生成证书文件
./build-key daxiong
也是和上面一样一路回车,注意服务器端又密码就要填写一样的密码,也可以后面在Organizational Unit Name填入daxiong这个名字即可,后面密码不低于6位
后面生成客户端文件以此类推。。。。。。
17 > 在 /etc/openvpn文件夹下新建名为ccd文件夹,在ccd 文件夹里以客户名为名新建文件,内容格式如下:
vi /etc/openvpn/ccd/daxiong 然后加入下面一行加入的ip要和第九步的规则一样:
ifconfig-push 10.8.0.5 10.8.0.6
========================================================================================================
windows客户端安装
1、先下载vpn软件http://openvpn.se/files上下载和服务器版本一致的windows客户端
2、安装客户端
3、将ca.crt、daxiong.crt、daxiong.key复制到C:\Program Files\OpenVPN\config中
4、把/usr/local/openvpn-2.0.9/sample-config-files/client.conf复制出来,在此基础上建立客户端配置文件放到C:\Program Files\OpenVPN\config中,改名为daxiong.ovpn,用文本修改内容
将proto udp改为proto tcp
将remote 那行修改为如下内容(服务器IP和端口号)
例如:172.16.17.128 1194
将ca那三行修改为如下
ca ca.crt
cert daxiong.crt
key daxiong.key
5、右击OpenVPN图标,选择connect,这时就可以连接上了。
=============================================================================================
6、linux客户端安装
linux下播openvpn直接把拷贝下来的key放到openvpn安装路径(默认/etc/openvpn)下按照windows的去配置
里面的配置,唯一不一样的就是,conf文件不需要改成ovpn后缀,因为linux下不需要用软件去拨号,把文件都放到/etc/openvn后直接,运行/etc/init.d/openvpn start即可。
=========================================================================================================
吊销证书方法:
1,vi /usr/local/openvpn/easy-rsa/2.0/openssl.cnf 注销282和283语句如下:
#MODULE_PATH = $ENV::PKCS11_MODULE_PATH
#PIN = $ENV::PKCS11_PIN
2、cd /usr/local/openvpn/easy-rsa/2.0/
3、source vars
4 、/revoke-full daxiong
5、cp /usr/local/openvpn/easy-rsa/2.0/keys/crl.pem /etc/openvpn/
6、vi /usr/local/openvpn/server.conf 添加下面语句:
crl-verify crl.pem
7,/etc/init.d/openvpn restart
===================================================================================
定时检测脚本vpn
#!/bin/bash
# restart openvpn
ping -c 2 10.50.0.1
if [ $? != 0 ]; then
ping -c 2 121.14.3.118
if [ $? == 0 ]; then
/etc/init.d/openvpn restart
fi
# restart openvpn
ping -c 2 10.50.0.1
if [ $? != 0 ]; then
ping -c 2 121.14.3.118
if [ $? == 0 ]; then
/etc/init.d/openvpn restart
fi
fi
阅读全文
0 0
- openvpn server 制作(笔记)
- Ubuntu Server上OpenVPN搭建笔记
- Fedora 安装 openvpn server
- OpenWrt 搭建OpenVPN Server
- openvpn server代码执行
- OpenVPN配置笔记
- OpenVPN配置笔记
- OpenVPN Server client官方下载
- 不断网!!!Openvpn Server-Client
- 【openssl学习笔记】SSL Server Cert制作
- Ubuntu Server下安装OpenVPN Server
- 配置centos 6.3 openvpn server 和 window 7 openvpn client
- OpenVPN-2.1.1制作证书指南
- 《ArcGIS Runtime SDK for Android开发笔记》——数据制作篇:紧凑型切片制作(Server缓存切片)
- Linux 下 OpenVPN 安装和 Windows OpenVPN GUI 安装笔记
- Linux 下 OpenVPN 安装和 Windows OpenVPN GUI 安装笔记
- Fedora 15下配置安装openvpn server
- Install OpenVPN Server on CentOS 5.4
- nginx使用非80端口时url带端口号的解决办法
- mysql学习-基本语句
- Centos安装redis时遇到You need tcl 8.5 or newer in order to run the Redis test
- MacBook运行C++操作方法(不用安装任何插件)
- pwnable学习笔记-fsb
- openvpn server 制作(笔记)
- Unique Paths
- Codeforces 797C Minimal String 贪心
- mysql 乱码 解决
- Android退出程序二次确认
- 解决安装MySQL5.5出现Cannot create windows service for mysql.error:0
- 比较字符串
- Eclipse解决乱码问题
- Unique Paths II