
ब्राउज़र या CLI का उपयोग करके, बिना पोर्ट फ़ॉरवर्डिंग या खातों के, एंड-टू-एंड एन्क्रिप्टेड पीयर-टू-पीयर WebRTC के माध्यम से इंटरैक्टिव शेल, फ़ाइल स्थानांतरण और वेब प्रॉक्सी के साथ किसी मशीन पर सुरक्षित दूरस्थ पहुँच स्थापित करें।
bitbang एक एकल स्टैटिक बाइनरी रिमोट-एक्सेस मल्टीटूल है। किसी भी ब्राउज़र से: रिमोट मशीन तक एक इंटरैक्टिव शेल और फ़ाइल ब्राउज़र की पहुँच। आप उस मशीन के नेटवर्क पर मौजूद वेब ऐप्स तक भी पहुँच सकते हैं। ब्राउज़र के अलावा, यह TCP पोर्ट फ़ॉरवर्डिंग, फ़ाइल कॉपी और टर्मिनल शेयरिंग करता है। इसके लिए किसी खाते या कॉन्फ़िगरेशन की आवश्यकता नहीं है -- यह बस काम करता है।

जिस मशीन तक आप पहुँचना चाहते हैं, उस पर:
curl -sSfL bitba.ng/install | sh
bitbang serve
serve एक URL प्रिंट करता है। इसे किसी भी ब्राउज़र में खोलें और आपको एक टर्मिनल, एक फ़ाइल ब्राउज़र, और उस मशीन के नेटवर्क का प्रॉक्सी मिलता है -- या किसी अन्य टर्मिनल से bitbang connect <url> के साथ उसी मशीन तक पहुँचें, जो पोर्ट फ़ॉरवर्डिंग (-L) और फ़ाइल कॉपी (bitbang cp) जोड़ता है। कनेक्शन एंड-टू-एंड एन्क्रिप्टेड और पीयर-टू-पीयर है; bitba.ng सर्वर दोनों सिरों का परिचय कराता है, फिर हट जाता है।
bitbang एक एकल स्टैटिक Go बाइनरी है। यह BitBang प्रोजेक्ट का हिस्सा है; यह व्हाइटपेपर डिज़ाइन को विस्तार से कवर करता है।
| ngrok | Tailscale | bitbang | |
|---|---|---|---|
| पहले उपयोग से पहले सेटअप | अकाउंट + ऑथटोकन | अकाउंट + प्रत्येक डिवाइस पर लॉगिन | एक कमांड चलाएँ |
| कुछ साझा करने के लिए, आप चलाते हैं | एक वेब सर्वर, साथ में ngrok | दोनों मशीनों पर उनका क्लाइंट | bitbang serve |
| दूसरे सिरे पर ब्राउज़र को क्या मिलता है | वह वेब सर्वर जो आप पहले से चला रहे थे | कुछ नहीं -- इसके लिए उनका क्लाइंट चाहिए | एक टर्मिनल, एक फ़ाइल ब्राउज़र, और रिमोट नेटवर्क पर वेब ऐप्स |
| डेटा पथ | उनके सर्वर | P2P (रिले फ़ॉलबैक) | P2P (रिले फ़ॉलबैक) |
| एंड-टू-एंड एन्क्रिप्टेड | डिफ़ॉल्ट रूप से नहीं | हाँ | हाँ |
घर पर किसी सेवा तक पहुँचें
किसी मशीन पर पहुँचें
किसी और के साथ साझा करें
साझा करने का अर्थ है किसी को बस एक अद्वितीय URL या QR कोड देना जो उन्हें पहुँच प्रदान करता है। अनुमतियाँ अनुकूलित की जा सकती हैं और मिनटों, घंटों आदि में समाप्त होने के लिए सेट की जा सकती हैं।
विकास और डिवाइस
तकनीकें
bitbang का उपयोग करनाहर कनेक्शन के दो सिरे होते हैं: एक लिसनर (bitbang serve, जिस मशीन तक पहुँचा जा रहा है उस पर चलता है) और एक कनेक्टर (एक ब्राउज़र, या bitbang CLI, जिस मशीन से पहुँचा जा रहा है उस पर)। एक लिसनर URL दोनों प्रकार के कनेक्टर की सेवा करता है।
bitbang servebitbang serve # everything: shell + proxy + files + forward
bitbang serve shell # just a terminal
bitbang serve files ~/share # just a directory (-files-upload to allow uploads)
bitbang serve proxy localhost:8080 # just one web app, straight at the URL
bitbang serve proxy a.lan:80,b.lan:80 # ...or several, chosen in the browser
bitbang serve forward 127.0.0.1:22 # just TCP, for `connect -L`
bitbang serve shell files ~/share proxy nas.lan:8096 # any combination
प्रत्येक एक QR कोड, URL और एक पेयरिंग कोड प्रिंट करता है। मोड तय करता है कि
लिसनर आखिरकार क्या कर सकता है: serve shell में देने के लिए कोई फ़ॉरवर्डिंग नहीं है, और
केवल-फ़ॉरवर्ड लिसनर कभी शेल शुरू नहीं करता, इसलिए एस्केलेट करने के लिए कुछ नहीं है।
एक डिफ़ॉल्ट जानने योग्य है: फ़ॉरवर्डिंग और प्रॉक्सी उस हर host:port तक पहुँचते हैं जिस तक
लिसनर पहुँच सकता है, केवल वह नहीं जो आपके मन में था, इसलिए डेटाबेस के लिए दिया गया लिंक
उस नेटवर्क के बाकी हिस्सों तक भी पहुँचता है। शब्द के बाद लक्ष्यों का नाम देना इसे सीमित करता है --
forward db.internal:5432 उसी तक पहुँचता है और किसी और चीज़ तक नहीं।
bitbang share