ฉันมีคอมพิวเตอร์ขอบอูบุนตูจำนวนมากที่โฮสต์เซิร์ฟเวอร์เว็บ HMI อย่างง่าย หลายคนอยู่เบื้องหลัง IP แบบไดนามิกซึ่งไม่สามารถส่งต่อพอร์ตได้
ดังนั้นในการเข้าถึงพวกเขาแต่ละคนใช้ autossh เพื่อสร้างอุโมงค์ย้อนกลับในพร็อกซีเซิร์ฟเวอร์คลาวด์ส่วนกลาง ฉันสามารถเข้าถึงแต่ละคนด้วย https://proxy.mydomain.com:6001, 6002 ฯลฯ ใช้งานได้
ตอนนี้ฉันต้องการใช้ NGINX เพื่อที่เราจะได้ไม่ต้องจำหมายเลขพอร์ต ดังนั้น สิ่งอำนวยความสะดวกแต่ละแห่งจะมีโดเมนย่อยของตัวเอง: https://site1.mydomain.com, site2 ฯลฯ โดเมนย่อยทั้งหมดจะชี้ไปที่พร็อกซีเซิร์ฟเวอร์ของฉัน จากนั้น NGINX ควรดูที่โดเมนย่อยและการรับส่งข้อมูล https พร็อกซีไปยังพอร์ตช่องสัญญาณย้อนกลับที่เหมาะสม
การกำหนดค่า NGINX แสดงอยู่ด้านล่าง
ปัญหาของฉันในตอนนี้คือ NGINX ต้องการให้ฉันกำหนดใบรับรอง SSL อย่างไรก็ตาม ฉันต้องการใช้ใบรับรองที่ติดตั้งไว้แล้วในคอมพิวเตอร์ Edge แต่ละเครื่อง
แล้วฉันจะส่งต่อใบรับรองเหล่านั้นผ่านพร็อกซี NGINX ไปยังไคลเอ็นต์ได้อย่างไร
หากไม่สามารถทำได้ วิธีใดที่ดีที่สุดในการกำหนดใบรับรองหนึ่งใบหรือแยกกันบนพร็อกซีเซิร์ฟเวอร์ที่สามารถใช้กับโดเมนย่อยทั้งหมด
เซิร์ฟเวอร์ {
ฟัง 443 ssl;
server_name site1.mydomain.com;
ที่ตั้ง / {
proxy_set_header โฮสต์ $host;
proxy_pass https://127.0.0.1:6001;
เปิด proxy_ssl_server_name;
ปิด proxy_redirect;
}
}
เซิร์ฟเวอร์ {
ฟัง 443 ssl;
server_name site2.mydomain.com;
ที่ตั้ง / {
proxy_set_header โฮสต์ $host;
proxy_pass https://127.0.0.1:6002;
เปิด proxy_ssl_server_name;
ปิด proxy_redirect;
}
}
อัปเดต
สำหรับคนที่อยากรู้อยากเห็น ฉันสามารถใช้โปรเจ็กต์ "SNIProxy" แทน NGINX และแก้ไขปัญหานี้ได้ ใบรับรอง HTTPS ผ่านโดยไม่มีปัญหา