过相互身份验证,客户端 VPN 使用证书在客户端和服务器之间执行身份验证。证书是由证书颁发机构 (CA) 颁发的一种数字身份证明形式。当客户端尝试连接到客户端 VPN 终端节点时,服务器使用客户端证书对客户端进行身份验证。您必须创建服务器证书和密钥,以及至少一个客户端证书和密钥

步骤一:创建证书(以linux系统为例)

1.1将 OpenVPN easy-rsa 存储库克隆到本地

git clone https://github.com/OpenVPN/easy-rsa.git

1.2导航到该文件夹easy-rsa/easyrsa3

cd easy-rsa/easyrsa3

1.3初始化新的 PKI 环境

./easyrsa init-pki

1.4构建新的证书颁发机构 (CA)

./easyrsa build-ca nopass

填入自己的信息

1.5生成服务器证书和密钥。输入 yes 完成

./easyrsa build-server-full <servername> nopass

1.6生成客户端证书和密钥。输入 yes 完成。

请确保保存客户端证书和客户端私钥,因为在配置客户端时将需要它们。

./easyrsa build-client-full xxx.<servername>.com  nopass

步骤二:导入证书到ACM

在您选择的文本编辑器中打开位于

/easy-rsa/easyrsa3/pki/issued/<servername>.com.crt 中的文件

将位于文件底部的 -----BEGIN CERTIFICATE----- 并以 -----END CERTIFICATE----- 结尾的部分复制到证书正文中

在您选择的文本编辑器中打开位于

/easy-rsa/easyrsa3/pki/private/<servername>.com.key 中的文件

将从 -----BEGIN CERTIFICATE----- 开始并以 -----END CERTIFICATE----- 结尾的文件部分复制到证书私钥中

在您选择的文本编辑器中打开位于 /easy-rsa/easyrsa3/pki/ca.crt 中的文件

将从 -----BEGIN CERTIFICATE----- 开始并以 -----END CERTIFICATE----- 结尾的文件部分复制到证书链中

重复类似步骤将对应客户端证书和密钥上传

在您选择的文本编辑器中打开位于

/easy-rsa/easyrsa3/pki/issued/xxx.<servername>.crt 中的文件

将位于文件底部的 -----BEGIN CERTIFICATE----- 并以 -----END CERTIFICATE----- 结尾的部分复制到证书正文中

在您选择的文本编辑器中打开位于

/easy-rsa/easyrsa3/pki/private/xxx.<servername>.com.key 中的文件

将从 -----BEGIN CERTIFICATE----- 开始并以 -----END CERTIFICATE----- 结尾的文件部分复制到证书私钥中

在您选择的文本编辑器中打开位于 /easy-rsa/easyrsa3/pki/ca.crt 中的文件

将从 -----BEGIN CERTIFICATE----- 开始并以 -----END CERTIFICATE----- 结尾的文件部分复制到证书链中

步骤三:创建客户端VPN端点

建议配置日志组,记录日志

默认情况配置VPN下所有流量将通过AWS VPN通道,如果您不希望所有用户流量都通过客户端 VPN 端点进行路由,则可以使用分割隧道客户端 VPN 端点。

选择需要使用VPN的VPC

配置VPC和安全组,安全组要开放443或1194端口

配置关联的子网

管理授权规则

比如您的上面关联目标网络的VPC 是172.31.0.0/16,这里就填这个地址块。实验这里是10.0.0.0/16

下载客户端配置文件

打开文件在后面添加客户端的证书和密钥

easy-rsa/easyrsa3/pki/issued/user1.awsclientvpnworkshop.com.crt

easy-rsa/easyrsa3/pki/private/user1.awsclientvpnworkshop.com.key

<cert>

Contents of client certificate (.crt) file [user1.awsclientvpnworkshop.com.crt] beginning from **-----BEGIN CERTIFICATE-----** and ending with **-----END CERTIFICATE-----**

</cert>

<key>

Contents of private key (.key) file [user1.awsclientvpnworkshop.com.key] beginning from **-----BEGIN CERTIFICATE-----** and ending with **-----END CERTIFICATE-----**

</key>

然后下载客户端

AWS Client VPN 下载 | Amazon Web Services
下载完后打开客户端配置文件

选择配置文件连接

选择一个EC2测试

ping测试

补充: linux连接aws vpn

1.下载openvpn

sudo yum -y install openvpn

2.创建一个xx.ovpn文件将上面编辑好的ovpn配置文件内容复制进去

3.sudo openvpn --daemon --config xxx.ovpn # --daemon是后台运行

4.ping 内网地址测试

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