chroot command: falha ao executar o comando ‘node’: Nenhum arquivo ou diretório [closed]

0

Eu corro este comando na linha de comando:

 $ sudo chroot . node test/simple.js

E eu recebo este erro:

chroot: failed to run command ‘node’: No such file or directory

faz sentido, já que o executável do nó está localizado em um arquivo abaixo do PWD. Então, o que é uma boa maneira de obter o executável do nó dentro do PWD, devo fazer uma ligação simbólica?

No final das contas , estou mais interessado em permitir que todos os executáveis sejam executados na jaula chroot, mas só permita ler e gravar em arquivos dentro da jaula chroot, AKA:

randos/
   node
   a.js
jail/
  foo/foo.js

digamos que eu faça:

cd jail/foo
sudo chroot . ../randos/node ../randos/a.js

que deve falhar porque eu não deveria ser capaz de ler randos / a.js. Mas se eu fizer isso :

cd jail/foo
sudo chroot . ../randos/node foo.js

então deve funcionar, mesmo que o arquivo executável do nó não seja um arquivo dentro da cadeia.

Além disso, como um aparte , se alguém souber como fazer o chroot rodar sem o sudo em um determinado diretório, isso será bom.

    
por Alexander Mills 24.11.2018 / 20:30

1 resposta

1

Eu usaria a opção de link simbólico.

Também para responder ao seu lado, eu iria editar o seu arquivo sudoers.

Adicione uma linha que pareça:

SOMEUSER  ALL=/usr/sbin/chroot /DIR/TO/JAIL
    
por 24.11.2018 / 21:02

Tags