Linux运维技术点
Linux运维技术点
资源放送
↓ 扫一扫 领取录屏资料↓
OpenVPN是一个开源的应用程序,它允许您通过公共互联网创建一个安全的专用网络。OpenVPN实现一个虚拟专用网(VPN)来创建一个安全连接。
OpenVPN使用OpenSSL库提供加密,它提供了几种身份验证机制,如基于证书的、预共享密钥和用户名/密码身份验证。
在本教程中,我们将向您展示如何在CentOS 7.7服务器上逐步安装和配置OpenVPN。实现基于证书的OpenVPN认证。
准备工作:
1.Centos7.7 作为服务端。
2.Windows 10 作为客户端。
3.Easy-RSA 3.0.6。
4.服务端openvpn版本 2.4.8。
5.客户端openvpn版本2.4.8 。
下载地址:
https://swupdate.openvpn.org/community/releases/openvpn-2.4.8.tar.gz
关闭selinux:
[root@localhost ~]# sed -i '/^SELINUX/s/enforcing/disabled/g' /etc/selinux/config [root@localhost ~]# setenforce 0
安装epel仓库和openvpn, Easy-RSA:
[root@localhost ~]# yum -y install epel-release && yum -y install openvpn easy-rsa
配置EASY-RSA 3.0:
在/etc/openvpn文件夹下面创建easy-rsa文件夹,并把相关文件复制进去:
[root@localhost ~]# cp -r /usr/share/easy-rsa/3/* /etc/openvpn/easy-rsa/ [root@localhost ~]# cp -p /usr/share/doc/easy-rsa-3.0.6/vars.example /etc/openvpn/easy-rsa/vars
创建OpenVPN相关的密钥:
我们将创建CA密钥,server端、client端密钥,DH和CRL PEM, TLS认证钥匙ta.key。
[root@localhost easy-rsa]# cd /etc/openvpn/easy-rsa/
初始化并建立CA证书:
创建服务端和客户端密钥之前,需要初始化PKI目录:
[root@localhost easy-rsa]# ./easyrsa init-pki [root@localhost easy-rsa]# ./easyrsa build-ca nopass
创建服务器密钥:
创建服务器密钥名称为server1.key:
[root@localhost easy-rsa]# ./easyrsa gen-req server1 nopass
添加nopass 选项,是指不需要为密钥添加密码。
用CA证书签署server1密钥:
[root@localhost easy-rsa]# ./easyrsa sign-req server server
创建客户端密钥:
创建客户端密钥名称为client1.key:
[root@localhost easy-rsa]# ./easyrsa gen-req client1 nopass
用CA证书签署client1密钥:
[root@localhost easy-rsa]# ./easyrsa sign-req client client1
创建DH密钥:
根据在顶部创建的vars配置文件生成2048位的密钥:
[root@localhost easy-rsa]# ./easyrsa gen-dh
创建TLS认证密钥:
[root@localhost easy-rsa]# openvpn --genkey --secret
/etc/openvpn/easy-rsa/ta.key
生成证书撤销列表(CRL)密钥:
CRL(证书撤销列表)密钥用于撤销客户端密钥。如果服务器上有多个客户端证书,希望删除某个密钥,那么只需使用./easyrsa revoke NAME这个命令撤销即可。
生成CRL密钥:
[root@localhost easy-rsa]# ./easyrsa gen-crl
复制证书文件:
复制ca证书,ta.key和server端证书及密钥到/etc/openvpn/server文件夹里:
[root@localhost easy-rsa]# cp -p pki/ca.crt /etc/openvpn/server/ [root@localhost easy-rsa]# cp -p pki/issued/server1.crt /etc/openvpn/server/ [root@localhost easy-rsa]# cp -p pki/private/server1.key /etc/openvpn/server/ [root@localhost easy-rsa]# cp -p ta.key /etc/openvpn/server/
复制ca证书,ta.key和client端证书及密钥到/etc/openvpn/client文件夹里:
[root@localhost easy-rsa]# cp -p pki/ca.crt /etc/openvpn/client/ [root@localhost easy-rsa]# cp -p pki/issued/client1.crt /etc/openvpn/client/ [root@localhost easy-rsa]# cp -p pki/private/client1.key /etc/openvpn/client/ [root@localhost easy-rsa]# cp -p ta.key /etc/openvpn/client/
复制dh.pem , crl.pem到/etc/openvpn/client文件夹里:
[root@localhost easy-rsa]# cp pki/dh.pem /etc/openvpn/server/ [root@localhost easy-rsa]# cp pki/crl.pem /etc/openvpn/server/
(未完待续...)
推荐阅读
>>>新手必备-Linux系统安装配置+Xshell远程连接