Я хотел бы иметь возможность бегать code .
при подключении к моему удаленному серверу через ssh и переводить его на code --remote ssh-remote+client-name /path/to/directory
на клиенте.
По сути, это просто должно предоставить серверу информацию, указывающую путь к каталогу, в который необходимо «удаленно».
Допускает ли SSH такую обратную болтовню?
Я вижу, что у меня есть доступ к $SSH_CLIENT
Переменная. Я мог бы запустить команду ssh обратно на клиенте, но тогда мне понадобится открытый ssh-сервер, работающий на клиенте с правильными перенаправленными портами.
1 ответ
Во-первых, вы четко понимаете, что ваша code
Команда должна быть псевдонимом, функцией или каким-то скриптом.
Вы должны иметь возможность использовать обратную переадресацию портов, чтобы позволить удаленному ssh
в вашего клиента без открытие вашего клиента или перенаправление каких-либо портов через ваш fireall / маршрутизатор / что-то еще. Что-то вроде этого:
user@client $ ssh -R 22122:localhost:22 user2@remote
user2@remote $ ssh user@localhost:22122 'whoami;hostname'
user
client
Пароли или ssh-ключ доступа от remote
к client
, а остальные твои code
сценарий остается для вас, но если вы используете ключи и ssh-agent, you should be able to also forward agent access from client to remote using the
-A` вариант.
Предостережение Usor, поскольку вы фактически позволяете кому-то подключаться к вашему клиенту с удаленного, что, если это общий пульт, может быть проблематичным.