
أنفاق HTTP(S)/WS(S)/TCP إلى localhost باستخدام SSH فقط.
أنفاق SSH مفتوحة المصدر لـ HTTP(S)، WS(S)، TCP، الأسماء المستعارة، وSNI.
إذا كنت تحب بساطة المشاركة على غرار serveo/ngrok ولكنك تريد استخدام SSH العادي وتشغيل البنية التحتية الخاصة بك، فإن sish صُمم لذلك.
Docs | الخدمة المُدارة | الإصدارات | صور Docker | برعاية pico.sh
يقوم sish بتشغيل خادم SSH يركز على إعادة التوجيه والتعددية. يتصل المستخدمون باستخدام أوامر يعرفونها بالفعل، ويتولى sish التوجيه.
أسرع طريقة للتحقق من سير عملك:
ssh -R 80:localhost:8080 tuns.sh
يؤدي هذا إلى إنشاء عنوان URL عام لتطبيقك المحلي الذي يعمل على المنفذ 8080.
سحب الصورة:
docker pull antoniomika/sish:latest
تجهيز الأدلة:
mkdir -p ~/sish/ssl ~/sish/keys ~/sish/pubkeys
cp ~/.ssh/id_ed25519.pub ~/sish/pubkeys
التشغيل:
docker run -itd --name sish \
-v ~/sish/ssl:/ssl \
-v ~/sish/keys:/keys \
-v ~/sish/pubkeys:/pubkeys \
--net=host antoniomika/sish:latest \
--ssh-address=:2222 \
--http-address=:80 \
--https-address=:443 \
--https=true \
--https-certificate-directory=/ssl \
--authentication-keys-directory=/pubkeys \
--private-keys-directory=/keys \
--bind-random-ports=false \
--domain=example.com
ثم الاتصال:
ssh -p 2222 -R 80:localhost:8080 example.com
ssh -R myapp:80:localhost:8080 tuns.sh
يصبح تطبيقك على localhost:8080 متاحاً على https://myapp.tuns.sh.
ssh -R 2222:localhost:22 tuns.sh
localhost:22 متاح على tuns.sh:2222
ssh -R mylaptop:22:localhost:22 tuns.sh
الوصول من عميل آخر:
ssh -J tuns.sh mylaptop
استنساخ:
git clone [email protected]:antoniomika/sish.git
cd sish
التشغيل محلياً:
go run main.go --http-address localhost:3000 --domain testing.ssi.sh
أو استخدم:
make dev
اختبار النفق:
ssh -p 2222 -R 80:localhost:8080 testing.ssi.sh
تم ضبط testing.ssi.sh للإشارة إلى localhost للتطوير.