สวัสดีครับ สำหรับท่าน ที่ต้องการติดตั้ง SSL Certificate ให้กับ Tomcat Server
กรณีที่ท่านทำการ Generate CSR จากระบบภายนอก และจะทำการติดตั้งโดยใช้ไฟล์ .PFX ที่ได้จากไอเรียลลีโฮส
กรณีที่ท่านใช้ KeyTool หรือ ติดตั้งตามคู่มือของ TOMCAT สามารถติดตั้งตามลิงค์ด้านล่างนี้
https://www.ireallyhost.com/kb/ssl/470
1. เตรียมการก่อนติดตั้ง
- ทำการดาว์โหลด SSL Certificate จากศูนย์บริการ
https://www.ireallyhost.com/client
- ทำการแปลง Cert เป็น .PFX File
https://www.ireallyhost.com/ssl/tools/ssl-converter
https://www.ireallyhost.com/kb/ssl/464
** หรือสามารถ download .pfx จากระบบอัตโนมัติได้แล้วในปัจจุบัน
- เงื่อนไขที่สำคัญ
- เปิดใช้งาน TLS 1.1 1.2 ขึ้นไป , ปิด SSL2.0, SSL3.0
- ใช้งาน OpenSSL Version 1.0 ขึ้นไป
- แนะนำใช้งาน TOMCAT 6 ขึ้นไป
- หากที่เครื่องติดตั้ง AppServ , XAMPP ต้องอัพเดทเวอร์ชั่น OpenSSL 1.0 ขึ้นไป
2. ทำการติดตั้ง SSL ให้กับ Tomcat
ทำการเปิด .xml ไฟล์ ใน conf folder ในเซิร์ฟเวอร์
- โดยปกติแล้วจะอยู่ที่ C:/Program Files/Apache Software/Foundation/Tomcat 9.0/conf
หรือ /usr/libexec/tomcat9/conf หรือ /etc/tomcat/conf
- แก้ไข config เช่น /etc/tomcat/conf/server.xml
ทำการ uncomment และตั้งชื่อไฟล์ใน config ให้สัมพันธ์ กับไฟล์ SSL
ทำการแก้ไข
- keystoreFile="conf/Certificate.pfx" # แก้ไขเป็น path ของ .pfx ไฟล์ของท่าน
- keystorePass="P@ssw0rd" #ใส่รหัสผ่านของ .pfx file
<Connector className="org.apache.catalina.connector.http.HttpConnector"
port="8443" minProcessors="5" maxProcessors="750"
enableLookups="true"
keystoreFile="conf/Certificate.pfx" keystorePass="P@ssw0rd" keystoreType="PKCS12"
acceptCount="10" debug="0" scheme="https" secure="true">
<Factory className="org.apache.catalina.net.SSLServerSocketFactory"
clientAuth="false" protocol="TLS"/>
</Connector>
หากใช้งาน config ด้านบนไม่ได้ ให้ลองใช้ config นี้ครับ
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true"
keystoreFile="conf/PFXCertificate.pfx"
keystorePass="P@ssw0rd" ></Connector>
ทำการ restart tomcat service
- bin/catalina.sh stop
- bin/catalina.sh start
หากท่านไม่ทราบ path ค้นหาโดยคำสั่ง
- whereis catalina.sh
ข้อแนะนำอื่นๆ เพิ่มเติม
- โปรดทำการตรวจสอบ Firewall ของท่านเปิด Port 80 และ 443 ไว้เรียบร้อยแล้ว
- ทำการเรียก https เว็บไซต์ของท่าน
ท่านก็จะสามารถใช้งาน SSL กับ Tomcat ได้อย่างสมูบูรณ์ บทความโดย ไอเรียลลีโฮส
-----------------------------------
วิธีติดตั้ง SSL Tomcat V6 , Install SSL Tomcat V6
<Connector protocol="org.apache.coyote.http11.Http11Protocol"
port="8443" minProcessors="5" maxProcessors="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="conf/PFXCertificate.pfx"
keystorePass="รหัสผ่าน PFX"
keystoreType="PKCS12"
/>
-----------------------------------
วิธีติดตั้ง SSL Tomcat V8 - V9 , Install SSL Tomcat V8 , Tomcat V9
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
acceptCount="10" debug="0"
maxHttpHeaderSize="8192"
keystoreFile="D:/Tomcat 8/conf/IREALLYHOST-SSL-CertificatePFX.pfx"
keystoreType="PKCS12"
keystorePass="PasswordForPFXFILE" />
Error: Tomcat8 runtime error HTTP header parsing errors ให้เพิ่มคำสั่งนี้ครับ
maxHttpHeaderSize="8192"
-----------------------------------
วิธีติดตั้ง SSL Tomcat V10, Install SSL Tomcat V10
กรณีใช้ .pfx ไฟล์ติดตั้ง ssl ให้ tomcat
<!-- Define an SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443"
maxThreads="150"
SSLEnabled="true">
<SSLHostConfig>
<Certificate
certificateKeystoreFile="${user.home}/PFXCertificate.pfx"
certificateKeystorePassword="changeit"
type="RSA"
/>
</SSLHostConfig>
</Connector>
-----------------------------------
กรณีใช้ .crt (pem format) ติดตั้ง ssl ให้ tomcat
<!-- Define an SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
protocol="org.apache.coyote.http11.Http11AprProtocol"
port="8443"
maxThreads="150"
SSLEnabled="true" >
<SSLHostConfig>
<Certificate
certificateKeyFile="conf/private.key"
certificateFile="conf/domain_name.crt"
certificateChainFile="conf/CARootCertificate-ca.crt"
type="RSA"
/>
</SSLHostConfig>
</Connector>
** บทความนี้มีลิขสิทธิ์ ไม่อนุญาติให้คัดลอก ทำซ้ำ ดัดแปลงก่อนได้รับอนุญาต **
โปรดระบุแหล่งที่มา บริษัท เอ็กซ์ตร้า คอร์ปอเรชั่น จำกัด / https://www.ireallyhost.com