Saya memiliki perangkat tertanam yang dapat saya program melalui Ethernet IP ketika terhubung pada router yang sama dengan PC sebagai berikut:
Apakah mungkin untuk mengirim seluruh lalu lintas melalui Internet dan masih dapat memprogramnya? Untuk membuatnya sedikit lebih jelas, sesuatu seperti:
networking
remote-access
Mesin
sumber
sumber
Jawaban:
Metode sederhana (dan tidak aman)
Apa yang Anda cari disebut penerusan port [ 1 ] [ 2 ] .
Misalnya, mari kita asumsikan yang berikut:
Perangkat Anda yang dapat diprogram berfungsi pada port
22
dan memiliki IP192.168.1.5
IP publik Anda adalah
122.176.11.55
Kemudian Anda dapat masuk ke pengaturan router Anda dan meneruskan port WAN (misalnya,
8022
) ke192.168.1.5:22
.Sekarang, Anda dapat mengakses perangkat dari jarak jauh dari mana saja melalui internet dengan mengakses
122.176.11.55:8022
alih-alih192.168.1.5:22
dalam IDE Anda.Ingatlah bahwa kecuali Anda memiliki IP statis, IP publik Anda dapat berubah kapan saja, dalam hal ini Anda harus memeriksa layanan DNS dinamis .
CATATAN : kecuali jika perangkat Anda memiliki beberapa metode otentikasi, seseorang dengan niat jahat hampir pasti akan menemukan aksesnya di web terbuka. Lihat di bawah untuk alternatif yang aman.
Metode yang aman (dan sejujurnya tidak jauh lebih rumit)
Biarkan PC (atau raspberry pi, atau yang serupa) terhubung ke jaringan Anda, dan akses itu dari jarak jauh melalui sesuatu yang aman seperti SSH, dan kemudian program perangkat Anda melaluinya melalui LAN.
Ini juga memiliki keuntungan tambahan untuk bekerja walaupun perangkat Anda tidak menggunakan TCP atau UDP :)
Agak membosankan, ya. Tapi aman.
sumber
Satu-satunya jawaban yang benar adalah "VPN".
Cukup menggunakan IPv6 akan "bekerja" (dengan asumsi router tidak dikonfigurasikan untuk firewall dari perangkat, dan semua ISP, perangkat, dan laptop mendukung IPv6), tetapi itu adalah ide yang mengerikan karena alasan yang sama port forwarding.
Selain dipromosikan oleh propaganda IPv6 terkenal, Anda benar-benar tidak pernah ingin salah satu perangkat pada LAN Anda menjadi diidentifikasi secara unik atau bahkan dapat diakses dari internet. Tidak, itu bukan hal yang baik.
Port forwarding akan "bekerja" dengan IPv4 lama yang baik, tetapi itu membuat perangkat diakses tidak hanya untuk Anda tetapi untuk semua orang. Tidak ada yang tahu, jadi itu tidak masalah, kan?
Nah, ada pasukan pemindai port otomatis yang menjalankan 24/7 dan memindai alamat / port acak dengan harapan apa pun, di mana saja mungkin menjawab, jadi umumnya memiliki perangkat apa pun yang akan menjawab permintaan eksternal online tidak optimal. Jika sebuah perangkat dengan senang hati akan diprogram sesuai dengan apa yang masuk melalui jaringan, itu adalah resep untuk desaster.
Prinsip di atas pada prinsipnya benar untuk VPN juga, tetapi itu cukup baik seperti yang Anda dapatkan, jika Anda menginginkan akses. Satu-satunya hal yang benar-benar aman adalah tidak ada koneksi internet sama sekali, yang bukan merupakan pilihan praktis karena alasan yang jelas. Hal teraman berikutnya untuk "tidak ada internet" adalah VPN. Satu port persis pada satu perangkat (yah, itu tergantung, hingga tiga port), memperlihatkan VPN dan tidak ada yang lain , port-diteruskan ke internet.
VPN memungkinkan Anda - tetapi tidak ada orang lain - mengakses perangkat di LAN Anda melalui internet seolah-olah Anda berada di LAN yang sama (meskipun sedikit lebih lambat). Ini mencegah akses yang tidak sah, memberikan kerahasiaan, dan integritas data.
Hampir setiap router tanpa kotoran mendukung setidaknya satu rasa VPN di luar kotak. Sayangnya, tergantung pada model router apa yang Anda miliki, itu mungkin rasa VPN yang buruk atau mungkin tidak terdokumentasi dengan baik bagaimana mengkonfigurasi komputer jarak jauh. Namun, meskipun ada kemungkinan mencari tahu cara mengkonfigurasinya - jika Anda tidak memiliki yang lebih baik, itu adalah pilihan terbaik!
Kotak NAS yang paling umum mendukung dua atau tiga metode VPN tanpa hisap, dan setiap komputer ukuran kartu 3 Watt seharga $ 20 dapat menjalankan server VPN, tidak ada masalah. Bahkan banyak ponsel modern mendukung VPN tanpa harus menginstal perangkat lunak tambahan, sehingga Anda bahkan dapat mengakses jaringan rumah Anda saat Anda menggunakan internet seluler ponsel Anda (via hotspot pribadi, bahkan).
Misalnya, L2TP / IPSec mungkin bukan pilihan yang paling luar biasa, tapi 99% bagus dan membutuhkan satu menit untuk mengatur di Stasiun Disk saya dan di ponsel Samsung saya. Semenit lagi jika laptop Windows saya akan menggunakannya juga (terlepas dari telepon). Tidak diperlukan perangkat lunak tambahan.
OpenVPN membutuhkan waktu 3-5 menit pengaturan karena Anda harus mengunduh menginstal perangkat lunak klien pada laptop. Tetapi dalam gambar yang lebih besar, pengaturan 5 menit dihitung sebagai "nol", dibandingkan dengan sepenuhnya tidak aman.
sumber
Host VPN, baik di router / alat gateway keamanan, atau kotak lain dengan port forwarding ke kotak itu. Kapan pun Anda ingin bekerja dari jarak jauh, sambungkan ke VPN, dan Anda akan melihat perangkat yang disematkan seolah-olah perangkat itu berada di jaringan lokal. Mungkin ide yang baik untuk menempatkan perangkat tertanam dalam subnet yang terisolasi, untuk membantu mencegah serangan pada jaringan utama Anda jika VPN atau perangkat yang disematkan terganggu.
sumber
Jadikan Windows PC tanpa IDE menjadi PC Linux dalam konfigurasi yang cukup aman dengan sshd berjalan. Port forward dari router Anda ke port SSH pada mesin Linux. Gunakan terowongan SSH untuk terhubung ke IP perangkat yang disematkan. Kemudian ketika memprogram pada mesin jarak jauh Anda dengan IDE, Anda akan terhubung ke localhost alih-alih IP LAN.
Mendengarkan di internet dengan layanan keras seperti SSH cukup aman. Mendengarkan langsung di internet dengan pengembangan apa pun adalah ide yang sangat buruk. SSH adalah penjaga gerbang. Jika Anda memastikan untuk memverifikasi kunci host, itu melindungi terhadap MITM sepenuhnya. Ini menggunakan kriptografi yang baik. Pengaturan tunneling tidak melibatkan perutean atau penghubungan tetapi sebaliknya tampak seolah-olah Anda terhubung langsung dari mesin SSHD. Ini jauh lebih mudah untuk diatur dengan benar.
sumber
Baru-baru ini saya menemukan solusi yang lebih baik untuk akses jarak jauh pribadi saja. Pertama mari kita bahas ruang lingkup masalahnya. Ada tiga masalah yang ikut berperan: nat, alamat ip, dan keamanan. Misalnya dalam kasus umum di mana Anda ingin menjalankan ssh atau server web pada jaringan rumah, pendekatan tradisional adalah penerusan port dan dns dinamis dan praktik terbaik standar industri untuk keamanan. Ini memiliki kerugian untuk kasus Anda karena perangkat Anda tidak memiliki keamanan standar. Ini dapat dikurangi dengan menggunakan penerusan port ssh sebagai kebalikan dari membuka perangkat Anda ke internet,
Namun ada solusi yang lebih sederhana, dan percaya atau tidak itu adalah layanan tersembunyi. Untuk layanan tersembunyi pada dasarnya bertindak sebagai port forward, tetapi secara otomatis menangani nat traversal, dan tidak memiliki alamat yang berubah sehingga dns dinamis tidak diperlukan. Tentu saja ada masalah alamat bawang yang sulit diingat, tetapi jika Anda adalah satu-satunya pengguna, Anda dapat menuliskannya di salah satu file proyek Anda. Saya akan merekomendasikan masih mengupas ini dengan server ssh untuk memberikan otentikasi, tetapi Anda dapat memutuskan bahwa alamat bawang panjang sudah cukup. Juga untuk layanan tersembunyi menyediakan enkripsi seluruh tautan kecuali untuk hop terakhir sehingga satu-satunya cara untuk menjadi lebih baik adalah enkripsi ujung ke ujung, tetapi itu tergantung pada perangkat yang Anda programkan.
sumber