openvpn安装文档

简介: openvpn通过使用公开密钥(非对称密钥,加密解密使用不同的key,一个称为Publice key,另外一个是Private key)对数据进行加密的。这种方式称为TLS加密。openvpn使用TLS加密的工作过程是,首先VPN Sevrver端和VPN Client端要有相同的CA证书,双方通过交换证书验证双方的合法性,用于决定是否建立VPN连接。然后使用对方的CA证书,把自己目前使用的数据加密方法加密后发送给对方,由于使用的是对方CA证书加密,所以只有对方CA证书对应的Private key才能解密该数据,这样就保证了此密钥的安全性,并且此密钥是定期改变的。

centos7安装yum
[root@openvpn ~]# yum -y install easy-rsa openvpn libssl-dev openssl
配置服务器进行初始化
[root@openvpn ~]#mkdir -p /etc/openvpn/easy-rsa && cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/
配置pki
[root@openvpn 2.0]# pwd
/etc/openvpn/easy-rsa/2.0
[root@openvpn 2.0]# grep -vE '^#|^$' vars
export EASY_RSA="pwd"
export OPENSSL="openssl"
export PKCS11TOOL="pkcs11-tool"
export GREP="grep"
export KEY_CONFIG=$EASY_RSA/whichopensslcnf $EASY_RSA
export KEY_DIR="$EASY_RSA/keys"
echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR
export PKCS11_MODULE_PATH="dummy"
export PKCS11_PIN="dummy"
export KEY_SIZE=2048
export CA_EXPIRE=3650
export KEY_EXPIRE=3650
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BeiJing"
export KEY_CITY="BeiJing"
export KEY_ORG="9F"
export KEY_EMAIL="me@9fbank.cc"
export KEY_OU="MyOrganizationalUnit"
export KEY_NAME=server
export KEY_CN="www.9f.com"
产生ca证书
[root@openvpn 2.0]# source ./vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/2.0/keys
配置证书
1.清空原有证书
[root@openvpn 2.0]# ./clean-all
2.生产服务器端和客户端ca证书
[root@openvpn 2.0]# ./build-ca
注:缺省配置一路回车,记住名字后面用到
[root@openvpn 2.0]# ./build-key-server server
注:缺省配置一路回车,记住名字后面用到
[root@openvpn 2.0]# ./build-ca client
注:缺省配置一路回车,记住名字后面用到
3.生成DH验证文件
[root@openvpn 2.0]# ./build-dh
注:生成diffie hellman参数用于增强openvpn安全性生成需要漫长等待让服务器飞一会。
配置openvpn server文件
[root@openvpn openvpn]# grep -vE '^$|^;|^#' server.conf
local 101.200.81.189
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 10.160.0.0 255.240.0.0"
duplicate-cn
keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
explicit-exit-notify 1
启动并设置开启自动启动openvpn服务
[root@openvpn openvpn]# systemctl start openvpn@server 启动服务
[root@openvpn openvpn]# systemctl enable openvpn@server 开机启动

目录
相关文章
|
2月前
|
存储 Ubuntu 网络安全
在Ubuntu系统下通过Caddy实现LXD的安装与部署
通过上述步骤,您可以在Ubuntu系统下通过Caddy实现LXD的安装与部署。这种方法不仅可以提高容器管理的效率,还可以借助Caddy的自动SSL管理功能提升安全性。
45 0
|
4月前
|
网络协议 安全 Unix
VSFTP超详细安装教程
VSFTP超详细安装教程
|
11月前
|
Ubuntu
Ubuntu安装Jpom
Ubuntu安装Jpom
130 0
|
6月前
|
Linux
linux安装gitlab
linux安装gitlab
66 0
|
Ubuntu 应用服务中间件 网络安全
内网穿透:ubuntu下搭建frp服务器(frp+nginx)
最近在做微信公众号开发的项目时,开发过程中需要用到可访问的公网地址来接收微信公众号发放的消息;以前经常用Utool工具中的内网映射来开发调式,后面这个工具中的映射功能用不了了;在网上找了好久,发现工具很多,但是在微信上面打开时,会被为微信给屏蔽掉;没办法只能自己搭建一个NAT,这里我使用FRP来搭建;
1514 0
|
缓存 负载均衡 网络协议
Nginx安装及部署
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,公开版本1.19.6发布于2020年12月15日。 其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。2022年01月25日,nginx 1.21.6发布。 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,
Nginx安装及部署
|
负载均衡 网络协议 前端开发
Nginx下载安装及基本命令
Nginx下载安装及基本命令
217 0
Nginx下载安装及基本命令
|
关系型数据库 MySQL Linux
|
程序员
dokuwiki安装问题
工作了几年,虽然在程序员这个道路上才算开始,希望以后能够有所成长,为了把平时遇到的技术问题,记录下来,第一个想到的就是写wiki,博客虽然创建了许久,但是没有坚持写下去,在网上找了许多的wiki程序,dokuwiki是最符合的。
2023 0