ฉันมีอุปกรณ์ฝังตัวที่ฉันสามารถตั้งโปรแกรมผ่าน Ethernet IP เมื่อเชื่อมต่อกับเราเตอร์เดียวกันกับพีซีดังนี้:
เป็นไปได้หรือไม่ที่จะส่งทราฟฟิกทั้งหมดผ่านอินเทอร์เน็ตและยังสามารถตั้งโปรแกรมได้ หากต้องการทำให้ชัดเจนขึ้นมีลักษณะดังนี้:
ฉันมีอุปกรณ์ฝังตัวที่ฉันสามารถตั้งโปรแกรมผ่าน Ethernet IP เมื่อเชื่อมต่อกับเราเตอร์เดียวกันกับพีซีดังนี้:
เป็นไปได้หรือไม่ที่จะส่งทราฟฟิกทั้งหมดผ่านอินเทอร์เน็ตและยังสามารถตั้งโปรแกรมได้ หากต้องการทำให้ชัดเจนขึ้นมีลักษณะดังนี้:
คำตอบ:
สิ่งที่คุณกำลังมองหาที่เรียกว่าการส่งต่อพอร์ต[ 1 ] [ 2 ]
ตัวอย่างเช่นให้เราสมมติสิ่งต่อไปนี้:
อุปกรณ์ที่ตั้งโปรแกรมได้ของคุณทำงานบนพอร์ต22
และมี IP192.168.1.5
IP สาธารณะของคุณคือ 122.176.11.55
จากนั้นคุณสามารถไปสู่การตั้งค่าเราเตอร์ของคุณและส่งต่อพอร์ต WAN (สำหรับเช่น8022
) 192.168.1.5:22
เพื่อ
ตอนนี้คุณสามารถเข้าถึงอุปกรณ์จากระยะไกลได้จากทุกที่ผ่านทางอินเทอร์เน็ตโดยเข้าถึง122.176.11.55:8022
แทน192.168.1.5:22
IDE ของคุณ
โปรดจำไว้ว่าถ้าคุณมี IP แบบคง IP สาธารณะของคุณสามารถเปลี่ยนแปลงได้ตลอดเวลาซึ่งในกรณีนี้คุณควรตรวจสอบการให้บริการแบบไดนามิกของ DNS
หมายเหตุ : หากอุปกรณ์ของคุณมีวิธีการรับรองความถูกต้องบางคนที่มีเจตนาประสงค์ร้ายจะพบการเข้าถึงผ่านทางเว็บที่เปิดอยู่ ดูด้านล่างสำหรับทางเลือกที่ปลอดภัย
ออกจากเครื่องคอมพิวเตอร์ (หรือปี่ราสเบอร์รี่หรือคล้ายกัน) ที่เชื่อมต่อกับเครือข่ายของคุณและการเข้าถึงที่ระยะไกลแทนผ่านที่ปลอดภัยบางอย่างเช่น SSH แล้วโปรแกรมอุปกรณ์ของคุณผ่านมันผ่าน LAN
สิ่งนี้ยังมีข้อได้เปรียบเพิ่มเติมในการทำงานแม้ว่าอุปกรณ์ของคุณจะไม่ใช้ TCP หรือ UDP :)
น่าเบื่อนิดหน่อยใช่ แต่ปลอดภัย
คำตอบที่ถูกต้องข้อเดียวคือ "VPN"
เพียงแค่ใช้ IPv6 จะ "ทำงาน" (สมมติว่าเราเตอร์ไม่ได้กำหนดค่าไฟร์วอลล์จากอุปกรณ์และ ISP, อุปกรณ์และแล็ปท็อปรองรับ IPv6 ทั้งหมด) แต่มันเป็นความคิดที่แย่มากสำหรับการส่งต่อพอร์ตด้วยเหตุผลเดียวกัน
นอกเหนือจากการส่งเสริมจากการโฆษณาชวนเชื่อ IPv6 ที่รู้จักกันดีคุณไม่ได้ทำ เคยต้องการใด ๆ ของอุปกรณ์บนระบบ LAN ของคุณเป็นที่ไม่ซ้ำกันสามารถระบุตัวตนหรือเข้าถึงได้แม้จะมาจากอินเทอร์เน็ต ไม่นั่นไม่ใช่สิ่งที่ดี
การส่งต่อพอร์ตจะ "ทำงาน" กับ IPv4 แบบเก่าที่ดี แต่มันทำให้อุปกรณ์นี้เข้าถึงได้ไม่เฉพาะคุณ แต่สำหรับทุกคน ไม่มีใครรู้ดังนั้นจึงไม่มีปัญหาใช่มั้ย
ในหลักการข้างต้นเป็นจริงสำหรับ VPN เช่นกัน แต่ก็ดีมากเท่าที่คุณจะทำได้หากคุณต้องการเข้าถึง สิ่งเดียวที่ปลอดภัยอย่างแท้จริงคือไม่มีการเชื่อมต่ออินเทอร์เน็ตเลยซึ่งไม่ใช่ตัวเลือกที่ใช้งานได้จริงด้วยเหตุผลที่ชัดเจน สิ่งที่ปลอดภัยที่สุดในการ "ไม่ใช้อินเทอร์เน็ต" คือ VPN ตรงหนึ่งพอร์ตบนอุปกรณ์หนึ่งตัว (ขึ้นอยู่กับพอร์ตมากถึงสามพอร์ต) และเปิดเผย VPN
มีเครื่องสแกนพอร์ตอัตโนมัติที่ทำงานตลอด 24 ชั่วโมงทุกวันและทำการสแกนที่อยู่ / พอร์ตแบบสุ่มโดยหวังว่าทุกสิ่งอาจตอบได้ดังนั้นโดยทั่วไปแล้วการมีอุปกรณ์ใด ๆที่จะตอบคำขอภายนอกออนไลน์นั้นไม่เหมาะสม หากอุปกรณ์มีการตั้งโปรแกรมเองอย่างมีความสุขตามสิ่งที่เกิดขึ้นผ่านทางเครือข่ายนั่นเป็นสูตรสำหรับการทำลาย
และไม่มีสิ่งอื่นใดส่งต่อพอร์ตไปยังอินเทอร์เน็ต
VPN ช่วยให้คุณ - แต่ไม่มีใครอื่น - เข้าถึงอุปกรณ์บน LAN ของคุณผ่านอินเทอร์เน็ตเช่นถ้าคุณอยู่บน LAN เดียวกัน (แม้ว่าจะช้าลงเล็กน้อย) มันป้องกันการเข้าถึงที่ไม่ได้รับอนุญาตให้ความลับและความถูกต้องของข้อมูล
เราเตอร์ที่ไม่มีอึทุกคนสนับสนุน VPN อย่างน้อยหนึ่งรสชาติออกจากกล่อง โชคไม่ดีขึ้นอยู่กับรุ่นของเราเตอร์ที่คุณใช้ซึ่งอาจเป็นรสชาติที่ไม่ดีของ VPN หรืออาจมีการจัดทำเอกสารไม่ดีเกี่ยวกับวิธีกำหนดค่าคอมพิวเตอร์ระยะไกล ถึงแม้จะมีความยุ่งยากที่เป็นไปได้ในการหาวิธีกำหนดค่า - ถ้าคุณไม่มีอะไรที่ดีกว่านั่นคือตัวเลือกที่ดีที่สุด!
กล่อง NAS ทั่วไปส่วนใหญ่สนับสนุนวิธีการ VPN สองหรือสามวิธีและทุกบัตรเครดิตขนาด 3 วัตต์ที่มีบัตรเครดิตขนาด 20 วัตต์สามารถเรียกใช้เซิร์ฟเวอร์ VPN ได้โดยไม่มีปัญหา แม้แต่โทรศัพท์มือถือสมัยใหม่หลายรุ่นก็สนับสนุน VPN โดยไม่ต้องติดตั้งซอฟต์แวร์เพิ่มเติมดังนั้นคุณสามารถเข้าถึงเครือข่ายในบ้านของคุณเมื่อคุณใช้อินเทอร์เน็ตบนมือถือของโทรศัพท์ของคุณ (ผ่านฮอตสปอตส่วนตัวหรือแม้กระทั่ง)
ตัวอย่างเช่น L2TP / IPSec อาจไม่ใช่ตัวเลือกที่ยอดเยี่ยมที่สุด แต่ก็ดี 99% และใช้เวลาหนึ่งนาทีในการติดตั้งบน Disk Station ของฉันและบนโทรศัพท์ Samsung ของฉัน อีกนาทีถ้าแล็ปท็อป Windows ของฉันใช้เช่นกัน (เป็นอิสระจากโทรศัพท์) ไม่จำเป็นต้องใช้ซอฟต์แวร์เพิ่มเติม
OpenVPN ใช้เวลาประมาณ 3-5 นาทีในการติดตั้งเพราะคุณจะต้องดาวน์โหลดติดตั้งซอฟต์แวร์ไคลเอนต์บนแล็ปท็อป แต่ในภาพใหญ่ขึ้นการตั้งค่า 5 นาทีนับเป็น "ศูนย์" เมื่อเทียบกับการไม่ปลอดภัยอย่างสมบูรณ์
โฮสต์ VPN ทั้งในอุปกรณ์เราเตอร์ / เกตเวย์รักษาความปลอดภัยหรือกล่องอื่นที่มีพอร์ตส่งต่อไปยังกล่องนั้น เมื่อใดก็ตามที่คุณต้องการทำงานจากระยะไกลให้เชื่อมต่อกับ VPN และคุณจะเห็นอุปกรณ์ฝังตัวราวกับอยู่ในเครือข่ายท้องถิ่น มันอาจจะเป็นความคิดที่ดีที่จะวางอุปกรณ์ฝังตัวในเครือข่ายย่อยที่แยกการช่วยเหลือป้องกันการโจมตีบนเครือข่ายหลักของคุณถ้า VPN หรืออุปกรณ์ฝังตัวที่ถูกบุกรุก
ทำให้ Windows PC ที่ไม่มี IDE ลงใน Linux PC ในการกำหนดค่าความปลอดภัยที่สมเหตุสมผลด้วยการรัน sshd พอร์ตส่งต่อจากเราเตอร์ของคุณไปยังพอร์ต SSH บนเครื่อง Linux ใช้อุโมงค์ SSH เพื่อเชื่อมต่อกับอุปกรณ์ฝังตัว IP จากนั้นเมื่อเขียนโปรแกรมบนเครื่องระยะไกลของคุณด้วย IDE คุณจะเชื่อมต่อกับ localhost แทน LAN IP
การฟังอินเทอร์เน็ตด้วยบริการที่ชุบแข็งอย่าง SSH นั้นมีความปลอดภัยพอสมควร การฟังบนอินเทอร์เน็ตโดยตรงด้วยการพัฒนาอะไรก็ตามเป็นความคิดที่ไม่ดี SSH เป็นผู้รักษาประตู หากคุณตรวจสอบความถูกต้องของรหัสโฮสต์มันจะป้องกัน MITM อย่างแน่นอน มันใช้การเข้ารหัสที่ดี การตั้งค่าทันเนลไม่เกี่ยวข้องกับการเราต์หรือบริดจ์ แต่ดูเหมือนว่าคุณกำลังเชื่อมต่อโดยตรงจากเครื่อง SSHD นี่เป็นวิธีที่ง่ายกว่ามากในการติดตั้งอย่างถูกต้อง
ฉันเพิ่งเจอทางออกที่ดีกว่าสำหรับการเข้าถึงระยะไกลส่วนบุคคลเท่านั้น ก่อนอื่นเรามาพูดถึงขอบเขตของปัญหา มีสามประเด็นที่เข้ามาเล่น: nat, ที่อยู่ ip และความปลอดภัย ตัวอย่างเช่นในกรณีทั่วไปที่คุณต้องการเรียกใช้ ssh หรือเว็บเซิร์ฟเวอร์บนเครือข่ายในบ้านวิธีการดั้งเดิมคือการส่งต่อพอร์ตและไดนามิก DNS และแนวทางปฏิบัติที่ดีที่สุดสำหรับการรักษาความปลอดภัยมาตรฐานอุตสาหกรรม สิ่งนี้มีข้อเสียสำหรับกรณีของคุณเนื่องจากอุปกรณ์ของคุณไม่มีความปลอดภัยมาตรฐาน สิ่งนี้สามารถบรรเทาได้โดยใช้การส่งต่อพอร์ต ssh ซึ่งต่างจากการเปิดอุปกรณ์ของคุณไปยังอินเทอร์เน็ต
อย่างไรก็ตามมีวิธีแก้ปัญหาที่ง่ายกว่าและเชื่อหรือไม่ว่านั่นคือบริการที่ซ่อนเร้น ทอร์เซอร์วิสที่ซ่อนอยู่โดยทั่วไปจะทำหน้าที่เป็นพอร์ตไปข้างหน้า แต่จะจัดการกับการแวะผ่านโดยอัตโนมัติและไม่มีที่อยู่ที่เปลี่ยนแปลงดังนั้นจึงไม่จำเป็นต้องมีไดนามิก DNS มีปัญหาแน่นอนเกี่ยวกับที่อยู่หัวหอมที่จำยาก แต่ถ้าคุณเป็นผู้ใช้คนเดียวคุณสามารถจดมันไว้ในไฟล์โครงการหนึ่งของคุณได้ ฉันอยากจะแนะนำยังคงยึดนี้กับเซิร์ฟเวอร์ ssh เพื่อให้การตรวจสอบ แต่คุณอาจตัดสินใจว่าที่อยู่หัวหอมยาวพอ ทอร์เซอร์วิสที่ซ่อนอยู่ยังให้การเข้ารหัสของลิงก์ทั้งหมดยกเว้นการกระโดดครั้งสุดท้ายดังนั้นวิธีเดียวที่จะทำให้ดีขึ้นคือการเข้ารหัสตั้งแต่ต้นจนจบ แต่ขึ้นอยู่กับอุปกรณ์ที่คุณกำลังตั้งโปรแกรม