Настройка autossh

Добрый день,

Пытаюсь настроить на контроллере autossh для удаленного подключения к нему.
Делаю по шпаргалке. Шпаргалка: сетевые настройки контроллера на удаленном объекте — Wiren Board

Споткнулся на добавлении в преамбулу
" на сервере добавляем созданный на контроллере ключ /root/.ssh/id_rsa.pub с преамбулой

no-agent-forwarding,no-X11-forwarding,permitopen="localhost:62001" "

Не понял. это просто в лоб перед последовательностью символов составляющей публичный ключ контроллера ? Или там теги какие-н должны быть ?

Добавил сделал пользователя remote на внешнем сервере. Добавил публичный ключ без “преамбулы”.

С контроллера подключиться по ssh не могу
даю “ssh remote@myserver.com” после ввода пароля пользователя remote на сервере, сервер пишет “Permission denied, please try again.”

На этом настройка autossh по шпаргалке остановилась …

Помогите пожалуйста разобраться. Может в шпаргалке упущено что-то…

Да, добавьте параметры перед ssh с пробелом после параметров, естественно.

добавил …

xxx@yyyy:/home/remote$ sudo ls .ssh
authorized_keys
xxx@yyyy:/home/remote$ sudo cat .ssh/authorized_keys
no-agent-forwarding, no-X11-forwarding, permitopen=“localhost:62001”
{пустая строка без нее тоже пробовал}
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0w0lPQuKdMk1zbSvxWUP/JfqK4XA7IR

Ошибка та же

Предлагаю для начала просто настроить ssh доступ с кнтроллера на сервер.

Не должно быть запроса пароля. На конроллере приватный ключ сохранен? в каком файле?

/root/.ssh/id_rsa

Вот его и проверьте можно перегенерировать, при соединении пароль запрашиваться не должен вообще.

ОК. Перегенерю. Меня смущает оция --shell /bin/false при создании пользователя remote на сервере. Она точно не мешает? И еще сервер хостинговый. В параметрах sshd не может быть настроек мешающих подключаться по ключу ?

Если нужно именно подключаться в шелл - то конечно без нее.

Я делаю по шпоргалке … в ней “ssh remote@myserver.com” она у меня не отрабатывает …
У меня вопрос в чем тайный смысл этой команды ? И нужна ли она ?
Или это нестыковка в инструкции и можно продолжать ?

Тут “myserver.com” - это имя удаленного сервера. Если у вас другое - надо подставить свое.

:slightly_smiling_face: конечно у меня своё имя сервера. Это открытый формум поэтому не указываю…

Просто перед этим мы создаем на сервере пользователя не имеющего оболочки. И затем выполняем под этим пользователем ssh подключение … Я не очень хорошо знаю линукс. Поэтому возник вопрос зачем это в инструкции. Может в момент подключения на контролллер должен записаться публичный ключ сервера … Но как это работает с /bin/false не знаю …

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

Дошел до этапа когда в оболочке bash пользователем remote подключаюсь по ssh к серверу с помощью ключа (добавил пользователю право подключения к серверу по ssh в конфиге sshd).

Как только поменял remote облочку на /bin/false после подключения ssh remote@myserver.com соединение закрывается "
Connection to myserver.com closed."

Дальше после настройки сервиса autossh по шпаргалке и нескольких рестартов сервиса autossh (сразу после старта не взлетело) удалось выполнить подключение через сервер
но при этом команда выглядит “ssh root@127.0.0.1 -p 62001” не совсем то что в шпоргалке и приходится вводить пароль рута с контроллера…

Видимо что-то не донастроил на контроллере …

Еще раз напишу… Надеюсь вы не пытаетесь подключиться к серверу myserver.com?
То есть вы подставляете вместо этого имени имя своего сервера?

Тут вы подключаетесь к этому же компьютеру.

Должно было быть вроде как да. Но по факту я указываю пользователя которым логинюсь на контроллере. И ввожу пароль рута с контроллера… Получается что мой установленный на сервер (пользователю remote) публичный ключ от рута с контроллера не подхватвывается … ?
Пользователь remote на сервер то логиниться не может … (/bin/false) и я логинюсь под другим пользователем …

Проверил. Получается что подключаюсь к этому серверу по порту 62001 который пробрасыватся на контроллер. Так что без указания явно пользователя он берет пользователя с сервера и пытается под ним подключиться к контроллеру. Если такого пользователя там нет то такой трюк не проходит. В итоге я добавил руту на контролере публичный ключ пользователя с сервера под которым запускаю команду подключения.
теперь ssh root@127.0.0.1 -p 62001 устанавливает соедиение с контроллером без запроса пароля рута с контроллера.

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.