недавно столкнулся с ситуацией, с которой я не знаю, как справиться, скажем, мне обычно приходится сначала подключаться к jumphost, используя ssh user@xxx.xxx.xxx.xxxx затем password , затем ssh machine1(или machine2 machine3 machine4,...), затем тот же password для входа, теперь я хочу написать скрипт, который может автоматически входить на все machines(machine1, machine2, machine3, machine4,...) чтобы запустить некоторую команду для сбора информации обратно (конкретно nvidia-smi smi to см. использование компьютера с помощью графического процессора), чтобы я мог знать все использование графического процессора на всех компьютерах с помощью скрипта sigle, но не знаю, как, я попытался настроить ProxyJump следующим образом:

Host betajump
  HostName user@xxx.xxx.xxx.xxx

### Host to jump to via jumphost1.example.org
Host machine1
  HostName user@machine1
  ProxyJump betajump

но это не работает, когда попробовал ssh machine1, подсказывает:

ssh: /home/cc/Downloads/software/envs/py2/lib/libcrypto.so.1.0.0: no version information available (required by ssh)
ssh: /home/cc/Downloads/software/envs/py2/lib/libcrypto.so.1.0.0: no version information available (required by ssh)
/home/cc/.ssh/config: line 7: Bad configuration option: proxyjump
/home/cc/.ssh/config: terminating, 1 bad configuration options

даже если эта работа, у меня все еще нет идеи сделать работу, которую я хочу, может кто-то помочь?

1 ответ1

0

Поскольку вы говорите о желании написать сценарий этого процесса, тот факт, что вы используете пароли, замедлит вас. Возможно, вы захотите перейти на использование закрытых ключей для аутентификации вместо паролей.

Первым предложением будет обновление до OpenSSH 7.3 или выше. Версия 7.6 уже вышла, а 7.3 была выпущена в 2016 году, поэтому вполне возможно, что она доступна в предварительно упакованном виде в той или иной форме, подходящей для вашего дистрибутива. Если нет, вы можете найти его и скомпилировать. Это устранит полученную вами ошибку конфигурации.

Если это невозможно (вам необходимо придерживаться 6.6.1), вы можете попробовать реализовать более неуклюжий подход, перечисленный на сайте, на который я ссылаюсь в моем комментарии: OpenSSH wiki re: chaining gateways

Это должно позволить вам создавать сценарии соединений, но, как уже упоминалось в начале, запросы на ввод пароля будут примерно в 2 раза больше числа машин, которые вы собираетесь проверять. Это может довольно быстро устареть, поэтому я советую изучить аутентификацию с открытым ключом.

Ваша проблема с библиотекой - это совсем другой вопрос, довольно сложный, и он не мешает вам заняться этим конкретным вопросом, поэтому я не буду его подробно освещать. Я бы посоветовал начать с 'man ldconfig', чтобы узнать, как установлен LD_LIBRARY_PATH, и перейти оттуда, чтобы выяснить, почему в нем отображается /home /cc /Downloads /software /envs /py2 /lib /.

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