如何配置windows 10系统下的本地HTTPs开发环境

如何配置windows 10系统下的本地HTTPs开发环境

参考:How to Get HTTPS Working in Windows 10 Local Dev Environment

自己创建证书颁发机构(CA),为自己的本地开发环境颁发证书,并使HTTPS在Windows 10中工作。

我从事很多电子商务和会员项目,在我的Windows 10本地机上开发,我需要测试网站的安全区域,如结账、付款表格和注册。

这些类型的表单都要求数据由使用HTTPS的SSL证书加密。

但是如何让HTTPS在Windows 10中工作呢?过程是什么?              

这是我在Windows上颁发证书的分步指南,以便您可以在HTTPS中运行本地开发站点。

Install OpenSSL

您首先需要的是OpenSSL的可执行文件。              

可执行文件未在Windows安装文件中分发,因此您必须手动查找并安装它。              

有一些有用的资源可从中获取文件:

Option 1 – Shining Light Productions

访问Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions并下载“Win64 OpenSSL v1.1.1g”文件并运行安装程序。              

确保为OpenSSL选择的安装文件夹的“\bin\”文件夹已添加到系统路径环境变量中,因此可以从任何地方使用。

Option 2 – Git for Windows

OpenSSL可执行文件随Git for Windows一起分发。              

安装后,您将在“\Git\mingw64\bin”中找到openssl.exe文件,如果尚未安装,则可以将其添加到系统路径环境变量中。

在Windows 10中成为自己的证书颁发机构的三个步骤

在这些步骤中,您将创建一个根SSL证书,可以根据需要使用该证书对多个本地开发站点进行签名。            

 你只需要做第一部分一次。将根SSL添加到Windows 10后,可以跳过为所有新本地域颁发证书。

Step 1 – Create a Private Key

我们将创建一个名为rootSSL.key的私钥,用于颁发新的站点证书。 我使用Nginx web服务器,所以我在Nginx windows文件夹中创建了一个名为“SSL”的文件夹,这就是我要创建这个根密钥的地方。在管理员模式下打开命令提示符,并导航到nginx安装文件夹中新创建的SSL文件夹。

我的 Openssl.exe 安装在 C:\Program Files\OpenSSL-Win64\bin 运行Openssl.exe

启动openssl.exe

 键入以下命令并输入私钥的密码。私钥的密码为:123456,输入的时候是看不到的。

genrsa -des3 -out rootSSL.key 2048

在当前目录下生成一个密钥文件:rootSSL.key

Step 2 – Create the Certificate File

在这一步中,我们将使用上一步中创建的私钥创建一个名为rootSSL.pem的证书文件。注意:您可以选择创建一个持续X天的证书文件。在本例中,我们将选择1024天,但您可以选择任何数量-越长越好。              

键入以下命令:

req -x509 -new -nodes -key rootSSL.key -sha256 -days 1024 -out rootSSL.pem

输入在步骤1中创建的根SSL密钥的密码。

  • 两个字母的国家代码:我用“CN”表示中国。              
  • 你的州或省:我用“guangdong”代表广东省。              
  • 你的城市:我用“shenzhen”代表深圳市。              
  • 一个组织名称:我使用“szhn”代表神州海纳。              
  • 一个组织单位的名字:我用“A3650”代表神州海纳的单位。              
  • 一个公共名称,如服务器名或完全限定的域名(FQDN):我使用“a3650.com”。              
  • 管理员电子邮件地址:我使用“sensor@a3650.com”。 

您不必把合法信息放在这里,因为我们只在本地开发环境中运行SSL证书,只是希望正确地执行它。

Step 3 – Get Windows to Trust the Certificate Authority (CA)

我们将使用Microsoft管理控制台(MMC)来信任根SSL证书。

Step 1 – Press the Windows key + R

Step 2 – 输入 “MMC” 单击 “确认”

Step 3 – 选择菜单 “文件 > 增加/删除管理单元(M)”

Step 4 – 选择 “证书” 并 “添加”

Step 5 – 选择 “计算机账户(C)”  并  “下一步”

Step 6 – 选择 “本地计算机(运行此控制台的计算机)” 并  “完成”

Step 7 – 单击 “确定”返回到 MMC 界面

Step 8 – 双击 “证书 (本地计算)” 展开列表

Step 9 – 选择 “第三方根证书颁发机构”, 右击 “证书” 并选择 “所有任务” 中的 “导入”

Step 10 – 单击 “下一步” 并浏览选择 “rootSSL.pem” 文件,在前面 Step 2创建的根证书文件

