Mkcert:创建用于本地开发的SSL证书的工具

启用S​​SL-HTTPS

如今 在网站上使用SSL证书至关重要,因为这些功能为用户提供了使用它们的网站的一定程度的安全性和信心,此外几天以来,Chrome浏览器已经标记并警告用户有关不使用它们的网站。

En 在本文中,我们将利用一种工具来在我们的系统上本地安装SSL证书。

Mkcert是一个简单的工具,可用于在本地制造受信任的证书。 它不需要任何配置。 将实际的证书颁发机构证书用于localhost或127.0.0.1总是很危险或不可能。 甚至不建议使用签名证书,因为它们会导致信任错误。

证书 通过管理您自己的CA为我们提供最佳解决方案。 这将自动在系统根目录中创建并安装本地CA,并在本地生成受信任的证书。

对于网页的SSL证书,您可以参考其他一些免费的替代方法,例如openSSL。

要求

  • 系统配置了Go 1.10+和root特权。
  • 证书数据库工具(Certutil)

去安装

Go是一种通用编程语言 借助它我们可以构建各种各样的应用程序。 您可以在我们的默认存储库中找到Go及其工具包。 只需运行此命令,即可在Ubuntu 18.04上安装GO。

apt install golang

Y 我们可以通过以下方式检查安装:

go version

现在 我们可以在以下路径中创建文件 整个环境变量的“ /Etc/profile.d/goenv.sh”如下:

nano /etc/profile.d/goenv.sh

在内部,我们必须放置:

export GOROOT=/usr/lib/go

export GOPATH=$HOME/go

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

现在我们键入:

source /etc/profile.d/goenv.sh

Apache安装

下一步是安装我们的Web服务器并启用SSL 在本地使用这些受信任的开发证书。 我们可以使用以下命令安装apache。

apt install apache2

systemctl enable apache2

ssystemctl start apache2

Certutil安装

Certutil数据库工具是一个简单的命令行实用程序,可以创建和修改证书及其数据库。

它可以专门用于列出,生成,修改或删除证书。 它甚至可以用来创建或更改密码,生成新的公用和专用密钥对。

要安装它,只需键入以下命令:

apt install libnss3-tools

安装Mkcert

证书

要安装此工具 只需从GitHub下载代码,为此,我们只需键入:

wget https://github.com/FiloSottile/mkcert/archive/v1.0.0.tar.gz

tar -xvzf v1.0.0.tar.gz

cd mkcert-1.0.0/

Y 我们使用以下工具编译该工具:

制作[/源代码]

现在 我们可以从以下位置的安装文件夹复制此mkcert二进制文件: / usr / bin /在服务器级别使用的文件夹。

cd mkcert-1.0.0/bin/

cp mkcert /usr/bin/

最后,我们可以使用以下命令生成本地证书:

mkcert -install

创建并保存在路径中 /root/.local/share/mkcert

通过 通常,CA证书及其密钥存储在应用程序数据文件夹中 在用户的“主”文件夹中。

也可以使用mkcert -CAROOT命令获得该位置。

mkcert -CAROOT

/root/.local/share/mkcert

现在 我们可以根据需要使用此工具生成本地开发信任证书:

mkcert example.com '*.example.org' myapp.dev localhost 127.0.0.1 ::1

如该命令运行中所述, 本地生成的受信任证书将保存在运行此命令的路径中。

可以移动这些证书,例如:

cp /root/example.com+5.pem /etc/ssl/certs /

cp /root/example.com+5-key.pem /etc/ssl/private /

现在 您需要修改位于以下位置的默认SSL文件 /etc/apache2/sites-available/default-ssl.conf

SSLCertificateFile /etc/ssl/certs/example.com+5.pem

SSLCertificateKeyFile /etc/ssl/private/example.com+5-key.pem

现在,您可以启用SSL模块并重新启动Apache 2服务,以使这些更改生效。

a2enmod ssl

a2ensite default-ssl.conf

systemctl reload apache2

systemctl restart apache2

完成此操作后,我们可以使用本地SSL证书进行浏览测试。 只需输入 https://localhost 他们将能够看到浏览器可以识别它。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   何塞·佩德罗(Jose Pedro)

    几乎没有解释,您无法想象要具备先决条件才能安装它。
    没有人为安装剩余部分来配置其余部分的方法。

  2.   米克尔

    当您输入时:make [/ sourcecode]

    你在说什么??? 要放什么/源代码?

    带来不便敬请谅解。

    问候。

  3.   朱利安·拉索(Julian Lasso)

    在Ubuntu 20.04中,它仅适用于Firefox,不适用于基于铬的浏览器:'(