Nhu cầu quản lý tường lửa không chỉ giới hạn ở máy chủ ảo; cả tường lửa máy ảo và máy chủ vật lý đều phải cho phép lưu lượng truy cập cho các cổng mà các thành phần yêu cầu để giao tiếp với nhau.
Sơ đồ cổng
Các hình ảnh sau đây cho thấy các yêu cầu về cổng cho cả cấu hình một trung tâm dữ liệu và nhiều trung tâm dữ liệu:
Một trung tâm dữ liệu
Hình ảnh sau đây cho thấy các yêu cầu về cổng cho từng thành phần Edge trong cấu hình trung tâm dữ liệu duy nhất:
Lưu ý về sơ đồ này:
- Các cổng có tiền tố "M" là các cổng dùng để quản lý thành phần và phải được mở trên thành phần để Máy chủ quản lý có thể truy cập.
- Giao diện người dùng Edge cần có quyền truy cập vào Bộ định tuyến, trên các cổng do các proxy API hiển thị, để hỗ trợ nút Gửi trong công cụ theo dõi.
- Bạn có thể định cấu hình quyền truy cập vào các cổng JMX để yêu cầu tên người dùng/mật khẩu. Hãy xem phần Cách giám sát để biết thêm thông tin.
- Bạn có thể tuỳ ý định cấu hình quyền truy cập TLS/SSL cho một số kết nối nhất định. Các kết nối này có thể sử dụng các cổng khác nhau. Xem phần TLS/SSL để biết thêm thông tin.
- Bạn có thể định cấu hình Máy chủ quản lý và Giao diện người dùng Edge để gửi email thông qua một máy chủ SMTP bên ngoài. Nếu có, bạn phải đảm bảo rằng Máy chủ quản lý và giao diện người dùng có thể truy cập vào cổng cần thiết trên máy chủ SMTP (không hiển thị). Đối với SMTP không có TLS, số cổng thường là 25. Đối với SMTP có TLS, cổng này thường là 465, nhưng hãy kiểm tra với nhà cung cấp SMTP của bạn.
Nhiều trung tâm dữ liệu
Nếu bạn cài đặt cấu hình cụm 12 nút với 2 trung tâm dữ liệu, hãy đảm bảo rằng các nút trong 2 trung tâm dữ liệu có thể giao tiếp qua các cổng bên dưới:
Xin lưu ý rằng:
- Tất cả Máy chủ quản lý phải có thể truy cập vào tất cả các nút Cassandra trong tất cả các trung tâm dữ liệu khác.
- Tất cả Trình xử lý tin nhắn trong tất cả các trung tâm dữ liệu đều phải có thể truy cập vào nhau qua cổng 4528.
- Máy chủ quản lý phải có thể truy cập vào tất cả Trình xử lý thông báo qua cổng 8082.
- Tất cả Máy chủ quản lý và tất cả các nút Qpid đều phải có thể truy cập vào Postgres ở tất cả các trung tâm dữ liệu khác.
- Vì lý do bảo mật, ngoài các cổng nêu trên và mọi cổng khác mà yêu cầu mạng của bạn cần, không nên mở bất kỳ cổng nào khác giữa các trung tâm dữ liệu.
Theo mặc định, thông tin liên lạc giữa các thành phần không được mã hoá. Bạn có thể thêm lớp mã hoá bằng cách cài đặt Apigee mTLS. Để biết thêm thông tin, hãy xem bài viết Giới thiệu về Apigee mTLS.
Thông tin chi tiết về yêu cầu chuyển
Bảng dưới đây mô tả các cổng cần được mở trong tường lửa, theo thành phần Edge:
Thành phần | Cổng | Mô tả |
---|---|---|
Các cổng HTTP tiêu chuẩn | 80.443 | HTTP và mọi cổng khác mà bạn sử dụng cho máy chủ ảo |
Apigee SSO | 9099 | Các kết nối từ IdP bên ngoài, Máy chủ quản lý và trình duyệt để xác thực. |
Cassandra | 7000, 9042 | Các cổng Apache Cassandra để giao tiếp giữa các nút Cassandra và để các thành phần Edge khác truy cập. |
7199 | Cổng JMX. Phải mở để Máy chủ quản lý có thể truy cập. | |
LDAP | 10389 | SymasLDAP |
Máy chủ quản lý | 1099 | Cổng JMX |
4526 | Cổng cho bộ nhớ đệm phân tán và các lệnh gọi quản lý. Bạn có thể định cấu hình cổng này. | |
5636 | Cổng cho thông báo cam kết kiếm tiền. | |
8080 | Cổng cho các lệnh gọi API quản lý Edge. Các thành phần này cần có quyền truy cập vào cổng 8080 trên Máy chủ quản lý: Bộ định tuyến, Trình xử lý thông báo, Giao diện người dùng, Postgres, Apigee SSO (nếu được bật) và Qpid. | |
Giao diện người dùng quản lý | 9000 | Cổng để trình duyệt truy cập vào giao diện người dùng quản lý |
Trình xử lý thông báo | 1101 | Cổng JMX |
4528 | Đối với bộ nhớ đệm phân tán và các lệnh gọi quản lý giữa Bộ xử lý thông báo, cũng như đối với thông tin liên lạc từ Bộ định tuyến và Máy chủ quản lý.
Trình xử lý thông báo phải mở cổng 4528 làm cổng quản lý. Nếu bạn có nhiều Trình xử lý thông báo, thì tất cả các trình xử lý này phải có thể truy cập vào nhau qua cổng 4528 (được biểu thị bằng mũi tên vòng lặp trong sơ đồ ở trên cho cổng 4528 trên Trình xử lý thông báo). Nếu bạn có nhiều trung tâm dữ liệu, thì tất cả các Bộ xử lý thông báo trong tất cả các trung tâm dữ liệu đều phải truy cập được vào cổng này. |
|
8082 |
Cổng quản lý mặc định cho Trình xử lý thông báo và phải được mở trên thành phần để Máy chủ quản lý truy cập. Nếu bạn định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý thông báo, thì Bộ định tuyến sẽ dùng TLS/SSL để kiểm tra tình trạng của Trình xử lý thông báo. Bạn chỉ cần mở cổng 8082 trên Trình xử lý tin nhắn để Bộ định tuyến truy cập khi định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý tin nhắn. Nếu bạn không định cấu hình TLS/SSL giữa Bộ định tuyến và Trình xử lý thông báo, thì cấu hình mặc định, cổng 8082 vẫn phải mở trên Trình xử lý thông báo để quản lý thành phần, nhưng Bộ định tuyến không yêu cầu quyền truy cập vào cổng này. |
|
8443 | Khi bật TLS giữa Bộ định tuyến và Trình xử lý thông báo, bạn phải mở cổng 8443 trên Trình xử lý thông báo để Bộ định tuyến truy cập. | |
8998 | Cổng Message Processor để truyền thông tin từ Bộ định tuyến | |
Postgres | 22 | Nếu định cấu hình 2 nút Postgres để sử dụng tính năng sao chép chính-dự phòng, bạn phải mở cổng 22 trên mỗi nút để truy cập SSH. |
1103 | Cổng JMX | |
4530 | Đối với lệnh gọi quản lý và bộ nhớ đệm phân tán | |
5432 | Được dùng để giao tiếp từ Qpid/Máy chủ quản lý đến Postgres | |
8084 | Cổng quản lý mặc định trên máy chủ Postgres; phải mở trên thành phần để Máy chủ quản lý có thể truy cập. | |
Qpid | 1102 | Cổng JMX |
4529 | Đối với lệnh gọi quản lý và bộ nhớ đệm phân tán | |
5672 |
Cũng được dùng để trao đổi thông tin giữa máy chủ Qpid và các thành phần của broker trên cùng một nút. Trong các cấu trúc liên kết có nhiều nút Qpid, máy chủ phải có thể kết nối với tất cả các broker trên cổng 5672. |
|
8083 | Cổng quản lý mặc định trên máy chủ Qpid và phải được mở trên thành phần để Máy chủ quản lý truy cập. | |
8090 | Cổng mặc định cho Broker của Qpid; phải mở để truy cập vào bảng điều khiển quản lý hoặc API quản lý của Broker cho mục đích giám sát. | |
Bộ định tuyến | 4527 | Đối với lệnh gọi bộ nhớ đệm phân tán và lệnh gọi quản lý.
Bộ định tuyến phải mở cổng 4527 làm cổng quản lý. Nếu bạn có nhiều Bộ định tuyến, thì tất cả các Bộ định tuyến đó phải có thể truy cập vào nhau qua cổng 4527 (được biểu thị bằng mũi tên vòng lặp trong sơ đồ ở trên cho cổng 4527 trên Bộ định tuyến). Mặc dù không bắt buộc, nhưng bạn có thể mở cổng 4527 trên Bộ định tuyến để cho phép bất kỳ Bộ xử lý thông báo nào truy cập. Nếu không, bạn có thể thấy thông báo lỗi trong tệp nhật ký Message Processor. |
8081 | Cổng quản lý mặc định cho Bộ định tuyến và phải được mở trên thành phần để Máy chủ quản lý có thể truy cập. | |
15999 |
Cổng kiểm tra tình trạng. Trình cân bằng tải sử dụng cổng này để xác định xem Bộ định tuyến có hoạt động hay không. Để biết trạng thái của một Bộ định tuyến, bộ cân bằng tải sẽ gửi yêu cầu đến cổng 15999 trên Bộ định tuyến: curl -v http://routerIP:15999/v1/servers/self/reachable Nếu có thể truy cập vào Bộ định tuyến, yêu cầu sẽ trả về HTTP 200. |
|
59001 | Cổng dùng để kiểm thử quá trình cài đặt Edge bằng tiện ích apigee-validate .
Tiện ích này cần có quyền truy cập vào cổng 59001 trên Bộ định tuyến. Hãy xem phần Kiểm thử quá trình cài đặt để biết thêm thông tin về cổng 59001. |
|
SmartDocs | 59002 | Cổng trên bộ định tuyến Edge nơi các yêu cầu trang SmartDocs được gửi. |
ZooKeeper | 2181 | Được dùng bởi các thành phần khác như Máy chủ quản lý, Bộ định tuyến, Trình xử lý thông báo, v.v. |
2888, 3888 | Được ZooKeeper sử dụng nội bộ cho cụm ZooKeeper (còn gọi là nhóm ZooKeeper) giao tiếp |
Bảng tiếp theo cho thấy các cổng tương tự, được liệt kê theo số, với các thành phần nguồn và đích:
Số cổng | Mục đích | Thành phần nguồn | Thành phần đích |
---|---|---|---|
virtual_host_port | HTTP và mọi cổng khác mà bạn sử dụng cho lưu lượng truy cập lệnh gọi API máy chủ ảo. Các cổng 80 và 443 thường được dùng nhất; Bộ định tuyến thông báo có thể chấm dứt các kết nối TLS/SSL. | Máy khách bên ngoài (hoặc trình cân bằng tải) | Trình nghe trên Trình định tuyến thư |
1099 đến 1103 | Quản lý JMX | Ứng dụng JMX | Máy chủ quản lý (1099) Bộ xử lý thông báo (1101) Máy chủ Qpid (1102) Máy chủ Postgres (1103) |
2181 | Giao tiếp với ứng dụng Zookeeper | Máy chủ quản lý Bộ định tuyến Trình xử lý thông báo Máy chủ Qpid Máy chủ Postgres |
Nhân viên sở thú |
2888 và 3888 | Quản lý các nút nội bộ của Zookeeper | Nhân viên sở thú | Nhân viên sở thú |
4526 | Cổng quản lý RPC | Máy chủ quản lý | Máy chủ quản lý |
4527 | Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý, cũng như cho hoạt động giao tiếp giữa các Bộ định tuyến | Bộ định tuyến Máy chủ quản lý |
Bộ định tuyến |
4528 | Đối với các lệnh gọi bộ nhớ đệm phân tán giữa các Trình xử lý thông báo và để giao tiếp từ Bộ định tuyến | Máy chủ quản lý Bộ định tuyến Trình xử lý thông báo |
Trình xử lý thông báo |
4529 | Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý | Máy chủ quản lý | Máy chủ Qpid |
4530 | Cổng quản lý RPC cho bộ nhớ đệm phân tán và các lệnh gọi quản lý | Máy chủ quản lý | Máy chủ Postgres |
5432 | Ứng dụng Postgres | Máy chủ Qpid | Postgres |
5636 | Kiếm tiền | Thành phần JMS bên ngoài | Máy chủ quản lý |
5672 |
Cũng được dùng để trao đổi thông tin giữa máy chủ Qpid và các thành phần của broker trên cùng một nút. Trong các cấu trúc liên kết có nhiều nút Qpid, máy chủ phải có thể kết nối với tất cả các broker trên cổng 5672. |
Máy chủ Qpid | Máy chủ Qpid |
7000 | Giao tiếp giữa các nút Cassandra | Cassandra | Nút Cassandra khác |
7199 | Quản lý JMX. Phải mở để Máy chủ quản lý truy cập vào nút Cassandra. | Ứng dụng JMX | Cassandra |
8080 | Cổng API quản lý | Ứng dụng Management API | Máy chủ quản lý |
8081 đến 8084 |
Các cổng API thành phần, dùng để đưa ra yêu cầu API trực tiếp cho từng thành phần. Mỗi thành phần sẽ mở một cổng khác; cổng chính xác được sử dụng phụ thuộc vào cấu hình nhưng phải được mở trên thành phần để Máy chủ quản lý có thể truy cập |
Ứng dụng Management API | Bộ định tuyến (8081) Trình xử lý thông báo (8082) Máy chủ Qpid (8083) Máy chủ Postgres (8084) |
8090 | Cổng quản lý mặc định cho Broker của Qpid để quản lý và giám sát hàng đợi. | Trình duyệt hoặc ứng dụng API | Trình môi giới Qpid (apigee-qpidd) |
8443 | Giao tiếp giữa Bộ định tuyến và Trình xử lý thông báo khi TLS được bật | Bộ định tuyến | Trình xử lý thông báo |
8998 | Giao tiếp giữa Bộ định tuyến và Trình xử lý thông báo | Bộ định tuyến | Trình xử lý thông báo |
9000 | Cổng giao diện người dùng quản lý Edge mặc định | Trình duyệt | Máy chủ giao diện người dùng quản lý |
9042 | Truyền tải gốc CQL | Bộ định tuyến Trình xử lý thông báo Máy chủ quản lý |
Cassandra |
9099 | Xác thực IDP bên ngoài | IDP, trình duyệt và Máy chủ quản lý | Apigee SSO |
10389 | Cổng LDAP | Máy chủ quản lý | SymasLDAP |
15999 | Cổng kiểm tra tình trạng. Trình cân bằng tải sử dụng cổng này để xác định xem Bộ định tuyến có hoạt động hay không. | Trình cân bằng tải | Bộ định tuyến |
59001 | Cổng mà tiện ích apigee-validate dùng để kiểm thử quá trình cài đặt Edge |
apigee-validate | Bộ định tuyến |
59002 | Cổng bộ định tuyến nơi các yêu cầu trang SmartDocs được gửi | SmartDocs | Bộ định tuyến |
Trình xử lý thông báo duy trì một nhóm kết nối chuyên dụng mở đến Cassandra, được định cấu hình để không bao giờ hết thời gian chờ. Khi tường lửa nằm giữa Trình xử lý thông báo và máy chủ Cassandra, tường lửa có thể hết thời gian chờ kết nối. Tuy nhiên, Message Processor không được thiết kế để thiết lập lại các kết nối với Cassandra.
Để ngăn chặn tình huống này, Apigee đề xuất rằng máy chủ Cassandra, Trình xử lý thông báo và Bộ định tuyến nằm trong cùng một mạng con để tường lửa không tham gia vào việc triển khai các thành phần này.
Nếu có tường lửa giữa Bộ định tuyến và Bộ xử lý thông báo, đồng thời tường lửa này có thời gian chờ TCP ở trạng thái rảnh, thì bạn nên làm như sau:
- Đặt
net.ipv4.tcp_keepalive_time = 1800
trong phần cài đặt sysctl trên hệ điều hành Linux, trong đó 1800 phải thấp hơn thời gian chờ tcp ở trạng thái rảnh của tường lửa. Chế độ cài đặt này sẽ duy trì kết nối ở trạng thái đã thiết lập để tường lửa không ngắt kết nối. - Trên tất cả Trình xử lý thông báo, hãy chỉnh sửa
/opt/apigee/customer/application/message-processor.properties
để thêm thuộc tính sau. Nếu tệp không tồn tại, hãy tạo tệp.conf_system_cassandra.maxconnecttimeinmillis=-1
- Khởi động lại Trình xử lý tin nhắn:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Trên tất cả các Bộ định tuyến, hãy chỉnh sửa
/opt/apigee/customer/application/router.properties
để thêm thuộc tính sau. Nếu tệp không tồn tại, hãy tạo tệp.conf_system_cassandra.maxconnecttimeinmillis=-1
- Khởi động lại bộ định tuyến:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart