openplanning

Cài đặt chứng chỉ SSL cho Tomcat Server

  1. Keytool
  2. Cấu hình Tomcat

1. Keytool

Mặc định khi bạn cài đặt xong Tomcat Server, nó chỉ hỗ trợ giao thức HTTP. Nếu bạn muốn sử dụng SSL (HTTPS) bạn cần phải thực hiện thêm một vài bước cấu hình.
keytool
Keytool là một công cụ sẵn có của JDK, nó giúp bạn tạo bạn tạo ra (generate) keystore, công cụ này nằm trong thư mục bin của JDK (Giống như hình minh họa dưới đây).
Mở cửa sổ CMDCD vào thư mục bin của JDK:
Thực thi lệnh sau để tạo ra một tập tin với tên "Mycert.cert" (Bạn có thể đặt một tên khác nếu muốn):
keytool -genkeypair -alias Mycert -keyalg RSA -keystore "C:\SSL\Mycert.cert"
keytool yêu cầu bạn nhập vào mật khẩu nào đó, chẳng hạn pass123.
Nhập vào các thông tin cần thiết khác:
What is your first and last name?
  [Unknown]:  MyLastName
What is the name of your organizational unit?
  [Unknown]:  My Org
What is the name of your organization?
  [Unknown]:  My Org
What is the name of your City or Locality?
  [Unknown]:  My City
What is the name of your State or Province?
  [Unknown]:  My Province
What is the two-letter country code for this unit?
  [Unknown]:  VN
Is CN=MyLastName, OU=My Org, O=My Org, L=My City, ST=My Province, C=VN correct?
  [no]:  y
Keytool yêu cầu bạn nhập vào mật khẩu cho <MyCert>, bạn có thể đặt một mật khẩu bất kỳ, hoặc giống với mật khẩu ở bước trước, chẳng hạn pass123.
Lúc này một tập tin đã được tạo ra:

2. Cấu hình Tomcat

Bước tiếp theo bạn cần cấu hình Tomcat để nó hỗ trợ SSL (HTTPS). OK, server.xml là một tập tin nằm trong thư mục conf của Tomcat, bạn có thể mở nó với một trình soạn thảo bất kỳ để sửa nội dung của nó.
Mở tập tin server.xml, và tìm đến vị trí như hình minh họa dưới đây:
Thêm vào một đoạn cấu hình:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
        maxThreads="150" SSLEnabled="true"  
        sslProtocol="TLS"
        schema="https"
        secure="true"
        keystoreFile="C:\SSL\Mycert.cert"
        keystorePass="pass123"
        >
</Connector>
Chú ý: Theo như cấu hình HTTPS của bạn đang lắng nghe trên cổng 8443. Khởi động lại Tomcat Server. Sau khi khởi động xong bạn có thể truy cập vào đường dẫn dưới đây để kiểm tra kết quả.
Trong lần chạy đầu tiên bạn có thể nhận được một thông báo lỗi "Your connection is not private", đừng lo lắng về điều đó, hãy nhấn nút "Advanced" thể nói với trình duyệt chấp nhận ngoại lệ này.