Định cấu hình TLS cho API quản lý

Edge for Private Cloud phiên bản 4.16.09

Theo mặc định, TLS bị tắt cho API quản lý và bạn truy cập vào API quản lý Edge qua HTTP bằng cách sử dụng địa chỉ IP của nút Máy chủ quản lý và cổng 8080. Ví dụ:

http://ms_IP:8080

Ngoài ra, bạn có thể định cấu hình quyền truy cập TLS vào API quản lý để có thể truy cập API đó ở dạng:

https://ms_IP:8443

Trong ví dụ này, bạn định cấu hình quyền truy cập TLS để sử dụng cổng 8443. Tuy nhiên, Edge không yêu cầu số cổng đó – bạn có thể định cấu hình Máy chủ quản lý để sử dụng các giá trị cổng khác. Yêu cầu duy nhất là tường lửa của bạn cho phép lưu lượng truy cập qua cổng đã chỉ định.

Để đảm bảo việc mã hoá lưu lượng truy cập đến và đi từ API quản lý, hãy định cấu hình các chế độ cài đặt trong tệp /opt/apigee/customer/application/management-server.properties.

Ngoài cấu hình TLS, bạn cũng có thể kiểm soát việc xác thực mật khẩu (độ dài và độ mạnh của mật khẩu) bằng cách sửa đổi tệp management-server.properties.

Đảm bảo rằng cổng TLS của bạn đang mở

Quy trình trong phần này định cấu hình TLS để sử dụng cổng 8443 trên Máy chủ quản lý. Bất kể cổng bạn sử dụng là gì, bạn phải đảm bảo cổng đó đang mở trên Máy chủ quản lý. Ví dụ: bạn có thể sử dụng lệnh sau để mở tệp:

$ iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose 

Định cấu hình TLS

Chỉnh sửa tệp /opt/apigee/customer/application/management-server.properties để kiểm soát việc sử dụng TLS đối với lưu lượng truy cập vào và đi từ API quản lý. Nếu tệp này không tồn tại, hãy tạo tệp.

Sử dụng quy trình sau để định cấu hình quyền truy cập TLS vào API quản lý:

  1. Tạo tệp JKS kho khoá chứa chứng chỉ TLS và khoá riêng tư của bạn. Để biết thêm thông tin, hãy xem bài viết Định cấu hình TLS/SSL cho Edge On Premises.
  2. Sao chép tệp JKS của kho khoá vào một thư mục trên nút Máy chủ quản lý, chẳng hạn như /opt/apigee/customer/application.
  3. Thay đổi quyền sở hữu của tệp JKS thành apigee:
    $ chown apigee:apigee keystore.jks

    , trong đó keystore.jks là tên của tệp kho khoá.
  4. Chỉnh sửa /opt/apigee/customer/application/management-server.properties để đặt các thuộc tính sau. Nếu tệp đó không tồn tại, hãy tạo tệp:
    conf_webserver_ssl.enabled=true
    # Đặt giá trị bên cạnh là true nếu tất cả thông tin liên lạc phải qua HTTPS.
    # Không nên sử dụng cho đến khi bạn đã kiểm thử TLS/HTTPS cho API Edge và
    # định cấu hình giao diện người dùng Edge để sử dụng TLS truy cập vào API Edge, như minh hoạ bên dưới.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Nhập mật khẩu kho khoá đã làm rối mã nguồn bên dưới.
    conf_webserver_keystore.password=OBF:obfuscatedPassword
    conf_webserver_cert.alias=apigee-devtest


    trong đó keyStore.jks là tệp kho khoá và obfuscatedPassword là mật khẩu kho khoá đã làm rối mã nguồn. Hãy xem phần Định cấu hình TLS/SSL cho Edge On Premises để biết thông tin về cách tạo mật khẩu được làm rối.
  5. Khởi động lại Máy chủ quản lý Edge bằng lệnh:
    $ /opt/apigee/apigee-service/bin/apigee-service cạnh-management-server khởi động lại

API quản lý hiện hỗ trợ quyền truy cập qua TLS.

Sau khi đảm bảo TLS hoạt động đúng cách, bao gồm cả việc đảm bảo TLS hoạt động cho giao diện người dùng Edge, bạn có thể tắt quyền truy cập HTTP vào API quản lý như mô tả trong phần tiếp theo.

Định cấu hình giao diện người dùng Edge để sử dụng TLS truy cập vào API Edge

Trong quy trình trên, Apigee đề xuất để conf_webserver_http.turn.off=false để giao diện người dùng Edge có thể tiếp tục thực hiện các lệnh gọi API Edge qua HTTP.

