2009-02-13 103 views
2

我需要连接的服务为我提供了三个文件,并且试图找出需要创建STUNNEL需要的Cert = xxx.PEM文件的内容获取SSL连接以使用STUNNEL/Win32

我有一个“keystore.jks”文件。倾销与keytool说这是一个“私钥条目”

我有一个“truststore.jks”文件。倾销说它是一个“可信任的证书条目”。别名是“服务器”

我也有一个“xyz.cer”文件。这似乎是一个X.509证书

我有OPENSSL和一个名为“KeytoolUI”的Java程序。

底线是我有一堆文件和工具,并没有太多的SSL知识我觉得我不能看到树木。我需要所有这些文件吗?我用于其他服务的现有PEM文件只有“证书”部分和“RSA私钥”部分。

任何意见赞赏。谢谢!

+0

是否有可能使用私钥两次?.. – Aishugopi 2012-02-06 10:53:47

回答

2

听起来您的提供者已经提供了您的密钥对(用于客户端认证)作为java密钥库,以及(我猜测)远程服务器的公共证书或PEM格式的CA证书。

这是一些相当繁重的猜测,但奇怪的是,如果您未进行客户端身份验证,他们已向您发送私钥。 (希望他们没有给你发送服务器的私钥!)。

据我所知,stunnel只使用PEM证书,因此您需要将您的JKS文件转换为两个PEM文件(一个用于私钥,一个用于公共证书)。一种方法是使用keytool将JKS转换为PKCS#12(又名PFX)文件,然后使用OpenSSL将PKCS#12文件转换为PEM私钥/证书文件。

一旦你有这两个文件,使用keycert选项在stunnel.conf

对于最终的(神秘)PEM证书,我要再次猜测这是远程CA,因此您应该根据stunnel.conf中的CAfile参数进行配置。 (如果您适合在此处发布详细信息,请编辑以包含openssl x509 -in <filename> -text的输出以提供更多线索)。

+0

非常感谢您对马丁。我已经离开了几天,但我会试一试,看看会发生什么。 – rc1 2009-02-18 16:41:02

0

没有答案恐怕。最后,我让公司给我发了一个PEM文件。

我没有找到一个相当权威的看着这里

http://www.herongyang.com/crypto/Migrating_Keys_keytool_to_OpenSSL_2.html

教程中的问题是人谁不这样每天收到来自不同源的一群自由/开源软件很好地协同工作。你可以在不同的网站上找到脚本,但是当你运行它们时,你会看到Java回溯,关于LIBEAY32.DLL的投诉缺少序号等等。

如果你得到了KEYTOOL的确切版本,OPENSSL等等,安装在正确的位置,具有正确的JRE版本和所有其他DLL,PATH正确,并且所有的星星完全排列在一起,你会没事的。在此之前,这只是一个沮丧的练习。

-1

openssl x509 -inform der -outform pem <xyz.cer> xyz.pem