Estou tentando resolver um problema de conexão SSH em um telefone Android executando SELinux
no modo "Impingir". O problema é que qualquer conexão SSH que tenta alocar um pseudo-terminal ( /dev/pts
etc) é negada permissão, deixando minha conexão sem um controle tty. Praticamente isso significa que eu perdi a capacidade de usar o controle de terminal normal para edição, histórico de comandos, caracteres CTRL etc.
Presumivelmente, isso significa que o SELinux está impedindo que o daemon SSH abra /dev/ptmx
.
Não tenho ideia de como remediar esta situação altamente irritante, a partir do dispositivo do servidor SSH (telefone).
Estou executando o SSHelper em uma porta não privilegiada 2222 em um Samsung S4 usando uma versão do SELinux Enforcing AOS 4.2.2 . O mais estranho é que eu tenho acesso root usando su em "Enforcing", mas quando eu desabilito "Enforcing" e vou em "Permissive", tudo funciona no terminal, mas não consigo mais usar su para ganhar raiz! (Simplesmente sem reação e sem mensagem de erro.)
Portanto, deve haver uma maneira de controlar isso no SELinux, mas onde e como?
Ou isso é uma trivialidade e eu só perdi alguma coisa?
Para conexão SSH no modo Impingir , eu uso:
$ ssh -2 [email protected] -p 2222
SSHelper Version 6.3 Copyright 2014, P. Lutus
[email protected]'s password:
PTY allocation request failed on channel 0
Linux 3.4.0-2340422 armv7l
Isso me faz um shell não tty sem prompt, limitando severamente quaisquer possibilidades de edição.
PS. Eu já tentei com ssh -t ...
, não vá.