我正在尝试在 ahsayobs 上设置 SSL,但没有成功。第一步是删除计算机上安装的默认证书。我正在运行java版本1.6。这是我正在做的事情:
[root@backup ~]# /data/obs_6.5/java-linux-x86/bin/keytool –delete –alias tomcat –keystore /Applications/AhsayOBS/conf/keystore
keytool error: java.lang.RuntimeException: Usage error, –delete is not a legal command
[root@backup ~]# /data/obs_6.5/java-linux-x64/bin/keytool –delete –alias tomcat –keystore /Applications/AhsayOBS/conf/keystore
keytool error: java.lang.RuntimeException: Usage error, –delete is not a legal command
[root@backup ~]# /data/obs/java-linux-x64/bin/keytool –delete –alias tomcat –keystore /Applications/AhsayOBS/conf/keystore
keytool error: java.lang.RuntimeException: Usage error, –delete is not a legal command
下一步是创建一个 CSR,该 CSR 也会返回使用错误,-genkey 不是合法命令
。就好像 keytool
甚至没有安装。但我没有收到该错误,并且 locate keytool
显示了它的几个不同位置(我已经尝试了所有这些位置)。每个都显示相同的错误。关于我做错了什么有什么想法吗?
编辑
哦天哪...看来我从(keytool -delete -alias...等)复制/粘贴命令的文章没有使用常规连字符,这就是它被抛弃的原因。这是我最终使用的:
### First, delete the previous keystore file
/data/obs_6.5/java-linux-x86/bin/keytool -delete -alias tomcat -keystore /data/obs/conf/keystore
### Then, create a new keystore file
/data/obs_6.5/java-linux-x86/bin/keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -keystore /data/obs/conf/keystore
### You will be asked for normal SSL info such as your name, department, company, etc.
/data/obs_6.5/java-linux-x86/bin/keytool -certreq -keyalg RSA -alias tomcat -keystore /data/obs/conf/keystore
### Save the intermediate certificate and the SSL certificate into the /data/obs/conf/ folder
### Use the below commands to import them into the keytool
/data/obs_6.5/java-linux-x86/bin/keytool -import -alias intermed -trustcacerts -file sf_intermediate.crt -keystore /data/obs/conf/keystore
/data/obs_6.5/java-linux-x86/bin/keytool -import -alias tomcat -trustcacerts -file backup.atomicx.com.crt -keystore /data/obs/conf/keystore
### Check the keytool to make sure it was successful
/data/obs_6.5/java-linux-x86/bin/keytool -list -alias tomcat -keystore /data/obs/conf/keystore
### Make sure /data/obs/conf/server.xml has the correct keystore folder path
<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> <!-- <Connector port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="path to your keystore file" keystorePass="changeit" clientAuth="false" sslProtocol="TLS"/>
最佳答案
我发现我在哪里复制并粘贴了命令,连字符实际上不是连字符,而是破折号。一旦我更换了它们,我就不再收到错误了。然而,这是我当时所做的一切,以防有人需要。
### First, delete the previous keystore file
/data/obs_6.5/java-linux-x86/bin/keytool -delete -alias tomcat -keystore /data/obs/conf/keystore
### Then, create a new keystore file
/data/obs_6.5/java-linux-x86/bin/keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -keystore /data/obs/conf/keystore
### You will be asked for normal SSL info such as your name, department, company, etc.
/data/obs_6.5/java-linux-x86/bin/keytool -certreq -keyalg RSA -alias tomcat -keystore /data/obs/conf/keystore
### Save the intermediate certificate and the SSL certificate into the /data/obs/conf/ folder
### Use the below commands to import them into the keytool
/data/obs_6.5/java-linux-x86/bin/keytool -import -alias intermed -trustcacerts -file sf_intermediate.crt -keystore /data/obs/conf/keystore
/data/obs_6.5/java-linux-x86/bin/keytool -import -alias tomcat -trustcacerts -file backup.atomicx.com.crt -keystore /data/obs/conf/keystore
### Check the keytool to make sure it was successful
/data/obs_6.5/java-linux-x86/bin/keytool -list -alias tomcat -keystore /data/obs/conf/keystore
### Make sure /data/obs/conf/server.xml has the correct keystore folder path, and that it uses the same password that you set earlier
<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> <!-- <Connector port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="path to your keystore file" keystorePass="changeit" clientAuth="false" sslProtocol="TLS"/>
关于java - keytool错误: java. lang.RuntimeException : Usage error, –delete不是合法命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17195335/