Почему SSH-сервер не работает на Android 4, порты заблокированы?

10

У меня возникают проблемы с подключением к моему новому телефону Android 4 (Samsung Nexus).

Я установил различные SSH-серверы, но во всех случаях ssh-соединение просто зависает (то есть я не дохожу до имени пользователя / пароля).

Как пример, используя SSHDroid:

Подробный журнал SSH из моей Linux-коробки:

joel@pepper ~ $ ssh  -p 2222 root@192.168.1.65 -vvv
OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.1.65 [192.168.1.65] port 2222.

Вывод из nmap не выглядит правильно. Состояние фильтрованного порта означает, что брандмауэр блокирует его:

joel@pepper ~ $ sudo nmap -sS  192.168.1.65 

Starting Nmap 5.21 ( http://nmap.org ) at 2011-11-20 21:29 GMT
Nmap scan report for android-63731d6ebec9e01.lan (192.168.1.65)
Host is up (0.019s latency).
Not shown: 999 closed ports
PORT     STATE    SERVICE
2222/tcp filtered unknown
MAC Address: A0:0B:BA:B4:5F:59 (Unknown)
Joel
источник
3
Это действительно блокирует как заблокированные порты. Вы также можете попробовать ping, а затем - telnet <ip> <ssh_port>и вы можете подтвердить, что сокет открыт на уровне ОС через netstat -ltnp.
Поток

Ответы:

1

Насколько я знаю, по умолчанию в Ubuntu используется порт ssh по умолчанию IS 22, как указал «Lie Ryan». Возможно, вы захотите проверить свои sshd_configфайлы на вашем ПК, если вы хотите взглянуть на эту статью, в ней указано, как изменить стандартную конфигурацию ssh в Ubuntu, а также официальную документацию . Кроме того, проверьте текущие настройки брандмауэра, вы можете временно открыть этот конкретный порт для службы ssh-типа, если хотите убедиться, что это не что-то еще.

Кроме того, мне кажется, что этот вопрос был задан более 6 месяцев назад; если ОП не выяснил это до сих пор, я сомневаюсь, что ему будет интересно продолжить это дальше. Я предлагаю либо принять ответ, предоставить обновленную информацию о ситуации с тех пор, или, возможно, закрыть вопрос.

РЕДАКТИРОВАТЬ: в зависимости от вашего приложения ssh-сервера для Android и от того, используете ли вы его с привилегиями su, это с веб-сайта "QuickSSHD":

пользователи без полномочий root ограничены портами <1024 и пользователем приложения QuickSSHd, которые МОГУТ читать и записывать на SD-карту.

ILMostro_7
источник
1
Ты имеешь в виду > 1024?
Этеш Чоудхури
это именно то, что на сайте ... скопировано и вставлено. Вот , пожалуйста, посмотрите сами
ILMostro_7
Это, вероятно, опечатка. Обычно порты < 1024зарезервированы для пользователя root, а другие порты могут быть доступны любому. unix.stackexchange.com/questions/16564/…
Этеш Чоудхури
Я не знаю ... но, как я уже сказал, обычно есть причина, по которой большинству SSH-серверов на базе Android требуется разрешение root; и если у ОП возникают проблемы с доступом к нему с ПК, это может объяснить это, поскольку SSHDroid и QuickSSHD очень похожи и основаны на одних и тех же «основных частях»
ILMostro_7
О, конечно, я просто говорю о связи по рассматриваемым портам. Я знаю, что SSHDна андроиде работает на 2222, обычно.
Этеш Чоудхури
-1

Порт ssh по умолчанию - 22, а не 2222, возможно, это основная причина проблемы? Попробуйте подключиться к порту 22.

Ли Райан
источник
Фактически, все SSH-серверы на рынке, о которых я знаю, используют порт 2222.
Liam W
1
Порты ниже 1024 доступны только для пользователей root в Linux, поэтому серверы SSH на Android не используют порт 22 по умолчанию.
elmicha