Easy-RSA 3文档自述文件

本文档说明了Easy-RSA 3及其各个功能的工作方式。

如果您进行快速入门时,一无所知或知之甚少.查看在目录下的 特定实现的说明或Readme自述文件是一个好方法。

Easy-RSA概述

Easy-RSA是用于管理X.509 PKI或公用密钥基础结构的实用程序。一种 PKI基于信任特定机构对身份验证进行身份验证的概念 远程对等有关PKI工作原理的更多背景,请参阅“ PKI简介”。 文件。

该代码是用与平台无关的POSIX外壳编写的,可广泛用于 主机系统范围。 Windows官方发行版还附带了 Easy-RSA所需的程序。外壳程序代码尝试限制数量 它所依赖的外部程序。与加密有关的任务使用openssl作为 功能后端。

功能亮点

以下是较引人注意的Easy-RSA功能的详尽列表:

获取和使用Easy-RSA

####下载和解压缩(安装)

Easy-RSA的主程序是一个脚本,并受几个配置文件支持。如 这样,就不需要正式的“安装”。准备使用Easy-RSA是 下载压缩包(Linux / Unix上的.tar.gz或 .zip(适用于Windows)。将其解压缩到您选择的位置。没有 需要编译或依赖于操作系统的设置。

您应该以非root(非管理员)帐户安装和运行Easy-RSA 因为不需要root访问。

####运行Easy-RSA

调用Easy-RSA是通过您首选的shell完成的。在Windows下,您 将使用EasyRSA Start.bat程序提供POSIX-shell环境 适合使用Easy-RSA。

运行命令的基本格式为:

./easyrsa command [ cmd-opts ]

其中,command是要运行的命令的名称,cmd-opts是任意的 提供给命令的选项。一些命令具有强制性或可选性 cmd-opts。注意命令的前导。/组件: 类似Unix的环境,对于某些Windows用户而言可能是一个新概念。

常规用法和命令帮助可以显示为:

./easyrsa help [ command ]

不使用任何命令,常规用法和可用命令列表运行时 显示;提供命令时,该命令的详细帮助输出 显示。

配置Easy-RSA

Easy-RSA 3不再需要任何配置文件即可进行操作,与之前不同 早期版本。但是,vars.example文件包含许多注释 可用于根据需要控制非默认行为的选项。读 该文件将提供可用的基本配置的想法。注意 vars文件必须仅命名为vars(不带扩展名)才能有效使用。

另外,可以在运行时定义一些选项,并在 命令行。完整列表可以显示为:

./easyrsa  help options

这些选项中的任何一个都可以根据需要显示在命令之前,如下所示:

./easyrsa [options] command [ cmd-opts ]

对于专家,带有env-vars和自定义X.509扩展的其他配置 是可能的。有关详细信息,请查阅EasyRSA-Advanced文档。

入门:基础知识

对于熟悉PKI工作原理的人来说,此处使用的某些术语是通用的。 除了描述PKI基础知识外,如果出现以下情况,请查阅文档Intro-To-PKI。 您需要有关PKI工作原理的更基本描述。

####创建Easy-RSA PKI

为了做一些有用的事情,Easy-RSA需要首先初始化一个 PKI的目录。一次安装即可管理多个PKI Easy-RSA的名称,但除非另有说明,否则默认目录简称为“ pki” 指定。

要创建或清除(重新初始化)新的PKI,请使用以下命令:

./easyrsa init-pki

这将创建一个可供使用的新的空白PKI结构。创建完成后, 该PKI可用于建立新的CA或生成密钥对。

PKI目录结构

Easy-RSA PKI包含以下目录结构:

在干净的PKI中,还没有文件,只有裸目录。命令称为 稍后将根据操作创建必要的文件。

建立CA时,会结合使用以下方法创建许多新文件: Easy-RSA和(间接)openssl。重要的CA文件是:

####创建PKI之后

创建PKI后,下一个有用的步骤将是创建一个 CA,或为需要密钥对的系统生成密钥对。继续 以下相关部分。

使用Easy-RSA作为CA

####建立CA

为了签署请求以生成证书,您需要一个CA。创建一个 创建的PKI中的新CA,运行:

./easyrsa build-ca

确保使用强密码短语来保护CA私钥。注意 您将来在执行签名时必须提供此密码短语 您的CA进行操作,因此请务必记住它。

在创建过程中,您还将为CA选择一个名称,称为 通用名称(CN。)此名称仅用于显示目的,可以设置为 你喜欢。

####将请求导入到CA

一旦建立了CA,便可以使用PKI导入来自 要求此CA签名证书的外部系统。在 为了对请求进行签名,必须先将其导入,以便Easy-RSA知道 它。该请求文件必须是PKCS#10格式的标准CSR。

无论要导入的文件名如何,Easy-RSA都使用定义的“短名称” 导入期间请参考此请求。导入工作如下:

./easyrsa import-req /path/to/request.req nameOfRequest

nameOfRequest通常应指代系统或进行 请求。

####签署请求

Easy-RSA导入请求后,即可对其进行审核和签名。每一个 证书需要一个“类型”,用于控制证书获得的扩展名 Easy-RSA附带了3种可能的类型:“客户端”,“服务器”和“ ca”,已描述 下面:

*客户端-TLS客户端,适用于VPN用户或Web浏览器(Web客户端) *服务器-TLS服务器,适用于VPN或Web服务器

本地站点可以根据需要定义其他类型的证书;看到 有关详细信息的高级文档。

####撤销和发布CRL

如果需要吊销签发证书,可以执行以下操作:

./easyrsa撤消nameOfRequest

要生成适合发布到使用它的系统的CRL,请运行:

./easyrsa gen-crl

请注意,这将需要发布或发送到依赖于 否则,最新的CRL仍然有效。

使用Easy-RSA生成密钥对和请求

Easy-RSA可以生成PKCS#10格式的密钥对和证书请求。这个 请求是CA生成和返回签名证书所需要的。

理想情况下,您永远不应为客户端或服务器中的客户端或服务器生成实体密钥对 您用于CA的PKI。最好分开此过程并生成 密钥对仅在您计划使用它们的系统上。

Easy-RSA可以使用以下命令生成密钥对并请求:

./easyrsa gen-req nameOfRequest

然后,您将有机会修改请求的主题详细信息。 Easy-RSA默认使用命令行上提供的简称,尽管您可以 可以根据需要随意更改。提供密码短语和主题后 详细信息,将显示密钥对和请求文件。

为了获得签名证书,必须将请求文件发送到 用于签名的CA;如果将单个PKI用作 CA和密钥对/请求都已生成,因为生成的请求已经存在 “进口的。”