Theo mặc định, bạn truy cập vào giao diện người dùng 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 9000. Ví dụ:
http://ms_IP:9000
Ngoài ra, bạn có thể định cấu hình quyền truy cập TLS vào giao diện người dùng Edge để có thể truy cập vào giao diện người dùng đó ở dạng:
https://ms_IP:9443
Trong ví dụ này, bạn định cấu hình quyền truy cập TLS để sử dụng cổng 9443. 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 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 9443 trên Máy chủ quản lý. Bất kể sử dụng cổng là gì, bạn đều phải đảm bảo rằng 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 9443 -j ACCEPT --verbose
Định cấu hình TLS
Hãy làm theo quy trình sau để định cấu hình quyền truy cập TLS vào giao diện người dùng quản lý:
- Tạo tệp JKS kho khoá chứa chứng chỉ TLS và khoá riêng tư, sau đó sao chép tệp đó vào nút Máy chủ quản lý. Để biết thêm thông tin, hãy xem Định cấu hình TLS/SSL cho Edge trên cơ sở.
- Chạy lệnh sau để định cấu hình TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- Nhập số cổng HTTPS, ví dụ: 9443.
- Chỉ định xem bạn có muốn vô hiệu hoá quyền truy cập HTTP vào giao diện người dùng quản lý hay không. Theo mặc định, bạn có thể truy cập giao diện người dùng quản lý qua HTTP trên cổng 9000.
- Nhập thuật toán kho khoá. Giá trị mặc định là JKS.
- Nhập đường dẫn tuyệt đối đến tệp JKS của kho khoá.
Tập lệnh sẽ sao chép tệp này vào thư mục
/opt/apigee/customer/conf
trên nút Máy chủ quản lý và thay đổi quyền sở hữu của tệp thành "apigee". - Nhập mật khẩu kho khoá văn bản rõ ràng.
- Sau đó, tập lệnh sẽ khởi động lại giao diện người dùng quản lý Edge. Sau khi khởi động lại, giao diện người dùng quản lý sẽ hỗ trợ quyền truy cập qua TLS.
Bạn có thể xem các chế độ cài đặt này trong phần
/opt/apigee/etc/edge-ui.d/SSL.sh
.
Sử dụng tệp cấu hình để định cấu hình TLS
Thay vì quy trình trên, bạn có thể truyền tệp cấu hình vào lệnh ở bước 2 của quy trình. Bạn sẽ cần sử dụng phương thức này nếu muốn đặt các thuộc tính TLS không bắt buộc.
Để sử dụng tệp cấu hình, hãy tạo một tệp mới và thêm các thuộc tính sau:
HTTPSPORT=9443 DISABLE_HTTP=y # Set type to PKCS12 if you are using a PKCS12 keystore KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
Lưu tệp trong thư mục cục bộ với bất kỳ tên nào bạn muốn. Sau đó, hãy sử dụng lệnh sau để định cấu hình TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
trong đó configFile là đường dẫn đầy đủ đến tệp bạn đã lưu.
Sử dụng kho khoá PKCS12 cho các hệ điều hành có hỗ trợ FIPS
Nếu đang sử dụng Edge cho Đám mây riêng tư trên hệ điều hành có hỗ trợ FIPS, bạn nên sử dụng kho khoá PKCS12. Bạn có thể tạo kho khoá PKCS12 bằng các lệnh OpenSSL chuẩn. Khi sử dụng kho khoá PKCS12, hãy đặt KEY_ALGO=PKCS12
trong tệp cấu hình.
Định cấu hình giao diện người dùng Edge khi TLS ngừng hoạt động trên trình cân bằng tải
Nếu có trình cân bằng tải chuyển tiếp các yêu cầu đến giao diện người dùng Edge, bạn có thể chọn chấm dứt kết nối TLS trên trình cân bằng tải, sau đó yêu cầu trình cân bằng tải chuyển tiếp các yêu cầu đến giao diện người dùng Edge qua HTTP. Cấu hình này được hỗ trợ nhưng bạn cần định cấu hình bộ cân bằng tải và giao diện người dùng Edge cho phù hợp.
Bạn cần có cấu hình bổ sung khi giao diện người dùng Edge gửi email cho người dùng để đặt mật khẩu khi người dùng được tạo hoặc khi người dùng yêu cầu đặt lại mật khẩu đã mất. Email này chứa một URL mà người dùng chọn đặt hoặc đặt lại mật khẩu. Theo mặc định, nếu giao diện người dùng Edge không được định cấu hình để sử dụng TLS, thì URL trong email đã tạo sẽ sử dụng giao thức HTTP chứ không phải HTTPS. Bạn phải định cấu hình bộ cân bằng tải và giao diện người dùng Edge để tạo một địa chỉ email sử dụng HTTPS.
Để định cấu hình bộ cân bằng tải, hãy đảm bảo rằng bộ cân bằng tải đặt tiêu đề sau đây trên các yêu cầu được chuyển tiếp đến giao diện người dùng Edge:
X-Forwarded-Proto: https
Cách định cấu hình giao diện người dùng Edge:
- Mở tệp
/opt/apigee/customer/application/ui.properties
trong trình chỉnh sửa. Nếu tệp không tồn tại, hãy tạo tệp:vi /opt/apigee/customer/application/ui.properties
- Thiết lập thuộc tính sau trong
ui.properties
:conf/application.conf+trustxforwarded=true
- Lưu các thay đổi vào
ui.properties
. - Khởi động lại giao diện người dùng Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Thiết lập các thuộc tính TLS không bắt buộc
Giao diện người dùng Edge hỗ trợ các thuộc tính cấu hình TLS không bắt buộc mà bạn có thể sử dụng để đặt các thuộc tính sau:
- Giao thức TLS mặc định
- Danh sách các giao thức TLS được hỗ trợ
- Các thuật toán TLS được hỗ trợ
- Các thuật toán mật mã TLS được hỗ trợ
Các tham số không bắt buộc này chỉ có sẵn khi bạn đặt thuộc tính cấu hình sau trong tệp cấu hình, như mô tả trong phần Sử dụng tệp cấu hình để định cấu hình TLS:
TLS_CONFIGURE=y
Bảng sau đây mô tả các thuộc tính này:
Thuộc tính | Mô tả |
---|---|
TLS_PROTOCOL
|
Xác định giao thức TLS mặc định cho giao diện người dùng Edge. Theo mặc định, phiên bản này là TLS 1.2. Các giá trị hợp lệ là TLSv1.2, TLSv1.1, TLSv1. |
TLS_ENABLED_PROTOCOL
|
Xác định danh sách các giao thức đã bật dưới dạng một mảng được phân tách bằng dấu phẩy. Ví dụ: TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] Lưu ý rằng bạn phải thoát ký tự ".
Theo mặc định, tất cả các giao thức đều được bật. |
TLS_DISABLED_ALGO
|
Xác định các bộ thuật toán mật mã bị vô hiệu hoá và cũng có thể được dùng để ngăn việc sử dụng các khoá có kích thước nhỏ cho việc bắt tay TLS. Không có giá trị mặc định. Các giá trị được truyền đến
TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS
|
Xác định danh sách thuật toán mật mã TLS hiện có dưới dạng một mảng được phân tách bằng dấu phẩy. Ví dụ: TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] Lưu ý rằng bạn phải thoát ký tự ".
Danh sách mặc định gồm các thuật toán mã hoá được bật là: "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_RC4_128_SHA", "SSL_RSA_WITH_RC4_128_MD5", "TLS_EMPTY_RENEGOTIATION_INFO_SCSV" Xem danh sách các thuật toán mã hoá có sẵn tại đây. |
Tắt giao thức TLS
Để tắt giao thức TLS, bạn cần chỉnh sửa tệp cấu hình, như mô tả trong bài viết Sử dụng tệp cấu hình để định cấu hình TLS như sau:
- Mở tệp cấu hình trong trình chỉnh sửa.
- Để tắt một giao thức TLS duy nhất (ví dụ: TLSv1.0), hãy thêm nội dung sau vào tệp cấu hình:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
Để tắt nhiều giao thức (ví dụ: TLSv1.0 và TLSv1.1), hãy thêm nội dung sau vào tệp cấu hình:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- Lưu các thay đổi vào tệp cấu hình.
- Chạy lệnh sau để định cấu hình TLS:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
trong đó configFile là đường dẫn đầy đủ đến tệp cấu hình.
- Khởi động lại giao diện người dùng Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Sử dụng cookie bảo mật
Apigee Edge cho Private Cloud hỗ trợ việc thêm cờ secure
vào tiêu đề Set-Cookie
cho các phản hồi từ giao diện người dùng Edge. Nếu có cờ này thì hệ thống chỉ có thể gửi cookie qua các kênh có bật TLS. Nếu không có, cookie có thể được gửi qua bất kỳ kênh nào, cho dù kênh đó có an toàn hay không.
Cookie không có cờ secure
có thể cho phép kẻ tấn công thu thập và sử dụng lại cookie hoặc xâm nhập vào một phiên đang hoạt động. Do đó, tốt nhất là bạn nên bật chế độ cài đặt này.
Cách đặt cờ secure
cho cookie giao diện người dùng Edge:
- Mở tệp sau đây trong một trình chỉnh sửa văn bản:
/opt/apigee/customer/application/ui.properties
Nếu tệp không tồn tại, hãy tạo tệp đó.
- Đặt thuộc tính
conf_application_session.secure
thànhtrue
trong tệpui.properties
, như trong ví dụ sau:conf_application_session.secure=true
- Lưu các thay đổi.
- Khởi động lại giao diện người dùng Edge bằng tiện ích
apigee-serice
, như trong ví dụ sau:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Để xác nhận thay đổi có đang diễn ra, hãy kiểm tra tiêu đề phản hồi từ giao diện người dùng Edge bằng cách sử dụng một tiện ích như curl
; ví dụ:
curl -i -v https://edge_UI_URL
Tiêu đề phải chứa một dòng có dạng như sau:
Set-Cookie: secure; ...
Tắt TLS trên giao diện người dùng Edge
Để tắt TLS trên giao diện người dùng Edge, hãy sử dụng lệnh sau:
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl