openssl genrsa -des3 -out localhost 2048
生成一个私钥。使用HTTPS运行Web服务器所需的是私钥和证书。您需要一个步骤来生成证书。
您可以使用2种几乎完全不同的方法在Tomcat中配置HTTPS,具体取决于您是否使用APR连接器。
如果您使用的是APR connector,使用OpenSSL生成密钥/证书是有意义的,因为它是它所期望的格式。 (如果自签名证书足以满足您的环境,有许多教程可用于生成OpenSSL自签名证书。)
If you're not using APR,您必须将使用OpenSSL生成的keys/cert转换为keystore您的JRE支持的格式。来自OpenSSL,将您的私钥+证书转换为PKCS#12存储(.p12
)通常最简单:直接通过Oracle/OpenJDK以PKCS12
密钥库类型支持。 (您可以将PKCS#12文件转换为JKS存储,但这不是必需的。)
但是,如果您还没有任何密钥/证书,那么为Tomcat生成自签名证书的最简单方法直接使用keytool
。这将产生一个JKS
密钥库,这是默认类型。 keytool -genkey
不仅生成密钥/对并足以生成CSR,而且还将自签名证书关联(至少暂时直到您导入来自CA的证书(如有必要))。
这是不正确的。首先,这取决于你是否使用APR。其次,默认的密钥库类型仍然是JKS。原则上,可以使用其中一个安全提供程序支持的任何密钥库类型,因此它取决于提供程序。在Oracle/OpenJDK上(使用Sun提供程序),可以使用JKS,PKCS#12,PKCS#11和NSS。 – Bruno 2012-04-09 14:23:49