Author:zfs
條件:阿里云服務器,tomcat,域名
1.首先進入你的阿里云控制臺找到域名進去
image.png
2.之后在你的域名后面會有如下信息:
image.png
點擊SSL證書進去,下面根據個人情況填寫
image.png
3.填寫完成之后等待證書簽發即可,很快就會簽發完成。
等待簽發完成之后找到安全云盾里的SSL證書點進去,
image.png
找到后面的下載
image.png
點進去后找到tomcat的
image.png
點擊下載證書會出來一個zip文件
4.之后可以在windows或你的服務器上解壓出來
如果是windows上可以先解壓出來文件夾,使用xftp軟件或者在liunx上使用lrzsz把文件送到tomcat的目錄下,即下面這個目錄:
image.png
此時你應該是沒有cert文件夾的,可以在此目錄下新建一個cert文件夾,把下載出來的那個文件夾里的所有文件(注意是文件,不要把文件夾放過來)放到cert文件夾下:
image.png
5.此時進入cert目錄下執行此命令設置PFX密碼,
openssl pkcs12 -export -out xxxxxxxxx(這里填你自己對應的號,下同).pfx -inkey xxxxxxxxxxx.key -in xxxxxxxxxxx.pem
默認的密碼是放在那個xxxxxxx.txt文件里的,你可以進去看一看
6.之后進去配置文件,找到conf文件夾里的server.xml文件
image.png
image.png
進去后找到相應的藍色字體的那個位置,把那段其他顏色的代碼插入進去:
image.png
代碼如下:
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="cert/xxxxxxxxxx(此處填你自己的號).pfx"
keystoreType="PKCS12"
keystorePass="此處是你自己設置的或那個默認的txt文件里的密碼"
clientAuth="false" sslProtocol="TLS" />
注意配置的時候盡量別從windows上直接復制過去代碼,不然有的時候會因為字的編碼出現莫名其妙的bug,注意這里開放的端口號是443,為https的端口號,你也可以寫默認的8443,之后再在此文件中找到這個位置:
image.png
你的port可能是8080,這不要緊!找到這個位置就行。
把后面那個位置,你的可能是8443,這不要緊!改成你前面配置成的8443或443.
如果填寫443需要去配置一個安全規則,找到安全組進去:
image.png
點擊配置規則
image.png
看一下入方向有沒有這一條
image.png
有的話看下一步,沒有的話點擊此處添加安全組規則:
image.png
按如下方式填寫點擊確定即可
image.png
7.做到上一步重啟tomcat就應該可以生效了,但是輸入你的域名后不是默認的進入https,還需要進行一步配置
還是conf文件夾下,有一個web.xml文件,編輯找到這個位置:
image.png
在這段代碼后面插入如下代碼:
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
image.png
保存退出,重啟tomcat,去查收吧!