Вот выдержка из файла /etc /passwd на удаленной машине.

root:x:0:0:root:/root:/bin/bash
valid:x:0:0::/home/valid:/bin/rbash

Как видите, valid - это альтернативное имя для root.

Я могу SSH к любой из учетных записей с помощью обычной команды SSH:

ssh root@remoteMachine
[...]
# whoami
root
# pwd
/root

а также

ssh valid@remoteMachine
[...]
> whoami
<command unknown>
> pwd
<command unknown>

(мы отключили команды с помощью rbash)

Теперь, однако, при подключении к remoteMachine от имени пользователя "valid" с помощью libssh, удаленно работающий whoami возвращает root , а pwd возвращает /home/admin . Также кажется, что оболочка, в которой все работает, это rbash (находится с помощью ps -ef | grep tototototo)

Вопрос: это какая-то ошибка в libssh, или это ошибка в ssh, которая не появится в командной строке ssh?

0