3

Я считаю, что наконец-то получил необходимые знания, чтобы задавать другие вопросы: question1 и question2 на этом сайте.

Я хочу SSH с моего Android-планшета (возможно, с SSH-клиентом Connect Bot) на мою машину с Ubuntu, на которой работает Ubuntu 12.04 LTS. Это то, что я сделал до сих пор:

  1. На моем компьютере с Ubuntu установлен openssh-сервер.
  2. Проверено, что мой sshd_config разрешает PubKeyAuthentication

    Из документации Ubuntu в разделе SSH Keys с сервера мы можем предоставить доступ к удаленному компьютеру, следуя инструкциям, которые дадут удаленному компьютеру открытый ключ.

Это делается командой: ssh-copy-id username@remotehost

Поскольку я хочу подключиться к своему компьютеру с Ubuntu удаленно через планшет, мне нужно знать личность / адрес моего планшета, который в документации упоминается как username@remotehost . Это приводит к следующему вопросу:

Вопрос1 : Какое значение: username@remotehost для моего планшета Android? Пожалуйста, приведите пример значений и прокомментируйте, могут ли эти значения измениться?

Предположим, я достаточно выполнил предыдущий шаг. Затем с моего планшета я смогу открыть приложение connect bot и подключиться к моей машине с Ubuntu. Когда я открываю бот подключения, я получаю запрос, подобный следующему: username@hostname:port , который позволит мне подключиться к другому компьютеру с таким именем . Это приводит к следующему вопросу:

Вопрос 2: Каково значение username@hostname:port для моего компьютера с Ubuntu? Пожалуйста, приведите пример значений и прокомментируйте, могут ли эти значения измениться?

Я считаю, что предоставленная мною информация является четкой, точной и достаточной для ответа на мои вопросы. Однако, поскольку у меня нет опыта работы с сетями, возможно, я не включил достаточно информации. Пожалуйста, дайте мне знать, если вам нужна дополнительная информация и заранее спасибо за помощь!

2 ответа2

3

Прежде всего, вам не нужно "предоставлять доступ к удаленной машине", все, что вам нужно, - это войти в систему как пользователь, имеющий доступ к серверу. Упомянутая вами команда предназначена для разрешения доступа без пароля, а не для простого доступа.

В общем, для подключения в качестве пользователя bob от machine1 к machine2 через ssh вы бы просто запустить

ssh bob@machine2

После чего вам будет предложено ввести пароль обычного пользователя bob на machine2 . Я не использовал конкретное приложение для Android, о котором вы упомянули, но теоретически все, что вам нужно сделать, это указать свое имя пользователя и пароль для вашего компьютера с Ubuntu.

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

На машине с Ubuntu вы можете получить локальный IP, выполнив:

ifconfig wlan0 | grep "inet " | awk -F'[: ]+' '{ print $4 }'

Измените wlan0 на какой-либо другой сетевой интерфейс (запустите ifconfig чтобы увидеть доступные)

Итак, если ваш IP-адрес, например, 192.168.1.12 , а ваше имя пользователя на компьютере с Ubuntu - bob , вы можете войти в систему с планшета, используя 192.168.1.12 в качестве сервера, и bob в качестве пользователя, никаких других действий должно быть необходимо.


Что касается ваших конкретных вопросов, user@remote переводится как bob@192.168.1.12 и порт обычно является портом 22, но это действительно не нужно, если вы не используете другой порт, что очень маловероятно, если вы не являетесь опытным администратором ssh в котором В случае, если вы не будете задавать этот вопрос :).

0

«Какое значение: username @ remotehost для моего планшета Android?"

Я думаю, что это будет зависеть от того, какое терминальное приложение вы используете. Используя Termux его: u0_a22 @ localhost. Сгенерируйте ключи rsa и найдите ключ id_rsa.pub, он должен находиться в конце файла.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .