1) Tạo ra file Keystore và CSR (tạo nó trong server mình sẻ gắn SSL vào)
1.1) Tạo ra keystore với dòng lệnh
1 |
keytool -keysize 2048 -genkey -alias tomcat -keyalg RSA -keystore tomcat.keystore |
sau khi chạy dòng lệnh trên thì sẻ xuất hiện yêu cầu nhập mật khẩu. (Mật khẩu này sẻ sử dụng lại ở phần sau)
Nhập các thông tin về người về SSL đó
.First and Last Name: thông tin về tên miền dành cho SSL đó. ví dụ doc.congthoidai.com. Nếu bạn sử “Wildcard certificate” (Chứng chỉ cho cả tên miền con) thì nhập vào là *.congthoidai.com
.Organizational Unit : Bạn có thể nhập tên miền
.Organization : Tên của tổ chức(tên này đã được đăng ký khi mua ssl), nếu là cá nhân thì nhập tên cá nhân đã mua ssl
.City/Locality: Nhập tên của thành phố mà đã đăng ký theo tổ chức ở trên
.State/Province: Nhập state(tiểu ban, quận huyện) phải phù hợp với state đã đăng ký khi mua ssl
.Country Code: Nhập 2 ký tự mã quốc gia theo chuẩn(ISO: International Organization for Standardization) ví dụ Việt Nam là VN
1.2) Tạo file Certificate Signing Request(CSR)
1 |
keytool -certreq -keyalg RSA -alias tomcat -file csr.csr -keystore tomcat.keystore |
nhập mật khẩu giống như trên
Mở file CSR vào copy nội dung bên trong để dán bên trong website godaddy và nhập các chứng nhận, Khi nhập sẻ có khoảng 3 file để sử dụng cho phần bên dưới.
----BEGIN NEW CERTIFICATE REQUEST----
and
----END CERTIFICATE REQUEST----
2) Cài đặt SSL vào trong Tomcat7
2.1) Import root certifacate vào file keystore ban đầu
1 |
keytool -import -alias root -keystore tomcat.keystore -trustcacerts -file [name of the root certificate] |
2.2) Import intermediate
1 |
keytool -import -alias intermed -keystore tomcat.keystore -trustcacerts -file [name of the intermediate certificate] |
2.3) Import issued certificate
1 |
keytool -import -alias tomcat -keystore tomcat.keystore -trustcacerts -file [name of the certificate] |
3) Cấu hình file server.xml /usr/share/tomcat7/conf/server.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
<Connector port="8080" proxyPort='80' protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" /> <Connector port="8443" proxyPort='443' protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" enableLookups='false' secure="true" clientAuth="false" sslProtocol="TLS" sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA" keystoreFile="/etc/pki/tls/certs/tomcat.keystore" keystorePass="password su dụng khi tạo keystore" keyAlias="tomcat" connectionTimeout="20000" /> |
Lưu ý phần keyAlias phải khớp với alias mình dùng trong file cert khi import vào key store
Chúc các bạn thành công. Khi nào mình có làm với các SSL khác mình sẻ up thêm
Tham khảo thêm tại
https://www.mulesoft.com/tcat/tomcat-ssl