目标:在我的开发 Tomcat 服务器上使用自签名证书。
第 1 步:按照本Ubuntu 证书指南使用 openssl 创建证书:
openssl req -new -key server.key -out server.csr
我遵循了自签名 NO 密码指导。
第 2 步:更新 Tomcat 配置文件/etc/tomcat7/server.xml
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
keystoreFile="/etc/ssl/private/server.key" keystorePass=""
maxThreads="150" scheme="https" secure="true"
protocol="org.apache.coyote.http11.Http11AprProtocol"
clientAuth="false" sslProtocol="TLS"/>
第三步:重启Tomcat:
sudo service tomcat7 stop
sudo service tomcat7 start
在另一台电脑上通过 Chrome 浏览器测试:
所有与服务器的 SSL 连接都被拒绝,但标准的 http 连接有效。Chrome 中的错误详情:
Google Chrome's connection attempt to [domain] was rejected. The website may be down, or your network may not be properly configured.
我已经看到了很多关于如何让它工作的说明。但我对令人眼花缭乱的方法感到困惑。最重要的是,有些人提到了一个密钥库,而其他人只提到了证书文件。显然,我对这个话题的无知在这里起作用。此外,我有一个证书,但根据许多指南,我无法将我的密钥导入密钥库,因为没有相应的设施。
两个端口443
和8443
在服务器上都是打开的。
任何指导表示赞赏!
Tomcat 需要一个存储在 Java 密钥库 (jks) 中的证书。Java 通常带有
keytool
已经安装的工具。您应该使用keytool
生成这样的自签名证书:keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize 2048
有关使用 keytool 的更多信息,请参阅此站点。