我想创建一个带有主题密钥标识符的 RSA 算法密钥大小 2048 的自签名证书。我知道我们在openssl.conf
. 我想改变什么?
genrsa -des3 -out mcedt.key 2048
req -new -key mcedt.key -out mcedt.csr
CN = server.test , OU =, O =, L = Toronto, S = ontario , C = can
x509 -req -days 365 -in mcedt.csr -signkey mcedt.key -out mcedt.crt
pkcs12 -export -in mcedt.crt -inkey mcedt.key -out mcedt.pfx
Run Code Online (Sandbox Code Playgroud) 我最近将我的 Azure 网站扩展到标准实例。Azure 的标准定价层表示,它附带“免费包含 5 个 SNI SSL 和 1 个 IP SSL”。我想使用这些所谓的“证书”之一设置 SSL 绑定到我的自定义域。但是,我在 Azure 门户上找不到任何指向这些证书之一的内容。唯一的选择是上传证书。我认为 Azure 在标准模式下包含或提供这些证书是错误的吗?还是“免费包含 5 个 SNI SSL 和 1 个 IP SSL”意味着“SSL 插槽”,但您仍然需要购买证书?
语境:
我正在尝试使用 ADFS SSO 并按照本教程首先连接到 Azure AD:
那奏效了。
然后按照其他教程尝试使其连接到我们的 Win Server 2012 R2 上的 ADFS:
正如他们在第三个教程中所说:https : //msdn.microsoft.com/en-us/library/dn660967.aspx
我收到 SSL 证书错误:
问题:
我知道我可以绕过证书验证或在ServicePointManager.ServerCertificateValidationCallback 中放置特殊逻辑来解决这个问题,但是因为我在本地机器“受信任的根证书颁发机构”中导入了证书......:
... 为什么我的服务仍然抱怨证书?
...有没有办法告诉我的 C# 服务接受“受信任的根证书颁发机构”存储中的所有证书?
注意:我确实实现了ServicePointManager.ServerCertificateValidationCallback并且有效,但是由于我们将得到一大堆客户向我们发送他们的 ADFS 证书,我只想将他们的证书导入证书存储中,让我们的服务信任他们。
谢谢
我在 .Net 上编写了一个客户端/服务器应用程序,它使用用户名/密码/服务器对 RabbitMQ 进行身份验证。
我们的安全团队建议将其更改为证书身份验证。我在 RabbitMQ 网站和论坛上搜索过,但找不到解决方案。
如何在 .Net 客户端和服务器组件(和/或机器)中安装、配置证书以进行身份验证?在这种情况下创建连接需要什么参数?如果有的话,任何人都可以指出正确的示例资源吗?谢谢
我试图从 RStudio 克隆一个 github 的 repo。我已将 git 配置为版本控制可执行文件。
我收到此错误消息:
SSL 证书问题:无法获取本地颁发者证书。
我需要做什么?
谢谢
错误跟踪:
javax.ws.rs.ProcessingException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target##
at org.glassfish.jersey.client.internal.HttpUrlConnector.apply(HttpUrlConnector.java:287)
at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:252)
at org.glassfish.jersey.client.JerseyInvocation$2.call(JerseyInvocation.java:701)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:228)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444)
at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:697)
at org.glassfish.jersey.client.JerseyInvocation$Builder.method(JerseyInvocation.java:420)
at org.glassfish.jersey.client.JerseyInvocation$Builder.get(JerseyInvocation.java:316)
at com.xxx.rest.RestClient.execRequest(RestClient.java:49)
at com.xxx.RestClientTest.test(RestClientTest.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at …
Run Code Online (Sandbox Code Playgroud) 我需要连接到一些https://website.com
. 因此,该站点可通过 VPN 访问。我已连接到 VPN,可以在浏览器中打开该站点。
我已经从浏览器下载了证书:
然后我cat
两个文件合二为一certificate.pem
但是当我尝试执行命令时
openssl s_client -connect website.com:443 -CAfile /path/to/certificate.pem
Run Code Online (Sandbox Code Playgroud)
当我在终端中执行它时,出现错误。
CONNECTED(00000003)
depth=1 /C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA
verify error:num=2:unable to get issuer certificate
issuer= /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root CA
verify return:0
---
Certificate chain
0 s:/C=AU/ST=Wales/L=Place/O=Company
Ltd/OU=D&D/CN=website.com
i:/C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA
---
Server certificate
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
subject=/C=AU/ST=Wales/L=Place/O=Company
Ltd/OU=D&D/CN=website.com
issuer=/C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA
---
No client certificate CA names sent
---
SSL handshake …
Run Code Online (Sandbox Code Playgroud) 我正在使用在带有弹性负载均衡器的 AWS 实例中运行的 Spring-Boot。我正在使用带有登录安全性的 Spring MVC,服务器端口设置为 8080。我在 ELB 中安装了一个 AWS 生成的具有正确 Web 名称 test.mydomain.com 的证书。ELB 侦听器设置为端口 80 HTTP >> 8080 HTTP 和 443 HTTPS >> 8080 HTTP。这是我的 WebSecurityConfig 类,
public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
@Autowired
UserDetailsService userDS;
@Override
protected void configure(HttpSecurity http) throws Exception{
// Allows access for .css, .js, and .images files
http.authorizeRequests()
.antMatchers("/resources/**")
.permitAll()
.anyRequest()
.permitAll();
// Access management for all other requests
http.authorizeRequests()
.antMatchers("/", "/home").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.logoutUrl("/logout")
.logoutSuccessUrl("/home")
.invalidateHttpSession(true)
.permitAll();
} …
Run Code Online (Sandbox Code Playgroud) 我有一个这样的应用程序设置:
有一个服务器,带有reverseeproxy /负载均衡器,充当HTTPS终端(这是具有服务器证书的终端),以及它背后的几个应用程序(*)
但是,某些应用程序需要使用证书对客户端进行身份验证.在反向代理中不能进行身份验证.应用程序是否能够查看用户证书,还是会被HTTPS-> HTTP传输放弃?
(*)好的,所以这是一个Kubernetes入口和容器/容器.
C:\Users\casta>curl https://c5.ppy.sh
curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
Run Code Online (Sandbox Code Playgroud)
我已经建立了自己的CA,并从该CA获得了证书。
问题是,当我尝试使用此证书访问网站时,它工作正常!
但是,如果我尝试使用curl或C#应用程序,它将返回错误。
C#错误在这里:
2019-02-28T09:20:33: System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel
2019-02-28T09:20:33: ??: #=zGFbxUFU_LnBci6wJmmCy1$E=.#=z0YcFrd6MZP1A()
2019-02-28T09:20:33: ??: #=zuFHGCPNOLQmjQEcRmqQHLnQ=.#=z3NGNjJ0=()
Run Code Online (Sandbox Code Playgroud)