โดยค่าเริ่มต้น คุณจะเข้าถึง Edge UI ผ่าน HTTP โดยใช้ที่อยู่ IP ของโหนด Management Server และพอร์ต 9000 เช่น
http://ms_IP:9000
นอกจากนี้ คุณอาจกำหนดค่าการเข้าถึง TLS ให้กับ Edge UI เพื่อให้เข้าถึงได้ในแบบฟอร์ม ดังนี้
https://ms_IP:9443
ในตัวอย่างนี้ คุณได้กำหนดค่าการเข้าถึง TLS เพื่อใช้พอร์ต 9443 แต่ Edge ไม่จำเป็นต้องใช้หมายเลขพอร์ตดังกล่าว คุณกำหนดค่าเซิร์ฟเวอร์การจัดการให้ใช้ค่าพอร์ตอื่นๆ ได้ ข้อกำหนดเพียงอย่างเดียวคือไฟร์วอลล์อนุญาตให้มีการรับส่งข้อมูลผ่านพอร์ตที่ระบุ
ตรวจสอบว่าพอร์ต TLS เปิดอยู่
กระบวนการในส่วนนี้จะกำหนด TLS ให้ใช้พอร์ต 9443 ในเซิร์ฟเวอร์การจัดการ ไม่ว่าคุณจะใช้พอร์ตใด คุณต้องตรวจสอบว่าพอร์ตนั้นเปิดอยู่ในเซิร์ฟเวอร์การจัดการ เช่น ใช้คำสั่งต่อไปนี้เพื่อเปิด
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT --verbose
กำหนดค่า TLS
ใช้ขั้นตอนต่อไปนี้เพื่อกำหนดค่าการเข้าถึง TLS สำหรับ UI การจัดการ
- สร้างไฟล์ JKS คีย์สโตร์ที่มีการรับรอง TLS และคีย์ส่วนตัว แล้วคัดลอกไปยังโหนดเซิร์ฟเวอร์การจัดการ โปรดดูข้อมูลเพิ่มเติมที่การกำหนดค่า TLS/SSL สำหรับ Edge ภายในองค์กร
- เรียกใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า TLS
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- ป้อนหมายเลขพอร์ต HTTPS เช่น 9443
- ระบุว่าคุณต้องการปิดใช้การเข้าถึง UI การจัดการผ่าน HTTP หรือไม่ โดยค่าเริ่มต้น UI การจัดการจะเข้าถึงได้ผ่าน HTTP ในพอร์ต 9000
- ป้อนอัลกอริทึมคีย์สโตร์ ค่าเริ่มต้นคือ JKS
- ป้อนเส้นทางสัมบูรณ์ไปยังไฟล์ JKS คีย์สโตร์
สคริปต์นี้จะคัดลอกไฟล์ไปยังไดเรกทอรี
/opt/apigee/customer/conf
บนโหนด Management Server และเปลี่ยนการเป็นเจ้าของไฟล์เป็น "apigee" - ป้อนรหัสผ่านคีย์สโตร์แบบข้อความธรรมดา
- จากนั้นสคริปต์จะรีสตาร์ท UI การจัดการ Edge หลังจากรีสตาร์ท UI การจัดการจะรองรับการเข้าถึงผ่าน TLS
คุณจะเห็นการตั้งค่าเหล่านี้ได้ใน
/opt/apigee/etc/edge-ui.d/SSL.sh
การใช้ไฟล์การกำหนดค่าเพื่อกำหนดค่า TLS
นอกจากการดำเนินการข้างต้นแล้ว คุณสามารถส่งไฟล์การกำหนดค่าไปยังคำสั่งในขั้นตอนที่ 2 ของกระบวนการได้ คุณจะต้องใช้วิธีนี้หากต้องการตั้งค่าพร็อพเพอร์ตี้ TLS ที่ไม่บังคับ
หากต้องการใช้ไฟล์การกำหนดค่า ให้สร้างไฟล์ใหม่และเพิ่มพร็อพเพอร์ตี้ต่อไปนี้
HTTPSPORT=9443 DISABLE_HTTP=y KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
บันทึกไฟล์ไว้ในไดเรกทอรีในเครื่องโดยใช้ชื่อที่คุณต้องการ จากนั้นใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า TLS
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
โดยที่ configFile คือเส้นทางแบบเต็มไปยังไฟล์ที่คุณบันทึกไว้
กําหนดค่า Edge UI เมื่อ TLS สิ้นสุดในตัวจัดสรรภาระงาน
หากมีตัวจัดสรรภาระงานที่ส่งต่อคำขอไปยัง Edge UI คุณอาจเลือกสิ้นสุดการเชื่อมต่อ TLS บนตัวจัดสรรภาระงาน จากนั้นให้ตัวจัดสรรภาระงานส่งต่อคำขอไปยัง Edge UI ผ่าน HTTP ระบบรองรับการกำหนดค่านี้ แต่คุณต้องกำหนดค่าตัวจัดสรรภาระงานและ Edge UI ให้สอดคล้องกัน
จำเป็นต้องมีการกำหนดค่าเพิ่มเติมเมื่อ Edge UI ส่งอีเมลเพื่อตั้งรหัสผ่านให้ผู้ใช้เมื่อสร้างหรือเมื่อผู้ใช้ขอรีเซ็ตรหัสผ่านที่สูญหาย อีเมลนี้มี URL ที่ผู้ใช้เลือกที่จะตั้งค่าหรือรีเซ็ตรหัสผ่าน โดยค่าเริ่มต้น หากไม่ได้กำหนดค่า UI ของ Edge ให้ใช้ TLS ไว้ URL ในอีเมลที่สร้างขึ้นจะใช้โปรโตคอล HTTP ไม่ใช่ HTTPS คุณต้องกำหนดค่าตัวจัดสรรภาระงานและ Edge UI เพื่อสร้างอีเมลที่ใช้ HTTPS
หากต้องการกำหนดค่าตัวจัดสรรภาระงาน ให้ตั้งค่าส่วนหัวต่อไปนี้สำหรับคำขอที่ส่งต่อไปยัง Edge UI
X-Forwarded-Proto: https
วิธีกำหนดค่า Edge UI
- เปิดไฟล์
/opt/apigee/customer/application/ui.properties
ในตัวแก้ไข หากไม่มีไฟล์ ให้สร้างขึ้นมาโดยทำดังนี้vi /opt/apigee/customer/application/ui.properties
- ตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ใน
ui.properties
conf/application.conf+trustxforwarded=true
- บันทึกการเปลี่ยนแปลงลงใน
ui.properties
- รีสตาร์ท UI ของ Edge โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
การตั้งค่าคุณสมบัติ TLS ที่ไม่บังคับ
Edge UI รองรับคุณสมบัติการกำหนดค่า TLS ที่ไม่บังคับ ซึ่งคุณตั้งค่าดังต่อไปนี้ได้
- โปรโตคอล TLS เริ่มต้น
- รายการโปรโตคอล TLS ที่รองรับ
- อัลกอริทึม TLS ที่รองรับ
- การเข้ารหัส TLS ที่รองรับ
พารามิเตอร์ที่ไม่บังคับเหล่านี้จะใช้ได้เฉพาะเมื่อคุณตั้งค่าพร็อพเพอร์ตี้การกำหนดค่าต่อไปนี้ในไฟล์การกำหนดค่า ตามที่อธิบายไว้ใน การใช้ไฟล์การกำหนดค่าเพื่อกำหนดค่า TLS
TLS_CONFIGURE=y
ตารางต่อไปนี้จะอธิบายพร็อพเพอร์ตี้เหล่านี้
พร็อพเพอร์ตี้ | คำอธิบาย |
---|---|
TLS_PROTOCOL
|
กำหนดโปรโตคอล TLS เริ่มต้นสำหรับ Edge UI ค่าเริ่มต้นคือ TLS 1.2 ค่าที่ใช้ได้คือ TLSv1.2, TLSv1.1, TLSv1 |
TLS_ENABLED_PROTOCOL
|
กำหนดรายการโปรโตคอลที่เปิดใช้เป็นอาร์เรย์ที่คั่นด้วยคอมมา เช่น TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] โปรดสังเกตว่าคุณต้องหลีกเลี่ยงอักขระ "
โปรโตคอลทั้งหมดเปิดใช้อยู่โดยค่าเริ่มต้น |
TLS_DISABLED_ALGO
|
กำหนดชุดการเข้ารหัสที่ปิดใช้ และยังใช้เพื่อป้องกันไม่ให้มีการใช้คีย์ขนาดเล็กสำหรับแฮนด์เชค TLS ได้อีกด้วย ไม่มีค่าเริ่มต้น ค่าที่ส่งไปยัง
TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS
|
กำหนดรายการการเข้ารหัส TLS ที่ใช้ได้เป็นอาร์เรย์ที่คั่นด้วยคอมมา เช่น TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] โปรดสังเกตว่าคุณต้องหลีกเลี่ยงอักขระ "
รายการเริ่มต้นของการเข้ารหัสที่เปิดใช้มีดังนี้ "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" ดูรายการการเข้ารหัสที่ใช้ได้ที่นี่ |
การปิดใช้โปรโตคอล TLS
หากต้องการปิดใช้โปรโตคอล TLS คุณต้องแก้ไขไฟล์การกำหนดค่าตามที่อธิบายไว้ในการใช้ไฟล์การกำหนดค่าเพื่อกำหนดค่า TLS ดังนี้
- เปิดไฟล์การกำหนดค่าในตัวแก้ไข
- หากต้องการปิดใช้โปรโตคอล TLS รายการเดียว เช่น TLSv1.0 ให้เพิ่มค่าต่อไปนี้ลงในไฟล์การกำหนดค่า
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
หากต้องการปิดใช้โปรโตคอลหลายรายการ เช่น TLSv1.0 และ TLSv1.1 ให้เพิ่มค่าต่อไปนี้ลงในไฟล์การกำหนดค่า
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- บันทึกการเปลี่ยนแปลงลงในไฟล์การกำหนดค่า
- เรียกใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า TLS
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
โดยที่ configFile คือเส้นทางแบบเต็มไปยังไฟล์การกำหนดค่า
- รีสตาร์ท UI ของ Edge โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
ใช้คุกกี้ที่ปลอดภัย
Apigee Edge สำหรับ Private Cloud รองรับการเพิ่มแฟล็ก secure
ในส่วนหัว Set-Cookie
สำหรับการตอบกลับจาก Edge UI หากมีแฟล็กนี้ คุกกี้จะส่งได้ผ่านช่องที่เปิดใช้ TLS เท่านั้น หากไม่มี ระบบอาจส่งคุกกี้ผ่านทุกแชแนล ไม่ว่าจะปลอดภัยหรือไม่ก็ตาม
คุกกี้ที่ไม่มีแฟล็ก secure
อาจอนุญาตให้ผู้โจมตีจับภาพและนำคุกกี้มาใช้ซ้ำได้ หรืออาจลักลอบใช้เซสชันที่ใช้งานอยู่ ดังนั้นแนวทางปฏิบัติแนะนำคือการเปิดใช้การตั้งค่านี้
วิธีตั้งค่าแฟล็ก secure
สำหรับคุกกี้ Edge UI
- เปิดไฟล์ต่อไปนี้ในเครื่องมือแก้ไขข้อความ
/opt/apigee/customer/application/ui.properties
หากไม่มีไฟล์ ให้สร้างขึ้นมา
- ตั้งค่าพร็อพเพอร์ตี้
conf_application_session.secure
เป็นtrue
ในไฟล์ui.properties
ตามตัวอย่างต่อไปนี้conf_application_session.secure=true
- บันทึกการเปลี่ยนแปลง
- รีสตาร์ท Edge UI โดยใช้ยูทิลิตี
apigee-serice
ตามตัวอย่างต่อไปนี้/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
หากต้องการยืนยันว่าการเปลี่ยนแปลงใช้งานได้ ให้ตรวจสอบส่วนหัวการตอบกลับจาก Edge UI โดยใช้ยูทิลิตีเช่น curl
ตัวอย่างเช่น
curl -i -v https://edge_UI_URL
ส่วนหัวควรมีบรรทัดที่มีลักษณะดังนี้
Set-Cookie: secure; ...
ปิดใช้ TLS ใน Edge UI
หากต้องการปิด TLS ใน Edge UI ให้ใช้คำสั่งต่อไปนี้
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl