ความจำเป็นในการจัดการไฟร์วอลล์ไม่ได้มีเพียงโฮสต์เสมือน ทั้ง VM และไฟร์วอลล์ของโฮสต์จริงต้องอนุญาตให้มีการรับส่งข้อมูลสำหรับพอร์ตที่คอมโพเนนต์จำเป็นต้องใช้สื่อสารกันได้
แผนภาพพอร์ต
รูปภาพต่อไปนี้แสดงข้อกำหนดของพอร์ตสำหรับทั้งการกำหนดค่าศูนย์ข้อมูลแห่งเดียวและการกำหนดค่าศูนย์ข้อมูลหลายแห่ง
ศูนย์ข้อมูลเดียว
รูปภาพต่อไปนี้แสดงข้อกำหนดของพอร์ตสำหรับคอมโพเนนต์ Edge แต่ละรายการในการกำหนดค่าศูนย์ข้อมูลรายการเดียว
หมายเหตุเกี่ยวกับแผนภาพนี้
- พอร์ตที่มี "M" นำหน้าคือพอร์ตที่ใช้จัดการคอมโพเนนต์ และต้องเปิดบนคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้
- Edge UI ต้องมีสิทธิ์เข้าถึงเราเตอร์บนพอร์ตที่แสดงโดยพร็อกซี API เพื่อรองรับปุ่มส่งในเครื่องมือติดตาม
- คุณกำหนดค่าการเข้าถึงพอร์ต JMX ให้ต้องใช้ชื่อผู้ใช้/รหัสผ่านได้ ดูข้อมูลเพิ่มเติมได้ในวิธีตรวจสอบ
- คุณเลือกกำหนดค่าการเข้าถึง TLS/SSL สำหรับการเชื่อมต่อบางอย่างได้ ซึ่งจะใช้พอร์ตที่แตกต่างกันก็ได้ โปรดดู TLS/SSL สำหรับข้อมูลเพิ่มเติม
- คุณกำหนดค่า Management Server และ Edge UI ให้ส่งอีเมลผ่านเซิร์ฟเวอร์ SMTP ภายนอกได้ หากทำเช่นนั้น คุณต้องตรวจสอบว่าเซิร์ฟเวอร์การจัดการและ UI เข้าถึงพอร์ตที่จำเป็นในเซิร์ฟเวอร์ SMTP ได้ (ไม่แสดง) สำหรับ SMTP ที่ไม่ใช่ TLS หมายเลขพอร์ตมักจะเป็น 25 สำหรับ SMTP ที่เปิดใช้ TLS มักจะเป็น 465 แต่โปรดตรวจสอบกับผู้ให้บริการ SMTP
ศูนย์ข้อมูลหลายแห่ง
หากคุณติดตั้งการกำหนดค่าคลัสเตอร์ 12 โหนดที่มีศูนย์ข้อมูล 2 แห่ง โปรดตรวจสอบว่าโหนดในศูนย์ข้อมูลทั้ง 2 แห่งสื่อสารกันผ่านพอร์ตที่แสดงด้านล่างได้
โปรดทราบว่า
- เซิร์ฟเวอร์การจัดการทั้งหมดต้องมีสิทธิ์เข้าถึงโหนด Cassandra ทั้งหมดในศูนย์ข้อมูลอื่นๆ ทั้งหมด
- ตัวประมวลผลข้อความทั้งหมดในศูนย์ข้อมูลทุกศูนย์ต้องมีสิทธิ์เข้าถึงซึ่งกันและกันได้ผ่านพอร์ต 4528
- เซิร์ฟเวอร์การจัดการต้องสามารถเข้าถึง Message Processor ทั้งหมดผ่านพอร์ต 8082
- เซิร์ฟเวอร์การจัดการทั้งหมดและโหนด Qpid ทั้งหมดต้องเข้าถึง Postgres ในศูนย์ข้อมูลอื่นๆ ทั้งหมดได้
- เพื่อความปลอดภัย นอกเหนือจากพอร์ตที่แสดงข้างต้นและพอร์ตอื่นๆ ตามที่ข้อกำหนดของเครือข่ายของคุณเองกำหนดแล้ว คุณไม่ควรเปิดพอร์ตอื่นๆ ระหว่างศูนย์ข้อมูลอีก
โดยค่าเริ่มต้น การสื่อสารระหว่างคอมโพเนนต์จะไม่เข้ารหัส คุณจะเพิ่มการเข้ารหัสได้โดยการติดตั้ง Apigee mTLS โปรดดูข้อมูลเพิ่มเติมที่หัวข้อข้อมูลเบื้องต้นเกี่ยวกับ Apigee mTLS
รายละเอียดพอร์ต
ตารางด้านล่างอธิบายพอร์ตที่ต้องเปิดในไฟร์วอลล์ตามคอมโพเนนต์ Edge
ส่วนประกอบ | พอร์ต | คำอธิบาย |
---|---|---|
พอร์ต HTTP มาตรฐาน | 80, 443 | HTTP และพอร์ตอื่นๆ ที่คุณใช้สำหรับโฮสต์เสมือน |
SSO ของ Apigee | 9099 | การเชื่อมต่อจาก IdP ภายนอก เซิร์ฟเวอร์การจัดการ และเบราว์เซอร์สำหรับการตรวจสอบสิทธิ์ |
Cassandra | 7000, 9042, 9160 | พอร์ต Apache Cassandra สำหรับการสื่อสารระหว่างโหนด Cassandra และสำหรับการเข้าถึงโดยคอมโพเนนต์ Edge อื่นๆ |
7199 | พอร์ต JMX ต้องเปิดเพื่อเข้าถึงโดยเซิร์ฟเวอร์การจัดการ | |
LDAP | 10389 | OpenLDAP |
เซิร์ฟเวอร์การจัดการ | 1099 | พอร์ต JMX |
4526 | พอร์ตสำหรับแคชแบบกระจายและการเรียกใช้การจัดการ พอร์ตนี้กำหนดค่าได้ | |
5636 | พอร์ตสำหรับการแจ้งเตือนเกี่ยวกับการยืนยันการสร้างรายได้ | |
8080 | พอร์ตสำหรับการเรียก Edge Management API คอมโพเนนต์เหล่านี้ต้องมีสิทธิ์เข้าถึงพอร์ต 8080 ในเซิร์ฟเวอร์การจัดการ ได้แก่ เราเตอร์, ตัวประมวลผลข้อความ, UI, Postgres, SSO ของ Apigee (หากเปิดใช้) และ Qpid | |
UI การจัดการ | 9000 | พอร์ตสำหรับเข้าถึง UI การจัดการของเบราว์เซอร์ |
Message Processor | 1,101 | พอร์ต JMX |
4528 | สำหรับแคชแบบกระจายและการเรียกใช้การจัดการระหว่างผู้ประมวลผลข้อมูลข้อความ และสำหรับการสื่อสารจากเราเตอร์และเซิร์ฟเวอร์การจัดการ
ตัวประมวลผลข้อความต้องเปิดพอร์ต 4528 เป็นพอร์ตการจัดการ หากคุณมี Message Processor หลายตัว โปรแกรมเหล่านี้จะต้องเข้าถึงซึ่งกันและกันผ่านพอร์ต 4528 ได้ (ซึ่งระบุด้วยลูกศรวนซ้ำในแผนภาพด้านบนสำหรับพอร์ต 4528 ในตัวประมวลผลข้อความ) หากมีศูนย์ข้อมูลหลายแห่ง ผู้ประมวลผลข้อความทุกรายในศูนย์ข้อมูลทุกแห่งต้องเข้าถึงพอร์ตได้ |
|
8082 |
พอร์ตการจัดการเริ่มต้นสำหรับเครื่องมือประมวลผลข้อความและต้องเปิดบนคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ หากคุณกำหนดค่า TLS/SSL ระหว่างเราเตอร์และผู้ประมวลผลข้อมูลข้อความที่เราเตอร์ใช้เพื่อตรวจสอบประสิทธิภาพการทำงานกับผู้ประมวลผลข้อความ พอร์ต 8082 บน Message Processor จะต้องเปิดสำหรับการเข้าถึงโดยเราเตอร์เท่านั้น เมื่อคุณกำหนดค่า TLS/SSL ระหว่างเราเตอร์และผู้ประมวลผลข้อมูลข้อความ หากคุณไม่กำหนดค่า TLS/SSL ระหว่างเราเตอร์และเครื่องมือประมวลผลข้อความ การกำหนดค่าเริ่มต้น พอร์ต 8082 จะยังคงต้องเปิดบนตัวประมวลผลข้อความเพื่อจัดการคอมโพเนนต์ แต่เราเตอร์ไม่จำเป็นต้องมีการเข้าถึง |
|
8443 | เมื่อเปิดใช้ TLS ระหว่างเราเตอร์และผู้ประมวลผลข้อมูลข้อความ คุณต้องเปิดพอร์ต 8443 บนตัวประมวลผลข้อความเพื่อเข้าถึงโดยเราเตอร์ | |
8998 | พอร์ตตัวประมวลผลข้อความสำหรับการสื่อสารจากเราเตอร์ | |
Postgres | 22 | หากกำหนดค่าโหนด Postgres 2 รายการเพื่อใช้การจำลองสแตนด์บายหลัก คุณต้องเปิดพอร์ต 22 ในแต่ละโหนดเพื่อเข้าถึง SSH |
1,103 | พอร์ต JMX | |
4530 | สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ | |
5432 | ใช้สำหรับการสื่อสารจากเซิร์ฟเวอร์ Qpid/Management Server ไปยัง Postgres | |
8084 | พอร์ตการจัดการเริ่มต้นในเซิร์ฟเวอร์ Postgres ต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ | |
Qpid | 1,102 | พอร์ต JMX |
4529 | สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ | |
5672 |
และใช้สำหรับการสื่อสารระหว่างเซิร์ฟเวอร์ Qpid และคอมโพเนนต์โบรกเกอร์ในโหนดเดียวกันด้วย ในโทโพโลยีที่มีโหนด Qpid หลายโหนด เซิร์ฟเวอร์ต้องเชื่อมต่อกับโบรกเกอร์ทั้งหมดในพอร์ต 5672 ได้ |
|
8083 | พอร์ตการจัดการเริ่มต้นในเซิร์ฟเวอร์ Qpid และต้องเปิดบนคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ | |
เราเตอร์ | 4527 | สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ
เราเตอร์ต้องเปิดพอร์ต 4527 เป็นพอร์ตการจัดการ หากคุณมีเราเตอร์หลายตัว เราเตอร์ทุกตัวต้องเข้าถึงซึ่งกันและกันผ่านพอร์ต 4527 ได้ (ระบุด้วยลูกศรลูปในแผนภาพด้านบนสำหรับพอร์ต 4527 บนเราเตอร์) แม้จะไม่จำเป็น แต่คุณเปิดพอร์ต 4527 บนเราเตอร์เพื่อเข้าถึงโดย Message Processor ใดก็ได้ มิฉะนั้น คุณอาจเห็นข้อความแสดงข้อผิดพลาดในไฟล์บันทึกตัวประมวลผลข้อความ |
8081 | พอร์ตการจัดการเริ่มต้นสำหรับเราเตอร์ และต้องเปิดบนคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ | |
15,999 |
พอร์ตการตรวจสอบประสิทธิภาพการทำงาน ตัวจัดสรรภาระงานใช้พอร์ตนี้เพื่อระบุว่าเราเตอร์พร้อมใช้งานหรือไม่ หากต้องการดูสถานะของเราเตอร์ ตัวจัดสรรภาระงานจะส่งคำขอไปยังพอร์ต 15999 บนเราเตอร์ดังนี้ curl -v http://routerIP:15999/v1/servers/self/reachable หากเราเตอร์เข้าถึงได้ คำขอจะแสดงผล HTTP 200 |
|
59001 | พอร์ตที่ใช้ทดสอบการติดตั้ง Edge โดยยูทิลิตี apigee-validate
ยูทิลิตีนี้ต้องมีสิทธิ์เข้าถึงพอร์ต 59001 บนเราเตอร์ โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับพอร์ต 59001 ที่ทดสอบการติดตั้ง |
|
SmartDocs | 59002 | พอร์ตบนเราเตอร์ Edge ที่ส่งคำขอหน้า SmartDOCUMENT |
ZooKeeper | 2181 | ใช้โดยองค์ประกอบอื่นๆ เช่น เซิร์ฟเวอร์การจัดการ เราเตอร์ ผู้ประมวลผลข้อความ เป็นต้น |
2888, 3888 | ใช้ภายในโดยการสื่อสารของคลัสเตอร์ ZooKeeper สำหรับ ZooKeeper (หรือที่เรียกว่าชุด ZooKeeper) |
ตารางถัดไปจะแสดงพอร์ตเดียวกันที่แสดงเป็นตัวเลข โดยมีคอมโพเนนต์ต้นทางและปลายทางดังนี้
หมายเลขพอร์ต | วัตถุประสงค์ | คอมโพเนนต์แหล่งที่มา | คอมโพเนนต์ปลายทาง |
---|---|---|---|
virtual_host_port | HTTP รวมถึงพอร์ตอื่นๆ ที่คุณใช้สำหรับการรับส่งข้อมูลการเรียก API ของโฮสต์เสมือน พอร์ต 80 และ 443 เป็นพอร์ตที่ใช้กันโดยทั่วไปมากที่สุด Message Router อาจสิ้นสุดการเชื่อมต่อ TLS/SSL ได้ | ไคลเอ็นต์ภายนอก (หรือตัวจัดสรรภาระงาน) | Listener บนเราเตอร์ข้อความ |
1099 ถึง 1103 | การจัดการ JMX | ไคลเอ็นต์ JMX | Management Server (1099) Message Processor (1101) Qpid Server (1102) Postgres Server (1103) |
2181 | การสื่อสารกับลูกค้า Zookeeper | เซิร์ฟเวอร์การจัดการ เราเตอร์ ตัวประมวลผลข้อความ เซิร์ฟเวอร์ Qpid เซิร์ฟเวอร์ Postgres |
ผู้ดูแลสวนสัตว์ |
2888 และ 3888 | การจัดการอินเตอร์โหนดของผู้ดูแลสวนสัตว์ | ผู้ดูแลสวนสัตว์ | ผู้ดูแลสวนสัตว์ |
4526 | พอร์ตการจัดการ RPC | เซิร์ฟเวอร์การจัดการ | เซิร์ฟเวอร์การจัดการ |
4527 | พอร์ตการจัดการ RPC สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ และสำหรับการสื่อสารระหว่างเราเตอร์ | เราเตอร์ เซิร์ฟเวอร์การจัดการ |
เราเตอร์ |
4528 | สำหรับการเรียกแคชแบบกระจายระหว่างตัวประมวลผลข้อความและสำหรับการสื่อสารจากเราเตอร์ | ตัวประมวลผลข้อความ เราเตอร์ เซิร์ฟเวอร์การจัดการ |
Message Processor |
4529 | พอร์ตการจัดการ RPC สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ | เซิร์ฟเวอร์การจัดการ | เซิร์ฟเวอร์ Qpid |
4530 | พอร์ตการจัดการ RPC สำหรับแคชแบบกระจายและการเรียกใช้การจัดการ | เซิร์ฟเวอร์การจัดการ | เซิร์ฟเวอร์ Postgres |
5432 | ไคลเอ็นต์ Postgres | เซิร์ฟเวอร์ Qpid | Postgres |
5636 | การสร้างรายได้ | คอมโพเนนต์ JMS ภายนอก | เซิร์ฟเวอร์การจัดการ |
5672 |
และใช้สำหรับการสื่อสารระหว่างเซิร์ฟเวอร์ Qpid และคอมโพเนนต์โบรกเกอร์ในโหนดเดียวกันด้วย ในโทโพโลยีที่มีโหนด Qpid หลายโหนด เซิร์ฟเวอร์ต้องเชื่อมต่อกับโบรกเกอร์ทั้งหมดในพอร์ต 5672 ได้ |
เซิร์ฟเวอร์ Qpid | เซิร์ฟเวอร์ Qpid |
7000 | การสื่อสารระหว่างโหนดของ Cassandra | Cassandra | โหนด Cassandra อื่นๆ |
7199 | การจัดการ JMX ต้องเปิดเพื่อเข้าถึงโหนด Cassandra โดยเซิร์ฟเวอร์การจัดการ | ไคลเอ็นต์ JMX | Cassandra |
8080 | พอร์ตการจัดการ API | ไคลเอ็นต์ API การจัดการ | เซิร์ฟเวอร์การจัดการ |
8081 ถึง 8084 |
พอร์ต Component API ซึ่งใช้สำหรับการส่งคำขอ API ไปยังคอมโพเนนต์แต่ละรายการโดยตรง คอมโพเนนต์แต่ละรายการจะเปิดพอร์ตที่ต่างกัน พอร์ตที่ใช้จะขึ้นอยู่กับการกำหนดค่า แต่ต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
ไคลเอ็นต์ API การจัดการ | เราเตอร์ (8081) Message Processor (8082) Qpid Server (8083) Postgres Server (8084) |
8443 | การสื่อสารระหว่างเราเตอร์และผู้ประมวลผลข้อมูลข้อความเมื่อเปิดใช้งาน TLS | เราเตอร์ | Message Processor |
8998 | การสื่อสารระหว่างเราเตอร์และผู้ประมวลผลข้อความ | เราเตอร์ | Message Processor |
9000 | พอร์ต UI การจัดการ Edge เริ่มต้น | เบราว์เซอร์ | เซิร์ฟเวอร์ UI การจัดการ |
9042 | การขนส่งดั้งเดิมสำหรับ CQL | เราเตอร์ ตัวประมวลผลข้อความ เซิร์ฟเวอร์การจัดการ |
Cassandra |
9099 | การตรวจสอบสิทธิ์ IdP ภายนอก | IDP, เบราว์เซอร์ และเซิร์ฟเวอร์การจัดการ | SSO ของ Apigee |
9160 | ไคลเอ็นต์มือสองของ Cassandra | เราเตอร์ ตัวประมวลผลข้อความ เซิร์ฟเวอร์การจัดการ |
Cassandra |
10389 | พอร์ต LDAP | เซิร์ฟเวอร์การจัดการ | OpenLDAP |
15999 | พอร์ตการตรวจสอบประสิทธิภาพการทำงาน ตัวจัดสรรภาระงานใช้พอร์ตนี้เพื่อระบุว่าเราเตอร์พร้อมใช้งานหรือไม่ | ตัวจัดสรรภาระงาน | เราเตอร์ |
59001 | พอร์ตที่ยูทิลิตี apigee-validate ใช้เพื่อทดสอบการติดตั้ง Edge |
apigee-validate | เราเตอร์ |
59002 | พอร์ตเราเตอร์ที่ส่งคำขอหน้า SmartDocument | SmartDocs | เราเตอร์ |
ตัวประมวลผลข้อความจะเปิดพูลการเชื่อมต่อเฉพาะไว้ให้ Cassandra ซึ่งกำหนดค่าให้ไม่มีระยะหมดเวลา ไฟร์วอลล์อาจหมดเวลาการเชื่อมต่อเมื่อมีไฟร์วอลล์ระหว่าง Message Processor และเซิร์ฟเวอร์ Cassandra อย่างไรก็ตาม ตัวประมวลผลข้อความไม่ได้ออกแบบมาเพื่อสร้างการเชื่อมต่อกับ Cassandra อีกครั้ง
ในการป้องกันสถานการณ์นี้ Apigee แนะนำให้เซิร์ฟเวอร์ Cassandra, ตัวประมวลผลข้อความ และเราเตอร์อยู่ในซับเน็ตเดียวกัน เพื่อให้ไฟร์วอลล์ไม่เกี่ยวข้องกับการติดตั้งใช้งานคอมโพเนนต์เหล่านี้
หากไฟร์วอลล์อยู่ระหว่างเราเตอร์กับตัวประมวลผลข้อความ และตั้งระยะหมดเวลา TCP ที่ไม่ได้ใช้งาน คำแนะนำของเราคือ
- ตั้งค่า
net.ipv4.tcp_keepalive_time = 1800
ในการตั้งค่า sysctl ใน Linux OS ซึ่ง 1800 ควรต่ำกว่าระยะหมดเวลา tcp สำหรับไฟร์วอลล์ การตั้งค่านี้ควรทำให้การเชื่อมต่ออยู่ในสถานะที่มีอยู่แล้ว เพื่อให้ไฟร์วอลล์ไม่ตัดการเชื่อมต่อการเชื่อมต่อ - ในตัวประมวลผลข้อความทั้งหมด ให้แก้ไข
/opt/apigee/customer/application/message-processor.properties
เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ ให้สร้างขึ้นมาconf_system_cassandra.maxconnecttimeinmillis=-1
- รีสตาร์ทโปรแกรมประมวลผลข้อความโดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- บนเราเตอร์ทั้งหมด ให้แก้ไข
/opt/apigee/customer/application/router.properties
เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ ให้สร้างขึ้นมาconf_system_cassandra.maxconnecttimeinmillis=-1
- รีสตาร์ทเราเตอร์โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-router restart