Автоматизация входа в систему по SSH дает неотзывчивую удаленную оболочку, возвращающуюся в клиентский терминал (без ошибок)

У меня проблема с ожидаемым инструментом в Ubuntu 14.04 LTS. Я хочу автоматизировать ssh-входы в некоторые межсетевые экраны Sophos UTM и сразу же сообщить свои права с помощью sudo su - и правильного пароля. Мне не нужно беспокоиться о паролях в виде простого текста, потому что мой скрипт запускается прямо из поля URL-адреса KeePass (двойной щелчок запускает скрипт и заполняет его правильными паролями через agrument / KeePass {Placeholder} позади скрипта). Мне удалось все это сделать, за исключением наличия оболочки удаленного корня, которая не выполняет никаких команд и «сбрасывает соединение» обратно в мою систему Ubuntu. Таким образом, команда, которую я пытаюсь запустить удаленно, не выполняется в течение 4-5 секунд, а затем неожиданно выполняется в системе Ubuntu, не сообщая мне, что произошло.

Что мне нужно сделать, чтобы иметь полностью функционирующую удаленную оболочку? SSH-ключи и прямой вход в систему root не являются решением для меня, поскольку у нас слишком много UTM Sophos.

Объясняется, что происходит:

sshtool.sh:
#!/usr/bin/expect -f
spawn sshpass -pPASSWORD ssh -t loginuser@192.168.1.254 "sudo su -"
expect -- "oot's password:"
send "PASSWORD\r"
expect -- "/root #"
expect eof



What happens in the terminal:
vct@vct-virtual-machine:~$ ./sshtool.sh
spawn sshpass -pPASSWORD ssh -t loginuser@192.168.1.254 sudo su -
root's password:
utm:/root # whoami
# *enter*
# not reacting for 4-5 seconds
vct@vct-virtual-machine:~$ whoami
vct
vct@vct-virtual-machine:~$

Изменение сценария, как это, не помогает с проблемой разрыва соединения:

sshtool.sh:
#!/usr/bin/expect -f
spawn ssh loginuser@192.168.1.254
expect -- "password:"
send "PASSWORD\r"
expect -- "/home/login > "
send -- "sudo su -\r"
expect -- "oot's password:"
send "PASSWORD\r"
expect -- "/root #"
send -- "whoami\r"
expect eof


vct@vct-virtual-machine:~$ ./sshtool.sh
spawn ssh loginuser@192.168.1.254
loginuser@192.168.1.254's password:
Last login: Mon Apr 18 09:14:41 2016 from 192.168.1.44


Sophos UTM
(C) Copyright 2000-2015 Sophos Limited and others. All rights reserved.
Sophos is a registered trademark of Sophos Limited and Sophos Group.
All other product and company names mentioned are trademarks or registered
trademarks of their respective owners.

For more copyright information look at /doc/astaro-license.txt
or http://www.astaro.com/doc/astaro-license.txt

NOTE: If not explicitly approved by Sophos support, any modifications
      done by root will void your support.

<M> loginuser@utm:/home/login > sudo su -
root's password:
# Following "whoami" directly executed by the script itself works fine
<M> utm:/root # whoami
root
# After 4-5 seconds, it's dropping the connection again
<M> utm:/root # vct@vct-virtual-machine:~$

Заранее спасибо!

2
задан 18 April 2016 в 10:53

1 ответ

У меня была проблема, подобная этому. Проблема была то, что мой удаленный .bashrc файл имел некоторые строки, чтобы ничего не сделать, не работая в интерактивном режиме.

0
ответ дан 18 April 2016 в 20:53
  • 1
    Спасибо за Ваш ответ, который, кажется, разумен, но к сожалению это didn' t работа. I' ve пытался перезагрузить сетевой модуль (tg3 в моем случае) как в Вашем сценарии и пытался перезапустить администратора сети. – PeterM 11 October 2017 в 00:53

Другие вопросы по тегам:

Похожие вопросы: