以ubuntu系统为例:

1.安装openvpn和easy-rsa,easy-rsa主要用来设置CA(证书颁发机构)

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

$ sudo apt-get update

$ sudo apt-get install -y openvpn easy-rsa

2. 创建CA目录

OpenVPN是TLS / SSL VPN。 这意味着它利用证书来加密服务器和客户端之间的流量。 为了颁发受信任的证书,我们需要设置自己的简单证书颁发机构(CA)。

$ make-cadir  ~/openvpn-ca

$ cd ~/openvpn-ca

3. 配置CA变量

vim编辑vars文件,找到以下字段自行修改,可以直接使用默认的值:

openvpn搭建 随笔 第1张

export KEY_NAME="aws" 的值根据自己的需要修改,我这里写了aws

4. 创建证书颁发机构

$ cd ~/openvpn-ca

$ ln -s openssl-1.0.0.cnf openssl.cnf

$ source vars

看到一下信息表示成功了:

NOTE: If you run ./clean-all, I will be doing a rm -rf on /home/ubuntu/openvpn-ca/keys

保证我们操作环境的正确,先清理环境:

$ ./clean-all

$ ./build-ca

一直按enter键就行,会根据var中的配置来自行创建

openvpn搭建 随笔 第2张

5. 创建服务器证书、密钥、加密文件

接下来,我们将生成服务器证书和密钥对,以及加密过程中使用的一些其他文件。首先生成OpenVPN服务器证书和密钥对。 我们可以通过键入:

$ ./build-key-server aws

会自动根据var中的配置来生成文件,一直按enter键,不需要输入challenge password,

以下两行需要输入y来确认

Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y

openvpn搭建 随笔 第3张

生成其他文件,我们可以通过以下内容生成强密的Diffie-Hellman密钥以在密钥交换期间使用:

 $ ./build-dh

生成HMAC签名以增强服务器的TLS完整性验证功能:

$ openvpn --genkey --secret keys/ta.key

6. 生成客户端证书和密钥对

生成没有密码的凭据,以帮助自动连接,请使用build-key命令,如下所示:

$ cd ~/openvpn-ca

$ source vars

$ ./build-key client1

如果您希望创建受密码保护的凭据集,请使用build-key-pass命令:

$ cd ~/openvpn-ca

$ source vars

$ ./build-key-pass client1

openvpn搭建 随笔 第4张

7. 配置openvpn服务

将我们创建的文件移动到/etc/openvpn目录下:

$ cd ~/openvpn-ca/keys

$ sudo cp ca.crt aws.crt aws.key ta.key dh2048.pem /etc/openvpn

将示例OpenVPN配置文件复制并解压缩到配置目录中,以便我们可以将其用作设置的基础:

$ gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo tee /etc/openvpn/server.conf

调整openvpn配置:

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