Step 11 – 选择 “将所有的证书都放入下列存储” 并选择 “第三方根证书颁发机构”. 单击 “下一步” 直到完成向导。

浏览证书以在列表中查看您的证书。

现在您可以开始为所有本地域颁发SSL证书。

为本地域颁发证书

创建本地域站点

我不打算讨论在Nginx或任何你使用的web服务器上建立实际的站点。

第一步是创建一个本地域。              

您可以在C:\Windows\System32\drivers\etc\hosts文件中执行此操作。              

下面是一个hosts文件的示例。

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#	127.0.0.1       localhost
#	::1             localhost
127.0.0.1 sslTest.local

 你可以看到我添加了一个“sslTest.local”域来指向我的本地IP地址127.0.0.1

所以“sslTest.local”是新的网站地址,我想在本地计算机上使用“https://sslTest.local”连接到它。              

让我们为这个新的本地域颁发证书。

为新域创建私钥 (Create a Private Key for the New Domain)

我们将创建一个名为“sslTest.local.key”的文件,其中包含该域的私钥信息。              

在同一个管理员命令窗口中,键入以下命令:

req -new -sha256 -nodes -out client-1.local.csr -newkey rsa:2048 -keyout sslTest.local.key -subj "/C=CN/ST=guangdong/L=shenzhen/O=A3650/OU=a3650.com/CN=sslTest/emailAddress=hello@sslText.local"

 

 为自己的本地域颁发证书时,请用本地服务器域名替换“sslTest.local”。              

您还可以更改“-subj”参数以反映您的国家、省、位置等。

使用根SSL证书颁发新证书

在同一个管理员命令窗口中,键入以下命令:

x509 -req -in client-1.local.csr -CA rootSSL.pem -CAkey rootSSL.key -CAcreateserial -out sslTest.local.crt -days 500 -sha256 -extensions "authorityKeyIdentifier=keyid,issuer\n basicConstraints=CA:FALSE\n keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\n  subjectAltName=DNS:sslTest.local"

提示时输入根SSL证书的密码。

您可以看到我们创建的所有文件;“sslTest.local.crt”和“sslTest.local.key”是您将需要添加到本地开发站点的web服务器配置中的文件。

在Web服务器中使用新的本地域证书

此过程的最后一部分是将证书文件添加到sslTest.local的web服务器网站配置中。              

下面是在nginx服务器块中使用密钥的示例。              

找到nginx.conf文件,并在定义本地开发站点的服务器块中添加以下行(请根据实际情况更改相关参数):

重新启动nginx服务器以加载新配置,并在您喜爱的浏览器上访问https://sslTest.local。

结论

让HTTPS在Windows 10中工作的过程有点烦琐我同意,但是,在我看来,能够使用自己的SSL证书在HTTPS上安全地运行本地开发站点是值得的。              

如果你使用的是WordPress,你现在可以强制网站使用HTTPS来提高安全性。

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
Windows 10是一种操作系统,可以用于开发和测试Hadoop和Spark的本地环境。 要在Windows 10上进行Hadoop和Spark的开发和测试,我们可以使用一些工具和软件。 首先,我们可以使用Hadoop和Spark的官方网站提供的二进制文件来安装它们。我们需要下载和安装Hadoop的二进制文件,然后配置Hadoop的环境变量。在Hadoop安装完成后,我们还需要配置Hadoop的核心配置文件,例如hadoop-env.sh和core-site.xml。 接下来,我们可以下载和安装Spark的二进制文件,并将其配置为与Hadoop协同工作。我们需要在Spark的配置文件中指定Hadoop的路径。我们还可以配置Spark的一些其他设置,例如内存分配和并行度等。 在安装和配置Hadoop和Spark之后,我们可以使用本地模式或伪分布式模式来进行开发和测试。本地模式是指将数据存储在本地文件系统上,并且不涉及集群。这使我们可以快速的进行开发和测试,但不适合处理大规模的数据。 伪分布式模式是指将数据存储在Hadoop的分布式文件系统(HDFS)上,并在本机上模拟一个分布式环境。这样,我们可以模拟真实环境的数据处理和分布式计算。在伪分布式模式下,我们可以运行Hadoop的各种任务和Spark的作业,以测试它们的性能和可靠性。 总之,使用Windows 10可以在本地开发和测试Hadoop和Spark环境。我们需要下载和安装Hadoop和Spark的二进制文件,并进行适当的配置。然后,我们可以在本地模式或伪分布式模式下进行开发和测试。这样,我们可以在一个便捷和可控的环境中进行Hadoop和Spark的开发和测试,以满足我们的需求。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海纳老吴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值