Open VPN 环境搭建手册

1,392 阅读3分钟

Open VPN 环境搭建手册

 

目录

1 OpenVpn介绍... 3

2 OpenVpn应用场景... 3

3 OpenVpn服务端安装与配置... 4

4 客户端使用... 7

 

1 OpenVpn介绍

OpenVPN 是一个基于 OpenSSL库的应用层 VPN 实现。和传统 VPN 相比,它的优点是简单易用。vpn直译就是虚拟专用通道,是提供企业之间或者公司之间安全数据传输的隧道。OpenVPN是一个全特性的SSL VPN,它使用2层或3层的安全网络技术,使用的是工业标准的SSL/TLS协议。SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(TransportLayer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。OpenVPN支持灵活的客户端授权方式,支持证书、智能卡、用户名和密码,允许用户可以通过防火墙连接到VPN的虚拟接口,OpenVPN不是一个基于web代理的应用,也不是基于浏览器访问。

2 OpenVpn应用场景

1)企业员工远程办公,通过远程VPN连接到公司的服务器,访问公司ERP、OA等系统。IT技术人员通过VPN远程连接到机房进行系统维护;

2)总部与分支机构之间联通,打通分支与总部的连接;

3)多IDC机房之间的互联,实现多机房之间的互联互通,数据共享,文件传送;

注意:OpenVPN适用于功能性实现,对于大流量大带宽应用,建议使用点对点专线实现互联。

3 OpenVpn服务端安装与配置

1)基础环境配置

关闭防火墙

#systemctl stop firewalld && systemctl disable firewalld

关闭selinux

#sed -I ‘s/enforcing/disabled/’ /etc/selinux/config

开启内核参数IP转发

#echo 1 > /proc/sys/net/ipv4/ip_forward

#sysctl -p /etc/sysctl.conf

2)安装docker

下载docker源

#wget -O /etc/yum.repo.d/ docker源url

清除缓存

#yum clean all

#yum makefast fast

安装docker

#yum install docker -y

配置docker镜像加速,主要修改/etc/docker/daemon.json文件

示例格式:

{

“registry-mirrors” :[“加速地址,可填写阿里云的”]

}

启动docker

#systemctl start docker && systemctl enable docker

3)配置openvpn

拉取openvpn镜像

#docker search openvpn

拉取最近的镜像

#docker pull kylemanna/openvpn

创建全局变量(方便设置)

OVPN_DATA="/etc/openvpn"

// 下面的全局变量换成你的服务器的公网ip

IP="xxx.xxx.xxx.xxx"

#mkdir $OVPN_DATA

配置

#docker run -v OVPNDATA:/etc/openvpnrm kylemanna/openvpnovpngenconfigutcp://{OVPN_DATA}:/etc/openvpn --rm \ kylemanna/openvpn ovpn_genconfig -u tcp://{IP}

密钥配置

#docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it  \

kylemanna/openvpn ovpn_initpki

Enter PEM pass phrase: 输入123456(你是看不见的)

Verifying - Enter PEM pass phrase: 输入123456(你是看不见的)

Common Name (eg: your user, host, or server name) [Easy-RSA CA]:回车一下

Enter pass phrase for /etc/openvpn/pki/private/ca.key:输入123456

生成docker容器

#docker run --name openvpn -v ${OVPN_DATA}:/etc/openvpn \

-d -p 1194:1194 --cap-add=NET_ADMIN --name openvpn \   kylemanna/openvpn

4)客户端证书增删

新增客户端配置文件脚本

#!/bin/bash

read -p "please your username: " NAME

docker run -v OVPNDATA:/etc/openvpnrmitkylemanna/openvpneasyrsabuildclientfull{OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full NAME nopass

docker run -v OVPNDATA:/etc/openvpnrmkylemanna/openvpnovpngetclient{OVPN_DATA}:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient NAME > /opt/openvpn/conf/"$NAME".ovpn

删除客户端配置文件脚本

#!/bin/bash

read -p "Delete username: " DNAME

docker run -v OVPNDATA:/etc/openvpnrmitkylemanna/openvpneasyrsarevoke{OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn easyrsa revoke DNAME

docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn easyrsa gen-crl

docker run -v OVPNDATA:/etc/openvpnrmitkylemanna/openvpnrmf/etc/openvpn/pki/reqs/"{OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn rm -f /etc/openvpn/pki/reqs/"DNAME".req

docker run -v OVPNDATA:/etc/openvpnrmitkylemanna/openvpnrmf/etc/openvpn/pki/private/"{OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn rm -f /etc/openvpn/pki/private/"DNAME".key

docker run -v OVPNDATA:/etc/openvpnrmitkylemanna/openvpnrmf/etc/openvpn/pki/issued/"{OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn rm -f /etc/openvpn/pki/issued/"DNAME".crt

4 客户端使用

Openvpn客户端下载安装,导入证书即可连接使用