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 开机启动

目录
相关文章
|
Ubuntu 安全 Linux
Linux Ubuntu系统安装OpenVPN服务
Linux Ubuntu系统安装OpenVPN服务
|
Linux 网络安全 网络虚拟化
OpenVPN服务部署
大多数场景下,总公司与分公司之间都是需要互联的,或者在外地出差办公的员工想要访问内部的资料,为了保证这些流量安全可靠的传输到目的地,并且能够最大的节约成本,便需要考虑使用VPN技术了。
5774 2
|
Linux 网络安全 网络虚拟化
|
安全 网络协议 网络安全
|
3月前
|
数据可视化 API 开发工具
Unity3D 2023 游戏开发软件完整部署指南:安装步骤、激活方法及安装包
Unity 2023是一款多功能游戏开发引擎,支持3D游戏、建筑可视化与实时动画创作。新增对Apple Vision Pro的visionOS支持,强化XR设备兼容性,优化多平台图形性能,提升开发效率。
542 1
|
Linux 数据安全/隐私保护 C语言
新手向导:轻松离线搭建最新版OpenVPN(含一键安装脚本)
OpenVPN 是常用的虚拟私有网络工具,通过 Docker 搭建非常简单。但常用的 kylemanna/openvpn 镜像已三年未更新,停留在 OpenVPN 2.4 版本。为了升级到最新版本(如 2024 年 2 月发布的 v2.6.9),可以通过官方开源社区获取最新安装包并手动编译安装。步骤包括安装依赖、下载并编译 OpenSSL 和 OpenVPN、生成证书和配置文件等。此外,GitHub 上有一键安装脚本 openvpn-install.sh,简化了安装过程,但其版本可能不是最新的。安装完成后,还需配置 iptables 以确保客户端能正常使用代理网络。
16112 1
|
Linux 网络虚拟化 Docker
新手向导:轻松掌握Docker搭建OpenVPN
OpenVPN 是一个开源的VPN软件包,支持多种操作系统和平台。它包含社区版(免费但需具备Linux命令
4833 2
|
网络协议 安全 网络虚拟化
openvpn-as的三种安装方式
OpenVPN 是一个开源的VPN软件包,支持多种操作系统,可创建基于SSL/TLS的安全隧道。它分为社区版
2849 2
|
Linux 数据安全/隐私保护 虚拟化
centos7部署openVPN
centos7部署openVPN
4835 1