
Итак, я оказался заблокированным на сервере (sshd, похоже, перестал отвечать). Я получил обратный шелл (добавил задание jenkins, которое дает мне обратный шелл), но я столкнулся с проблемой - su требует терминал и отказывается запускаться.
Итак, есть ли способ запустить su неинтерактивно или какой-то другой способ повысить уровень до моей обычной учетной записи?
решение1
Оказывается, я недостаточно хорошо погуглил, когда сдался и задал этот вопрос.
Ответ - делать так, какhttps://serverfault.com/a/495154/68820говорит, и беги
python -c 'import pty; pty.spawn("/bin/sh")'
внутри обратной оболочки, которая дает вам pty.
Сделав это, я смог войти в систему как обычный пользователь и перезапустить sshd.
решение2
Попробуйте с sudo. Это современный (и гораздо более безопасный способ)
Из команд типа этой:
echo "password"|su - -c "command"
echo -e "password\n"|su - -c "command"