localhost 或 127.0.0.1 的第三方签名 SSL 证书?

2023-12-10

在不透露太多信息的情况下,我需要设置一个网络服务器系统,供互联网上的最终用户使用。

用例是这样的:

  • 连接到系统时,最终用户(通常)在家中位于本地防火墙后面。
  • 该系统由我们托管的远程服务器组成,严格通过 https(使用 SSL)
  • 授权机制要求用户在远程服务器上自行创建帐户,成功创建帐户后,将需要下载一个软件并将其安装到最终用户的计算机上。除其他外,该软件还包含本地网络服务器。
  • 此“本地”网络服务器还必须仅允许与用户浏览器的 https 连接。

由于分布式软件将成为每个用户计算机上唯一的 Web 服务器,因此我不确定如何或是否可能获得第三方签名的 SSL 证书,该证书在用户连接到该证书时不会导致可信度错误通过网络浏览器。当然,它可以使用自签名 SSL 证书,但其想法是避免浏览器警告,以便最终用户隐式“信任”来自通过 SSL 运行其网络服务器的应用程序的数据。

这可能吗?


本地主机

您永远不会获得本地主机的正确 https 证书。这是严格禁止。因为reasons.

简而言之:

  • 设备配置错误实际存在在野外,在解析 localhost 之前等待查找/etc/hosts
  • 如果路由器定义localhost.foo.local它可能会导致localhost错误地解决(您以前可能见过此类错误)

您可以创建一个根证书 and then创建一个所谓的“自签名”证书,由您创建的根 ca 签名。你仍然会看到丑陋的警告屏幕,但它会起作用。

  • See https://coolaj86.com/articles/how-to-create-a-csr-for-https-tls-ssl-rsa-pems/

2023 更新:球童

以下解决方案仍然适用,但是caddy可以让他们变得更加容易。

它可以创建插入操作系统钥匙串的根证书,并且有一个 DuckDNS 插件,因此您可以通过 DNS 验证等在公共或私有 IP 上拥有公共证书。

localhost.YOURSITE.com(指向 127.0.0.1)

代替实际的localhost证书,我按照尤金的建议进行操作 - 在公共域上创建 127.0.0.1 记录。

您可以获得免费的 HTTPS 证书localhost.YOURSITE.com通过让我们加密通过https://greenlock.domains。只需选择 DNS 选项而不是 HTTP 文件上传选项

将 localhost.MY-SLD.MY-TLD 指向 127.0.0.1

  • 购买一个*.localhost.example.com证书并为每个安装颁发一个秘密xyz.localhost.example.com(并将其包含在公共后缀列表中以防止对 example.com 的攻击)
  • Use 启用 greenlock 的应用程序动态生成此类证书(通过https://letscrypt.org)直接在客户端(或将它们传递给客户端)

如果您没有被纳入 PSL,请注意:

  • session、localstorage、indexeddb 等由域共享
  • 更改端口不会改变它们的共享性

成为您自己的根证书

Update: 与类似的事情格林洛克使用 ACME / Let's Encrypt,这不再特别相关。

这可能是一个非常糟糕的主意,因为我们不希望用户习惯于随意安装根 CA(我们知道如何做到这一点)原来是联想的),但对于企业/克隆机器来说,这可能是一个合理的低预算选择。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

localhost 或 127.0.0.1 的第三方签名 SSL 证书? 的相关文章

  • iPhone - SSL 连接

    学习通过 iPhone 连接 ssl Web 服务的最佳起点是什么 到目前为止 我通过 SOAP 等通过 http 进行了一些基本连接 但我没有使用 https 的经验 任何好的资源 教程 起始参考 use nsurl class 都值得赞
  • SSL 连接在 MySQL Workbench 中有效,但在 DBeaver 中无效

    为当今读者编辑 这是旧版本 DBeaver 中的一个错误 随后已修复 我尝试在 DBeaver 中使用 SSL 连接到 Google Cloud SQL MySQL 实例时遇到 访问被拒绝 错误 我能够 在 MySQL Workbench
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • WebView ssl 错误

    对不起我的英语不好 我需要加载 url https 我有一些问题 当我尝试加载页面时 webView 给我错误 primary error 3 certificate Issued to CN my site com Issued by C
  • Curl 和 Php 5.3.3 中的 SSL 连接错误

    我的网站自 3 年来一直运行良好 代码如下 现在突然从 2 天开始出现以下错误 SSL 连接错误 在 Curl error 中 下面是我的代码
  • 在 Spring Boot application.properties 中指定信任存储信息

    我在用springBoot版本1 2 0 RELEASE 我正在尝试通过配置我的密钥库和信任库application properties 当我添加以下设置时 我可以使密钥库正常工作 但不能使信任库正常工作 server ssl key s
  • 自动 IIS6 403.4 重定向到 SSL 不起作用

    我的 ASP Net 网站中有一个目录需要启用 SSL 对于所有其他目录 我不希望启用 SSL 使用 IIS 我为我想要需要 SSL 的文件夹选中了 需要安全通道 SS 和 128 位加密复选框 现在 当用户在我的安全目录中输入 http
  • Web 应用程序的 Spring Boot 和 Comodo https 配置

    我是 https 配置的新手 并尝试配置 spring boot 和 Comodo SSL 经过几次电话和尝试后 我已经弄清楚如何为您的 spring boot 网站正确配置 https 下面的答案是详细步骤 希望它可以帮助人们生成更安全的
  • 如何在docker的keycloak中添加SSL

    我在将 SSL 证书添加到在 docker 上运行的 Keycloak 时遇到问题 我通过负载均衡器从 AWS EC2 获得了 SSL 证书 但不知道如何将其添加到 docker 上的 Keycloak 中 我正在通过谷歌搜索 但尚未找到任
  • mysql jdbc 与 SSL 连接在 tls 握手级别失败

    我们的 mysql 服务器配置为仅接受与 ssl 密码 DHE RSA AES256 GCM SHA384 的连接 我正在使用 java mysql connector java 8 0 15 和 java 8 openjdk 版本 1 8
  • Android - API 请求

    我开发了一个应用程序 它也在 iPhone 上 问题出在 api 请求上 我为所有请求设置了超时 有时会出现 30 60 秒的中断 看起来这个应用程序执行了几个请求 然后就中断了 一直超时 大约 45 秒后一切正常 不知道是服务器问题还是安
  • 如何将域添加到 aws 上的现有 SSL 证书

    我有一个与 Amazon Web Services 上的负载均衡器关联的 SSL 证书 我想在该证书上有一个额外的域 我的问题是 是否可以向 aws 上现有的 ssl 证书添加额外的域 我发现您可以在创建证书时添加其他名称 但我不知道如何使
  • CakePHP - 选择性 SSL

    如何对网站的某些部分强制使用 HTTPS 例如登录页面或注册页面 并使用 HTTP 来完成网站的其余部分 我最喜欢的强制转换为 https 的方法是将其作为 php 脚本中的第一件事 它可以在 Joomla 中运行 也可以在 CakePHP
  • ca 证书 Mac OS X

    我需要在emacs 上安装offlineimap 和mu4e 问题是配置 当我运行 Offlineimap 时 我得到 OfflineIMAP 6 5 5 Licensed under the GNU GPL v2 v2 or any la
  • 如何在flutter中绕过SSL证书验证?

    如何在flutter中绕过SSL证书验证 错误 握手异常 客户端中的握手错误 操作系统错误 CERTIFICATE VERIFY FAILED 自签名证书 handshake cc 345 您需要配置 HttpService 以使用自签名
  • 如何在 iOS 上固定证书的公钥

    在提高我们正在开发的 iOS 应用程序的安全性时 我们发现需要对服务器的 SSL 证书 全部或部分 进行 PIN 操作以防止中间人攻击 尽管有多种方法可以做到这一点 但当您搜索此内容时 我只找到了固定整个证书的示例 这种做法会带来一个问题
  • 如何通过 TLS 1.2 运行 django runserver

    我正在本地 Mac OS X 机器上测试 Stripe 订单 我正在实现这段代码 stripe api key settings STRIPE SECRET order stripe Order create currency usd em
  • 我什么时候需要将“协商客户端证书”设置为启用?

    我可以选择支持客户端证书 这就是为什么我设置Client certificates to Accept在 IIS 上 这适用于大多数机器 然而 在某些机器上 IIS 返回 500 这可以通过设置来 解决 Client certificate
  • 无法使用 OpenSSL 验证服务器证书

    我已经使用 OpenSSL 编写了一个 SOAP 客户端 在 Ubuntu 12 04 上用 C 编写 但它目前无需检查服务器安全证书即可运行 这是我用来设置连接和检查证书的函数 bool bInitialiseSSL SSL CTX ct
  • 在linux上安装python ssl模块,无需重新编译

    是否可以在已经安装了 OpenSSL 的 Linux 机器上安装 python 的 SSL 模块 而无需重新编译 python 我希望它就像复制几个文件并将它们包含在库路径中一样简单 Python版本是2 4 3 谢谢 是否可以在已经安装了

