问题标签 [alpn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 将 alpn-boot jar 添加到 bootclasspath
与我们的开发团队合作以使苹果推送通知正常工作,我需要一些帮助才能将 jar 放入 java 引导类路径。我们正在运行 RHEL 6.9 和 java8。
当我尝试正常操作时: java -Xbootclasspath/p:/opt/batch/lib/pathtojar.jar 我似乎没有得到任何确认或错误。只需打印我们的 java 帮助页面。
我还确认我们为我们的 java 版本使用了正确的 alpn-boot jar。我可能只是碰到了一堵我现在看不到的墙,所以任何帮助都将不胜感激。
netty - 将 spring-webflux 微服务切换到 http/2 (netty)
有没有人在 netty (http/2) 中使用 spring-webflux?
弹簧文档说:
您可以使用
server.http2.enabled
配置属性在 Spring Boot 应用程序中启用 HTTP/2 支持。这种支持取决于所选的 Web 服务器和应用程序环境,因为 JDK8 不支持开箱即用的协议。Spring Boot 不支持 HTTP/2 协议的明文版本 h2c。所以必须先配置 SSL。
旗帜server.http2.enabled
对我不起作用。
我在用着:
- JDK8
- org.springframework.boot:spring-boot-starter-parent:2.0.2.RELEASE
- Netty 4.1.24.Final
请看一下我的配置:
HTTPS 也可以。但是协议还是一样的(http/1.1)
这是 ALPN 的问题吗?我应该将我的应用程序升级到 JDK10 吗?我将不胜感激任何建议。谢谢。
upgrade - HTTP/2 与 Ubuntu 18.04
我想在这个网站上尝试 HTTP/2:https ://www.alebalweb-blog.com/
我最近使用 PHP 7.2、Apache/2.4.29 等将服务器更新到 Ubuntu 18.04
我做了:sudo a2enmod http2
添加:
在我的 VirtualHost SSL 中。
并重新启动 Apache。
SSL 证书由 Let's Encrypt 提供。
结果是:
我觉得真的很奇怪是这样的:
这是什么意思?
HTTP/2 测试 说:
我觉得我错过了一些大事......你能帮我理解什么吗?
php - 远程网站 ALPN 支持检测
是否可以使用 php curl 检查对 ALPN 的支持?
例如:if ($is_alpn == true) {echo 'ALPN supported';}
PS curl 7.49.0,php 7.0,openssl 1.0.1t
shell - 如何使用 sed 在特定行上方的 shell 文件中添加新行
我想为文件添加一个新行apache-jmeter 4.0/bin/jmeter
文件最后2行如下
我想在文件的最后一行上方添加一行,以使输出如下所示
c# - 使用 ALPN 通过 TLS 连接
我正在尝试使用 C# net core 2.1 类库连接到 Amazon IoT MQTT 代理。我的要求是我必须使用端口 443,这意味着根据亚马逊的文档,我必须使用支持 ALPN 的连接。
.Net Core 2.1 现在有支持这一点的方法,所以我尝试以下代码:
(注意:我可以使用端口 8883 而不是 443 尝试相同的代码,它可以正常连接并发送我的 MQTT 数据,所以我知道我的证书和端点地址是正确的。)
现在,据我了解,我应该看到(我正在使用 wireshark)添加到客户端 Hello 握手协议的扩展,类似于以下内容:
但是我没有得到那个扩展,并且端口 443 上的连接失败。
我在设置协议列表时遗漏了什么吗?我没有从中得到任何错误,但由于这是一个相当新的版本,因此没有很多参考资料可以寻找提示。
security - 异常 ALPN 配置不正确
我正在尝试使用 scio 和 apache Beam 从 scala 创建一些云指标来执行数据流任务。
我收到以下错误:
我按照该 URL 上的步骤添加了一个 JVM 参数:
-Djavaagent=/Users/user/Downloads/jetty-alpn-agent-2.0.6.jar
我也有环境变量:GOOGLE_APPLICATION_CREDENTIALS=/etc/recsys/recsys-dev.json
编码:
我能得到一些帮助吗?
java - 使用 GRPC 设置 SSL - 找不到 ALPN
我想在我的 GRPC 服务器上设置 SSL。这是我正在做的事情:
现在我得到一个 ClassnotFoundException:
如果我们查看JettyTlsUtil.isJettyAlpnConfigured()方法,我们将看到 Class.forName("org.eclipse.jetty.alpn.ALPN", true, null);
现在,我的类路径中有 ALPN。我还根据此处提供的表格设置了我的依赖关系https://github.com/grpc/grpc-java/blob/master/SECURITY.md#transport-security-tls
gRPC 的人们不建议使用 JDK 作为 SSLProvider。因此,我下载了 io.netty.internal.tcnative.SSL,它是 OpenSSL 的 SSLProvider。然而,gRPC 无法识别我在这里有可用的 OpenSSL:
编辑: 我能够通过添加 VM 参数 -javaagent:C:/path/to/jetty-alpn-agent.jar 使其工作
这使得它可以与 JDK 作为 SSL 提供程序一起使用。我仍然不明白为什么 grpc 无法识别我有可用的 OpenSSL。我netty-tcnative-boringssl-static
的类路径中有。
microsoft-edge - 禁用 Microsoft Edge 的 HTTP2
HTTP2
是否可以在边缘设置或配置文件中禁用?
或者也许可以禁用ALPN
?
java - 使用 jdk8 加密以启用 http2 的 ALPN
我一直在搜索如何使用conscrypt-openjdk-uber-1.4.1.jar为 jdk8 实现Conscrypt SSL 提供程序,以支持ALPN与服务器建立http2(使用 apache httpclient 5)连接,因为jdk8 默认不支持 ALPN或另一个解决方案是迁移到 jdk9(或更高版本),这目前不可行,因为我们的产品严重依赖 jdk8
我一直在广泛搜索一些要实现的文档或示例,但我找不到。
我尝试将 conscrypt 提供程序作为默认值插入,我的程序将其作为默认提供程序,但仍然无法连接 http2 服务器,我的示例如下,
这个程序给出的输出为
org.apache.hc.core5.http.ConnectionClosedException:连接关闭 org.apache.hc.core5.http.ConnectionClosedException:连接在 org.apache.hc.core5.http2.impl.nio.FrameInputBuffer.read(FrameInputBuffer.java :146) 在 org.apache.hc.core5.http2.impl.nio.AbstractHttp2IOEventHandler.inputReady(AbstractHttp2IOEventHandler.java) 的 org.apache.hc.core5.http2.impl.nio.AbstractHttp2StreamMultiplexer.onInput(AbstractHttp2StreamMultiplexer.java:415) :63) 在 org.apache.hc.core5.reactor.InternalDataChannel.onIOEvent(InternalDataChannel.java:117) 在 org.apache.hc.core5.http2.impl.nio.ClientHttp2IOEventHandler.inputReady(ClientHttp2IOEventHandler.java:38) 在org.apache.hc.core5.reactor.SingleCoreIOReactor 中的 org.apache.hc.core5.reactor.InternalChannel.handleIOEvent(InternalChannel.java:50)。processEvents(SingleCoreIOReactor.java:173) at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:123) at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:80)在 org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44) 在 java.lang.Thread.run(Thread.java:748)
如果我打印提供程序和版本,它将打印为Conscrypt 版本 1.0和JDK 1.8.0_162,但仍然无法连接到 http2 端点
如果我使用 jdk9 与默认提供程序连接,相同的代码块可以完美运行,我在 conscrypt 配置中缺少什么?
任何帮助表示赞赏
提前致谢