Skip to main content

Askboon

Self-hosted Tunnelling Services

โพสต์นี้เราจะมาทำ Tunnelling Services ไว้ใช้เอง ใครยังไม่เข้าใจว่า Tunnelling Services คืออะไรสามารถกลับไปอ่าน โพสต์นี้ ได้ครับ

สมัคร VPS

เริ่มต้นเราต้องสมัคร VPS ไว้สักที่นึงก่อนครับ เพื่อที่เราจะได้หมายเลขไอพีไว้สำหรับทำการ forward port ได้ โดยเราสามารถสมัครใช้บริการ vps ที่ LowEndSpirit ได้ครับ ราคา $4 ต่อปี!

การตั้งค่าที่ VPS

ทำ ssh เข้าไปที่ VPS เพื่อเข้าไปตั้งค่า GatewayPorts แล้วก็ exit ออกมาได้เลย

ssh [email protected] -p yyyyy
echo "GatewayPorts yes" >> /etc/ssh/sshd_config
exit

จบแล้วครับ สำหรับฝั่ง VPS!

การเรียกใช้จากฝั่ง Client

สมมุติว่าในเครื่องของเราพัฒนาระบบด้วย Python/Flask ซึ่งสามารถทดสอบได้ที่ address -> localhost:5000 ก็ให้เรา run development server รอไว้ จากนั้นให้ทำการ ssh ไปยัง VPS ด้วยคำสั่งดังนี้

ssh -R zzzzz:localhost:5000 [email protected] -p yyyyy

ซึ่งจะเป็นการกำหนดให้ traffic ที่วิ่งไปมาระหว่าง xxx.xx.xx.xxx port zzzzz สามารถวิ่งต่อมายังเครื่องคอมพิวเตอร์ของเราที่ localhost port 5000 ได้ เช่น เราสามารถเปิดเว็บไปที่ url ด้านล่างนี้เพื่อให้คนในอินเทอร์เน็ตเข้าถึง localhost port 5000 ของเราได้

http://xxx.xx.xx.xxx:zzzzz

ข้อควรจำ

  • เราต้องใช้คำสั่ง ssh ไปยัง VPS ของเราก่อนทุกครั้งที่จะให้คนเข้าถึง localhost ของเรา
  • ต้องเปิด ssh บน VPS ทิ้งไว้ หาก exit ออกมาจาก VPS แล้ว tunnelling อันนี้ก็จะถูกปิดไป

Cr: https://medium.com/@gabriel.bentara/ngrok-you-might-not-need-it-de4e3e34a55d