![Как подключиться к shh без имени пользователя и пароля для обратного туннелирования](https://rvso.com/image/1665764/%D0%9A%D0%B0%D0%BA%20%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C%D1%81%D1%8F%20%D0%BA%20shh%20%D0%B1%D0%B5%D0%B7%20%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F%20%D0%B8%20%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8F%20%D0%B4%D0%BB%D1%8F%20%D0%BE%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D0%BE%D0%B3%D0%BE%20%D1%82%D1%83%D0%BD%D0%BD%D0%B5%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F.png)
Можно ли подключиться к ssh-серверу (создать туннель) просто с помощью:
ssh -R sPort:localhost:cPort myDomain.com
вместо:
ssh -R sPort:localhost:cPort [email protected]
(который также требует входа с паролем)?
редактирование: применил предложенные правки по вопросу.
решение1
По умолчанию ssh использует имя текущего пользователя, если вы не указали его в команде. Если имя пользователя, под которым вы хотите войти, myDomain.com
не совпадает с именем вашего текущего локального пользователя, вы можете добавить специфичную для хоста настройку в конфигурацию ssh (расположенную по адресу ~/.ssh/config
):
Host myDomain.com
User yourUserName
Чтобы войти без пароля, вам нужно будет скопировать свой открытый ключ на удаленный хост, чтобы он был распознан как авторизованный ключ. Скорее всего, ваш открытый ключ будет в , ~/.ssh/id_rsa.pub
если вы не изменили значения по умолчанию при генерации пары ключей. Чтобы скопировать открытый ключ на сервер, выполните следующую команду на локальной машине:
ssh-copy-id -i ~/.ssh/mykey [email protected]
Теперь вы сможете создать туннель, не ssh -R sPort:localhost:cPort myDomain.com
вводя пароль.
решение2
это действительно некорректный вопрос.
это не имеет ничего общего с Ubuntu... и на самом деле не имеет ничего общего с обратным туннелем.
и это применимо к командной строке SSH (любая стандартная реализация).
Вы настраиваете SSH без пароля. Затем вы можете подключиться так, чтобы он создавал обратный туннель, или создавал обычный туннель, или не создавал туннель.
А чтобы настроить SSH без пароля, вы можете поискать его, там есть ssh-copy-id, который можно использовать, или несколько команд, которые являются ее ручными эквивалентами.
И вот, вуаля, вы можете выполнить ssh user@blah, а для обратного туннеля у вас уже есть параметры, прописанные в вашей команде в вашем примере.
Вам просто нужен был SSH без пароля. Это легко гуглится.
(Вам все равно нужно указать пользователя, если только имя пользователя на удаленной системе не совпадает с именем пользователя на локальной системе, поэтому лучше указать user@. Другое дело, что можно создать локальный файл конфигурации SSH, в который будет добавлено имя пользователя, и тогда вы можете пропустить опцию имени пользователя).