инструмент, похожий на teamviewer, для ssh?

Я хочу получить доступ к своему домашнему компьютеру с работы через SSH, но проблема в том, что мой домашний компьютер находится за маршрутизатором NAT (к которому у меня нет доступа). Поскольку на моем рабочем компьютере установлена ​​CentOS и он находится за прокси, я не мог использовать TeamViwer (ТВ портировано на Linux с помощью вина, и, видимо, настройки прокси не будут работать).

Кто-нибудь знает программу, которая удовлетворит мои потребности?

Спасибо, Клаудиу.


person Claudiu    schedule 28.03.2011    source источник
comment
Кто-нибудь может порекомендовать программу, вопросы принадлежат суперпользователю.   -  person Ben Voigt    schedule 29.03.2011
comment
plugcomputer.org/plugforum/   -  person    schedule 31.10.2011
comment
Я думаю, что tmate - это инструмент, который вы ищете, посмотрите мой ответ.   -  person valentt    schedule 10.09.2015
comment
Я fxxking люблю этот пост. Решите мою проблему! Вы, ребята, действительно чертовски умны! И тмате и хамачи работали! tmate — хороший способ для быстрого обмена. хамачи будет очень стабильным. Если вы хотите использовать SSH, после установки Linux используйте «ifconfig» для проверки IP-адреса в разделе «ham0», который не является «внутренним» IP-адресом, что удивительно.   -  person Samo Jerom    schedule 08.03.2017


Ответы (9)


[1] Сам инструмент — я бы порекомендовал взглянуть на jrdesktop [ http://jrdesktop.sourceforge.net/ ]; хоть и не очень активный проект и не особенно подходит для модемных соединений, он стабилен, надежен, мультиплатформен и отлично работает.

[2] И jrdekstop, и ssh, но без NAT-transversal (как Hamachi — так называемая VPN с нулевой конфигурацией; обязательно проверьте это! https://secure.logmein.com/products/hamachi2/), есть такие параметры, как "обратное подключение", которые могут оказаться полезными.

После того, как вы установите такую ​​VPN между машинами, вы можете свободно использовать ssh, X, RDP, jrdesktop, VNC и другие инструменты по вашему выбору, как в обычной локальной сети. Если вы не доверяете стороннему «трансверсальному провайдеру», я слышал, что относительно легко написать свой собственный аналог такого программного обеспечения (все же, по крайней мере, одна из машин должна быть публичной, или обе NAT-ed должны иметь временный доступ к общедоступным третья машина).

Кроме того, люди на serverfault.com могут предложить лучшую информацию.

person PMD    schedule 28.03.2011
comment
Хм, из того, что я вижу, Hamachi не для дистрибутивов Linux... jrdesktop тоже не работает, потому что он работает только с локальными сетями, но зайдя на их сайт, я нашел для себя решение :D он называется Firnass, это в основном та же концепция, что и у jrdesktop, но она не ограничивается работой в локальных сетях. Сейчас это выглядит в зачаточном состоянии, но, тем не менее, оно работает. Спасибо! - person Claudiu; 23.05.2011
comment
Пожалуйста ! Я на 100% уверен, что Hamachi2 доступен и для платформ Linux. Это только версия для командной строки, а также бета-версия, но тем не менее - это так! secure.logmein.com/US/labs - person PMD; 09.08.2011

Я искал то же самое и нашел два инструмента!

  • tmate — мгновенный обмен терминалами
  • GoTTY — поделитесь своим терминалом как веб-приложением.

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

Работает через NAT без проблем, никаких сторонних инструментов не требуется.

Ссылки tmate ssh выглядят так:

ssh [email protected]

Просто установите tmate в своей системе, в официальных репозиториях есть пакеты практически для всех основных дистрибутивов (Fedora, Debian, Arch, Ubuntu...)

Кроме того, tmate имеет открытый исходный код и позволяет вам настроить и использовать свой собственный сервер, если вы позже решите не использовать какой-либо сторонний сервис.

GoTTY: поделитесь любым терминальным приложением, которое вы хотите, и другой стороне даже не нужно иметь ssh, но вам нужно разобраться с переадресацией портов, если вы находитесь за брандмауэром и NAT.

person valentt    schedule 10.09.2015
comment
Спасибо. Я пробовал tmate. tmate может работать за NAT и брандмауэром. Он работает в режиме без графического интерфейса. Для меня это хорошая альтернатива teamviewer в режиме Linux без графического интерфейса. - person Nick Dong; 23.01.2017
comment
Так как tmate в последнее время активно не обновлялся. Я предлагаю попробовать ngrok, который я использую лично. Просто используйте его, чтобы открыть службу ssh с помощью ngrok tcp 22. - person taper; 17.08.2018
comment
@taper ngrok — коммерческое программное обеспечение с платными планами. К сожалению, вы не можете свободно запускать свой собственный сервер с ngrok, как вы можете с tmate, как они утверждают: вы можете лицензировать выделенную установку кластера серверов ngrok для коммерческого использования. Вы предоставляете нам ключи к учетной записи AWS, и мы устанавливаем программное обеспечение кластера серверов в эту учетную запись. Он также имеет специальную поддержку и, кажется, больше подходит для коммерческого использования, а не для дома / образования. - person finnan; 23.03.2021
comment
@taper tmate был обновлен в ноябре 2019 года, они добавили именованные сеансы с помощью ключей API и режим переднего плана с tmate -F. Кроме того, я вижу коммит в их github пару дней назад. Надеюсь, скоро они сделают новый релиз. - person finnan; 23.03.2021

Судя по всему, нет конкретного «приложения», которое решит вашу проблему, это скорее проблема с сетью — ваш домашний компьютер находится за NAT, а ваш рабочий компьютер — за прокси-сервером (http или socks).

Итак, вам нужен третий компьютер — желательно с Linux или BSD — назовите его «третий компьютер». Дешевый хостинг Linux vps, вероятно, лучший способ.

Со своего рабочего компьютера вы можете использовать «connect» в своей конфигурации ssh для туннелирования через прокси-сервер на «третий компьютер» — см. http://bent.latency.net/bent/git/goto-san-connect-1.85/src/connect.html.

Например, вот запись в моем файле ~/.ssh/config:

Host foo.dyndns.org
    User sonia
    Port 443
    ProxyCommand connect -H 1.2.3.4:8080 %h %p

(Использование порта 443 — распространенный способ обойти HTTP-прокси).

Со своего домашнего компьютера вы можете использовать «autossh» для настройки постоянного туннеля на «третий компьютер» — см. http://www.harding.motd.ca/autossh/ и http://www.linux.com/archive/feature/134133

Затем со своего рабочего компьютера вы можете подключиться по ssh к «третьему компьютеру», а затем вернуться по туннелю autossh к своему домашнему компьютеру.

person Sonia Hamilton    schedule 28.03.2011
comment
Ну, я думал об этом, но я хотел бы решить проблему с настройкой моего третьего компьютера. Вот почему я искал программное обеспечение, такое как TeamViewer, потому что соединение проходит через их собственные серверы, и у меня нет бремени дополнительной настройки, и мне не нужно платить за этот дополнительный компьютер :P - person Claudiu; 28.03.2011
comment
ОП запрашивает что-то вроде teamviewer (используя какое-то программное обеспечение для обхода маршрутизатора), а не настройку маршрутизатора. - person ChrisAdmin; 14.07.2016

Вы также можете использовать альтернативу, например Robo-TiTO. Это сделает ваш сервер доступным для чата Jabber, например (GTalk/Hangouts). Это довольно простой и прямой доступ к терминалу. Пользуюсь несколько лет. Обычно я открываю с его помощью обратный SSH-туннель, и после этого это просто правильный доступ по SSH.

person formigarafa    schedule 05.04.2011
comment
Кажется хорошей идеей, но я не смог найти много документации о том, как ее настроить и тому подобное... - person Claudiu; 23.05.2011
comment
Обновление: мне удалось заставить jabber-shell работать, для тех, у кого есть проблемы с этим, вот шаги: 1) установите необходимые пакеты (ruby, rubygems и драгоценный камень комплекта); 2) отредактируйте config/credentials.example.rb с информацией из только что созданной учетной записи бота (я использовал Gmail) и сохраните ее как учетные данные.rb; также обязательно поместите имя своей учетной записи gmail в вектор AllowedUsers. 3) добавить бота в список друзей; 4) запустить программу с ./jabbershd start; 5) отправить команды боту из окна gtalk и он ответит :) - person Claudiu; 26.05.2011
comment
В настоящее время ссылка на гитиб github.com/formigarafa/jabber-shell отсутствует (404 ошибка) - person knb; 07.03.2012
comment
Я изменил имя jabber-shell. Теперь он называется Robotito, и его можно найти по адресу github.com/formigarafa/robotito. Извините за это, но я изменил, чтобы избежать путаницы, есть и другие проекты с похожими названиями. - person formigarafa; 25.05.2012