随机推荐

  • 文件数量巨大时如何提高perl中的grep效率

    我想使用 perl 从位于以下目录结构的日志文件中 grep 一些日志信息 jobDir jobXXXX host log where XXXX是职位编号 从 1 到几千 下没有其他类型的子目录 jobDir除了下面的日志之外没有其他文件j
  • Oracle:如果行不存在,如何插入

    在 PL SQL oracle 中 如果行不存在 插入行的最简单方法是什么 我想要类似的东西 IF NOT EXISTS SELECT FROM table WHERE name jonny THEN INSERT INTO table V
  • Firefox 上的 event.target

    var x event target event srcElement document getElementById x id style left 200 px document getElementById x id style to
  • 创建项目后更改视图引擎

    我在asp net mvc4中创建了一个项目并将其视图引擎设置为ASPX 现在 我想将 View Engine 更改为 Razor 怎么做 我不想创建一个新项目 我想使用现有项目来更改视图引擎 我们可以从属性或其他方式更改视图引擎吗 应该像
  • 处理塔防游戏 - 塔攻击敌人

    我会保持简短 我正在制作一个塔防游戏作为一个迷你项目 同时我有一些空闲时间 我正在尝试弄清楚如何实现塔 以便能够在敌人进入射程时使用 dist 射击敌人但我只是不知道如何实现使用敌人位置和塔位置的方法 我有一个 CreepSprites 和
  • 如何防止Chrome在自动填充用户名/密码时更改字体?

    我有一个包含用户名和密码输入的登录表单 在 Windows 上的 Chrome 中 在其他浏览器或 Mac 上不会发生这种情况 当将鼠标悬停在 Chrome 密码管理器中保存的用户名上时 字体会发生变化 字体的变化然后改变了输入的宽度 使我
  • dataTableOutput 顶部和底部的空“row-fluid”div

    我有一个使用 renderDataTable 创建输出的闪亮示例 我删除了所有可能的选项 分页 过滤 搜索等 但是 现在我的表输出的顶部和底部有一个空白行 以前是过滤和搜索的地方 仅当我删除了过滤和搜索选项时 如何从数据表包装器内部删除这两
  • 什么是 Mocha 平等测试?

    我正在使用 Mocha 测试 Express Node 应用程序 我想要进行以下测试 比较两个空数组 assert equal 通过 但是 Mocha 给了我以下错误 AssertionError 我应该使用哪种方法才能通过两个空数组的比较
  • ncurses 和 stdin 阻塞

    I have stdin in a select set and I want to take a string from stdin whenever the user types it and hits Enter But select
  • 是否可以“等待yield return DoSomethingAsync()”

    常规迭代器块 即 yield return 与 async 和 await 不兼容吗 这很好地说明了我正在尝试做的事情 async Task
  • Web 服务代理中的 SSL 证书问题

    我正在构建一个 JAVA Web 服务客户端 在其中连接到服务 该服务具有 ssl 证书验证 如何使用 ssl 证书验证来调用此服务 我在使用 Eclipse 构建的客户端中使用 JAX RPC 实现 举个例子将不胜感激 我能够进行网络服务
  • 如何在删除前在php中添加确认框?

    我在 PHP 中创建一个简单的列表 用户可以在其中添加姓名 年龄 电子邮件等 我还添加了一个删除选项 但我想在用户单击删除选项时添加一条确认消息 我尝试搜索 Google 但只找到了 jQuery 和 JavaScript 解决方案 有没有
  • 将一个 JSONAray 项目转换为多个项目

    我有以下字符串 它以列表的形式从数据库返回 我的假设是 该列表包含 3 个项目 但它只显示 1 作为大小 因此它将所有活动项作为一个元素返回 注意 当我尝试获取列表的第一个索引 list get 0 时 它仅返回一个 活动 而不是所有三个
  • 为什么下载 pdf 文档而不是在嵌入/iframe 中显示?

    我们有一个内部网站 其中有一些指向网络服务器上托管的 pdf 文档的链接 如果我打开 Chrome 开发工具 F12 检查链接并添加具有相同 pdf 文档的嵌入 它会下载该文件而不是显示它 我尝试过使用 embed 和 iframe 但仍然
  • 帮助使用 JCheckBox 制作 JTree

    我有一个不寻常的情况 我需要一个 JTree 每个节点包含 2 个复选框和一个标签 能够添加一个侦听器来告知何时选中任何潜在的复选框 我还需要根节点具有相同的布局 我假设这意味着创建一个带有 2 个 JCheckBox 和一个 JLabel
  • 分离类模板中的参数包

    我正在尝试编写一个使用参数包并为参数包中包含的每种类型实现成员函数的类模板 这是我到目前为止所拥有的 template
  • 使用 CAAnimation 启用用户交互?

    使用基于块的动画的选项字段制作动画时 允许用户与视图交互非常容易 但在我的程序中 我使用的是 CAKeyframeAnimation 并且没有看到任何用于设置启用用户交互的属性 有什么办法可以做到这一点吗 Thanks 编辑 这是实际的代码
  • 从哈希中提取值

    您好 我使用 HTTParty 调用远程 json 文件 我需要提取 URL 以在我的一项测试中使用 json 格式类似于 manifest header generated xxxxxxxxxxxxxxx name xxxxxxxxxxx
  • 如何在点击下拉菜单时制作CSS下拉菜单

    如何让下面的css下拉菜单只接受点击下拉 例如 现在当鼠标悬停 请选择 时 第二层出现 我想更改为当单击 请选择 时 出现第二层 另外 点击事件应该应用于第二层菜单 这是一个Fiddle 我正在使用 jquery 但不知道如何执行此操作 h
  • localhost 或 127.0.0.1 的第三方签名 SSL 证书?

    在不透露太多信息的情况下 我需要设置一个网络服务器系统 供互联网上的最终用户使用 用例是这样的 连接到系统时 最终用户 通常 在家中位于本地防火墙后面 该系统由我们托管的远程服务器组成 严格通过 https 使用 SSL 授权机制要求用户在