Eu tenho acesso não-root a um terminal remoto que é fornecido pelo proprietário do terminal por meio de vários meios não-SSH, como AnyTerm e OCRSH. No entanto, gosto de executar sshd
nessa caixa porque quero executar aplicativos baseados em X usando o encaminhamento X11 e o AnyTerm / OCRSH não suporta o encaminhamento do X11.
Tudo estava bem no OpenSSH < 7.5, e eu poderia executar sshd
como não-raiz com UsePrivilegeSeparation
desativado - consulte esta resposta . No entanto, a partir do OpenSSH 7.5, parece que UsePrivilegeSeparation
não está mais disponível como uma opção - como alguém observou em outra resposta para a mesma pergunta .
Isso significa que estou basicamente preso sem poder executar sshd
se eu usar uma versão superior ao OpenSSH 7.4 (dezembro de 2016). A razão, obviamente, é que a separação de privilégios requer a troca de usuários no momento do login, e sshd
não poderá alternar para outro usuário, pois ele não está sendo executado como root.
Agora estou com algumas opções e alguma confusão:
UsePrivilegeSeparation
está "obsoleto". O que isso realmente significa? Normalmente, "obsoleto" significa que é uma opção ainda disponível, mas você receberá um aviso de descontinuidade se usá-lo. Mas a maneira como os documentos são redigidos faz parecer que a opção foi removida completamente, e toda menção a ela também foi removida da página sshd_config
. Ou essa "depreciação" significa que você ainda pode ativá-la por meio de alguma opção de tempo de compilação ao criar o OpenSSH a partir do código-fonte? sshd
em algum tipo de ambiente fakeroot
em que ele acha que é raiz, mas qualquer tentativa de setuid
falhará silenciosamente e permanecerá como o mesmo usuário?