Hãy sử dụng quy trình sau để định cấu hình giao diện người dùng Edge để chỉ thực hiện các lệnh gọi này qua HTTPS:

  1. Định cấu hình quyền truy cập TLS vào API quản lý như mô tả ở trên.
  2. Sau khi xác nhận rằng TLS đang hoạt động cho API quản lý, hãy chỉnh sửa /opt/apigee/customer/application/management-server.properties để thiết lập thuộc tính sau:
    conf_webserver_http.turn.off=true
  3. Khởi động lại Máy chủ quản lý Edge bằng lệnh:
    $ /opt/apigee/apigee-service/bin/apigee-service cạnh-management-server khởi động lại
  4. Chỉnh sửa /opt/apigee/customer/application/ui.properties để đặt thuộc tính sau cho giao diện người dùng Edge. Nếu tệp đó không tồn tại, hãy tạo tệp:
    conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"

    trong đó FQDN là tên miền đầy đủ, theo địa chỉ chứng chỉ của Máy chủ quản lý, còn số cổng là cổng do conf_web_ssl_server chỉ định.
  5. Chỉ khi bạn sử dụng chứng chỉ tự ký (không khuyến nghị trong môi trường phát hành chính thức) khi định cấu hình quyền truy cập TLS vào API quản lý ở trên, hãy thêm thuộc tính sau vào ui.properties:
    conf/application.conf+play.ws.ssl.loose.AnyCertificate=true

    Nếu không, Giao diện người dùng Edge sẽ từ chối chứng chỉ tự ký.
  6. Khởi động lại giao diện người dùng Edge bằng lệnh:
    $ /opt/apigee/apigee-service/bin/apigee-service cạnh-ui khởi động lại

Thuộc tính TLS cho Máy chủ quản lý

Bảng sau đây liệt kê tất cả các thuộc tính TLS/SSL mà bạn có thể đặt trong management-server.properties:

Thuộc tính

Nội dung mô tả

conf_webserver_http.port=8080

Giá trị mặc định là 8080.

conf_webserver_ssl.enabled=false

Cách bật/tắt TLS/SSL. Khi bật TLS/SSL (đúng), bạn cũng phải đặt các thuộc tính ssl.port và kho khoá.path.

conf_webserver_http.turn.off=true

Cách bật/tắt http cùng với https. Nếu bạn chỉ muốn sử dụng HTTPS, hãy để giá trị mặc định là true.

conf_webserver_ssl.port=8443

Cổng TLS/SSL.

Bắt buộc khi bật TLS/SSL (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=<path>

Đường dẫn đến tệp kho khoá.

Bắt buộc khi TLS/SSL được bật (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=

Sử dụng mật khẩu được làm rối mã nguồn theo định dạng sau: OBF:xxxxxxxxxx

conf_webserver_cert.alias=

Bí danh chứng chỉ kho khóa tùy chọn

conf_webserver_keymanager.password=

Nếu trình quản lý khoá có mật khẩu, hãy nhập phiên bản mật khẩu bị làm rối mã nguồn theo định dạng sau: OBF:xxxxxxxxxx

conf_webserver_trust.all= <false | true>

conf_webserver_trust.store.path=<path>

conf_webserver_trust.store.password=

Định cấu hình chế độ cài đặt cho kho tin cậy. Xác định xem bạn có muốn chấp nhận tất cả chứng chỉ TLS/SSL hay không (ví dụ: để chấp nhận các loại không theo chuẩn). Giá trị mặc định là false. Cung cấp đường dẫn đến kho lưu trữ đáng tin cậy và nhập mật khẩu kho lưu trữ đáng tin cậy đã làm rối mã nguồn theo định dạng sau: OBF:xxxxxxxxxx

conf_webserver_excluded.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2>

conf_webserver_include.cipher.suites=

Chỉ định mọi bộ mật mã mà bạn muốn đưa vào hoặc loại trừ. Ví dụ: nếu phát hiện lỗ hổng trong một thuật toán mã hoá, bạn có thể loại trừ thuật toán đó tại đây. Phân tách nhiều thuật toán mật mã bằng dấu cách.

Để biết thông tin về bộ cypher và kiến trúc mật mã học, hãy xem:

http://docs.oracle.com/javase/8/docs/technotes/
guide/security/SunProviders.html#SunJSSE

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

Số nguyên xác định:

  • Kích thước bộ nhớ đệm của phiên TLS/SSL (tính bằng byte) để lưu trữ thông tin về phiên cho nhiều ứng dụng.
  • Khoảng thời gian các phiên TLS/SSL có thể kéo dài trước khi hết thời gian chờ (tính bằng mili giây).