local-tls-proxy: ทำให้ทุกพอร์ตเป็น https
(github.com/jc-lab)เคยต้องทดสอบ Secure Context ในเบราว์เซอร์อยู่ แต่แม้จะมีโปรแกรมแนวคล้ายกันอยู่แล้ว การตั้งค่าก็ค่อนข้างยุ่งยากนิดหน่อย..
ก็เลยทำ local-tls-proxy ขึ้นมาให้สามารถพร็อกซีได้ทุกพอร์ต
สามารถสร้างใบรับรอง CA อัตโนมัติและติดตั้งได้ด้วยอาร์กิวเมนต์ -install และรองรับทั้ง Linux และ Windows
จะพร็อกซีทุกคำขอไปยัง https://{포트}.{IP}.sslip.io ไปที่ http://{IP}:{포트}
วิธีใช้งาน:
- ติดตั้งใบรับรอง CA
- สำหรับ Linux: $ sudo ./local-tls-proxy -install
- สำหรับ Windows (โหมดผู้ดูแลระบบ): > local-tls-proxy.exe -install
-
รันพร็อกซี
$ ./local-tls-proxy -port 5443 -
จากนั้นเมื่อเข้า
https://{포트}.{IP}.sslip.io:5443/ก็จะถูกพร็อกซีไปที่http://{IP}:{포트}/
ตัวอย่างเช่นhttps://5173.127-0-0-1.sslip.io:5443/จะเชื่อมต่อไปยังhttp://127.0.0.1:5173/
5 ความคิดเห็น
หากต้องการใช้งานพร็อกซีได้อย่างถูกต้องด้วย
{port}.{ip}ผลลัพธ์ DNS ก็ควรตอบกลับเป็น localhost โดยไม่เกี่ยวกับ IP ที่ป้อนเข้าไป แต่ตอนนี้กลับตอบกลับเป็น IP ที่ป้อนเข้าไปอยู่ครับ (ในกรณีนี้แน่นอนว่าทั้งการจัดการ https และการฟอร์เวิร์ดไปยังพอร์ตนั้นก็ไม่สามารถทำงานได้)ดูจากโค้ดแล้ว การออกใบรับรองก็สร้างเป็น
*.127-0-0-1.sslip.ioอยู่ด้วย,,, ถ้าอย่างนั้นผมคิดว่าน่าจะตัด ip ออกจากกฎรูปแบบที่อยู่ออกไปได้ไหมเยี่ยมมาก
มีอย่าง
ngrokหรือcloudflaredอยู่ก็จริง แต่ถ้าจะทดสอบแบบง่าย ๆ โดยไม่ต้องตั้งค่าอะไรเพิ่ม ก็ดูน่าสนใจมากเลย!มีวิธีลบใบรับรอง CA ไหม?
อ๋อ ผมทำไว้แบบง่าย ๆ เลย ตอนนี้ยังไม่มีฟังก์ชันลบครับ
ในกรณีของ Windows สามารถเข้าไปที่ mmc -> Certificates แล้วลบได้ครับ