Удаленный доступ к оболочке:

  • Teleconsole – инструмент командной строки для совместного использования терминала UNIX и переадресации локальных TCP-портов.
  • Tmate — мгновенный общий доступ к терминалу

Удаленный доступ к графическому интерфейсу через SSH:

  • Xpra — многоплатформенная система экрана и переадресации приложений "экран для X11"
person Onlyjob    schedule 02.10.2019

Если вам нужно только ssh-соединение, вы можете потратить 2,99 доллара в месяц на покупку дешевого vps и использовать обратный ssh ​​или ngrok для регистрации вашего компьютера за NAT.

person hailinzeng    schedule 19.05.2017

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

Если ваш интернет-провайдер не делает что-то подлое с NAT операторского класса, это должно работать нормально.

В качестве альтернативы вы должны иметь возможность подключиться из дома к своей рабочей машине через ssh и создать туннель, чтобы вы могли подключиться к своей рабочей машине, а затем получить сеанс между домом и работой.

person BadFileMagic    schedule 28.03.2011
comment
Это не мой домашний маршрутизатор, на самом деле я нахожусь за NAT-маршрутизатором своего интернет-провайдера, поэтому я не могу выполнять какие-либо настройки. (Я знаю, провайдеры обычно дают публичные адреса, но это сложная ситуация) - person Claudiu; 28.03.2011

NX использует транспорт ssh. NoMachine распространяет как бесплатную, так и премиальную версии инструмента, а также есть freenx.

person Ben Voigt    schedule 28.03.2011
comment
NX выглядит как отличный инструмент, но, к сожалению, я вижу, что он не может пройти мимо маршрутизатора NAT. - person Claudiu; 23.05.2011
comment
@Claudiu: я думал, вы имели в виду, что у вас есть ssh-соединение и вы хотите управлять графическими приложениями. - person Ben Voigt; 24.05.2011

Возможно, вы сможете просто использовать переадресацию X с ssh -X host или ssh -Y host и просто открывать графические приложения. Или вы настроили сервер VNC, который вы также можете туннелировать через SSH.

person Martin Ueding    schedule 28.03.2011
comment
Ну, мне не нужны графические приложения, мне нужен только CLI... и SSH не будет работать, потому что мой компьютер находится в частной сети. Но я попробую VNC, когда вернусь домой, надеюсь, это пройдет прокси тоже :) - person Claudiu; 28.03.2011