LINUX.ORG.RU

Сделал публичный порт-форвардер через SSH, оцените

 , ,


6

3

ssh ssh-j.com

Сервис для проброса SSH-подключения из-за NAT. Никаких доп. программ ни на сервере, ни на клиенте. Никаких регистраций и временных доменов/портов. Одна команда для проброса SSH, одна для подключения.

Хоть ssh-j и позволяет пробрасывать любые сервисы, предлагается публиковать только порты SSH, чтобы не нарушался принцип end-to-end шифрования.

Сервис был написан прежде всего для себя: периодически приходится предоставлять кому-либо доступ к виртуалкам, сетевым устройствам, одноплатным компьютерам, а известные сервисы вроде ngrok не настолько удобны.

Буду рад услышать отзывы.

★★★★★

А девайсы для каждого юзернейма ведутся? И если два соединения с одним юзернеймом и девайсом, то куда пойдёт?

turtle_bazon ★★★★★ ()

Опубликуй ssh public host key для параноиков где-нибудь, раз страницы сервиса нет. Хотя бы здесь или в своем твиттере.

anonymous ()
Ответ на: комментарий от vvn_black

IPv6 исправил, очень странно он работает в LXD+Alpine.

STARDUST1-S в Париже?

В Нидерландах.

ValdikSS ★★★★★ ()
Ответ на: комментарий от turtle_bazon

А девайсы для каждого юзернейма ведутся?

Да.

И если два соединения с одним юзернеймом и девайсом, то куда пойдёт?

Второй туннель не опубликуется, будет ошибка в SSH.

ValdikSS ★★★★★ ()

Для ленивых и параноиков (да, SSH сливает любому и каждому все публичные ключи, которые ему известны; в принципе не так страшно, но fingerprinting) → https://bitbucket.org/ValdikSS/dropbear-sshj/src/master/

                          ╭───────────────╮
                          │        SSH-J.com       │
                          │ Public SSH Jump & Port │
                          │    Forwarding Server   │
                          ╰───────────────╯
       iam@valdikss.org.ru, https://bitbucket.org/ValdikSS/dropbear-sshj/

Looking for ways to expose SSH behind NAT? Search no further!

Publish SSH server port of your laptop, which is behind NAT:
 ssh any-username@ssh-j.com -N -R laptop-behind-nat:22:localhost:22
   ╭─╯  unique  ╰─╮               │  device name ╭─╯│destination│
   │  namespace   │               │    and port  │  │address and│
   │for your hosts│               ╰─────────╯  │    port   │
   ╰─────────╯                                   ╰───────╯

Connect to the published SSH:
 ssh -J any-username@ssh-j.com laptop-behind-nat
       ↖
         It's THAT easy!

Published hosts are bound to the username. Other usernames can't access them.
Pick a unique username (not root 😁) and get access to your devices anywhere!
beastie ★★★★★ ()
Последнее исправление: beastie (всего исправлений: 1)

А tcpdump там крутится и пишет всё интересное? :P

Harald ★★★★★ ()

Идея хорошая, полезная - бывает, в гостях внезапно выясниться, что ты «компутырщик», и тут как тут комп с проблемой, ну я люблю это дело, мне не в лом починить, но реально была пара моментов, когда резко из-за чужого nat'а нужно было подключиться домой, и приходилось возиться. Жалко, что тогда не было твоего сервиса/а если он не первый такой - то что я не знал о них. Вот, единственная мелочь, к которой можно придраться - фигово сделанная справка, пробелы и промежутки между строками не помешали бы. Но это реально, мелочи. Если у тебя там действительно tcpdump или что еще не пишет все происходящее - то ты сделал хорошее,доброе и полезное дело. Да даже если и пишет (а предполагать подобное,к сожалению,необходимое зло нашего времени), все равно полезная штука

d09 ()
Ответ на: комментарий от d09

когда резко из-за чужого nat'а нужно было подключиться домой, и приходилось возиться.

т.е. ты на чужом компе вводил пароль к своему домашнему компу?

Harald ★★★★★ ()
Ответ на: комментарий от beastie

Для ленивых и параноиков (да, SSH сливает любому и каждому все публичные ключи, которые ему известны; в принципе не так страшно, но fingerprinting)

ForwardAgent no
IdentitiesOnly yes
drsm ★★ ()
Ответ на: комментарий от Harald

Не совсем так. Во первых, у меня флешка с SystemRescueCD висит на брелке с ключами,и соответственно, всегда с собой,и во вторых, на ней же храниться сертификат. Так что пароль я не вводил, комп был чужой, ос не чужая, как-то так. А вообще, щас подумал, и понял, что на такие случаи по хорошему дома отдельный комп за отдельным роутером надо держать

d09 ()
Ответ на: комментарий от d09

на такие случаи по хорошему дома отдельный комп за отдельным роутером надо держать

или просто вм на зюзероутере

Ford_Focus ★★★★★ ()
Ответ на: комментарий от beastie

Если внимательно посмотреть в отладочный вывод ssh -v, то можно увидеть, что аутентификация завершается успехом еще до попыток отправки ключей.

ValdikSS ★★★★★ ()
Ответ на: комментарий от ValdikSS

аутентификация завершается успехом еще до попыток отправки ключей.

Каким образом тогда происходит аутентификация? На основании каких факторов?

anonymous ()

Спасибо за полезный сервис.

anonymous ()
Ответ на: комментарий от anonymous

деанон же и попытки анализировать трафик

anonymous ()
Ответ на: комментарий от anonymous

Еврей на рынке продает вареные яйца.
– Хаим, почем ты продаешь вареные яйца?
– По десять рублей.
– А покупаешь?
– По десять.
– Так зачем тебе все это надо?
– Во-первых, я при деле, а во-вторых, кушаю бульон.

ValdikSS ★★★★★ ()

А через ConnectBot на Android этот сервис как-то можно использовать? ConnectBot до сих пор не поддерживает jump host’ы, а через дополнительные пробросы портов как сделать что-то я не соображу, если это вообще возможно.

anonymous ()
Ответ на: комментарий от anonymous

Нужно использовать опцию -L (проброс удалённого порта локально).

-L 1234:laptop-behind-nat:22

А затем подключаться к laptop-behind-nat так:

ssh -p1234 localhost

ValdikSS ★★★★★ ()
Ответ на: комментарий от anonymous

А почему бы не поставить Termux? В нем есть нормальный openssh.

aquadon ★★★★★ ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.