Como tornar o SSH persistente no jailbreak do liberTV para Apple TV 4

Se você está mexendo no seu Apple TV 4 desbloqueado no tvOS 10 com o liberTV, pode ter notado que seu cliente SSH embutido, Dropbear, tem uma tendência a ser eliminado de vez em quando, exigindo que seja gerado novamente e configurar novamente. Isso se deve ao desejo (admirável) do desenvolvedor de reter todos os arquivos relacionados ao jailbreak em pastas temporárias no sistema de arquivos, reduzindo o risco de bloquear o dispositivo enquanto mexe com ele quase zero. No entanto, se você estiver confiante o suficiente para mover alguns arquivos para fora da pasta temporária, poderá facilmente colocar seu cliente SSH em funcionamento persistentemente, evitando as reconfigurações tediosas que ocorrem de outra forma.

Antes de começar, leia o guia para entender o que estamos fazendo, incluindo minhas observações finais na Etapa 17. Embora esse processo deva ser muito seguro, tenha cuidado e bom senso e não substitua nenhum arquivo pré-existente que você obviamente não colocou lá você mesmo.

Como tornar o Dropbear persistente

1) Verifique se o Apple TV 4 está em estado de jailbreak via liberTV. Meu guia mostrará como fazer isso.

2) Conecte-se à sua Apple TV via SSH e verifique se alterou suas senhas padrão. Meu guia mostrará como fazer isso.

3) Abra uma sessão SSH na Apple TV, conforme detalhado no guia vinculado na Etapa 2, e execute o seguinte comando:

exportar PATH = / tmp / bin: / tmp / usr / bin: / tmp / usr / local / bin: / tmp / sbin

4) Agora digite os seguintes comandos, um de cada vez (cada linha é um comando a ser inserido separadamente):

cd /
ls

5) Passamos para a raiz do sistema de arquivos e listamos as pastas lá. Verifique se você tem uma pasta chamada tmp; é aqui que estão nossos arquivos do Dropbear. Agora digite o seguinte:

cd tmp
ls

6) Procure uma pasta chamada etc, e se presente, CD afim disso:

cd etc
ls

7) Agora, procure uma pasta no etc intitulado queda de urso. Se presente, CD afim disso:

cd dropbear
ls

Devemos ver os arquivos do Dropbear nos quais estamos interessados ​​listados aqui. No meu caso, havia apenas um, dropbear_ecdsa_host_key, embora você possa ter outros. Verifique se você pode vê-los nesta pasta, que é / tmp / etc / dropbear /. Se não conseguir, verifique se está na pasta correta. Você pode retornar à raiz a qualquer momento e começar novamente com cd /, Seguido por ls, se necessário. Se você não conseguir encontrá-los ou estiver no diretório errado, o processo não funcionará, e é por isso que precisamos verificá-los visualmente antes de continuarmos..

Se eles estiverem lá, podemos agora criar um novo lar para eles no sistema de arquivos permanente e copiá-los da precária pasta temporária em que começaram..

Faça isso por sua conta e risco! Embora isso deva ser perfeitamente seguro, não serei responsável por erros humanos. Se você substituir quaisquer binários do sistema existentes, será forçado a restaurar o Apple TV, copie apenas os itens listados aqui e verifique se eles ainda não existem no destino primeiro.

8) Digite o seguinte para se afastar dos arquivos verificados do Dropbear em tmp, e mova para o local para o qual queremos copiá-los:

cd / etc
ls

Agora você deve ver o conteúdo do sistema etc pasta.

9) Queremos fazer uma pasta aqui em etc chamado queda de urso, o que fazemos com o seguinte comando:

mkdir ./dropbear

Tipo ls novamente e verifique se o conteúdo de etc são como antes, exceto pela adição do novo queda de urso pasta que acabamos de criar.

10) Se todo o conteúdo ainda estiver lá, mais nosso novo queda de urso pasta, emita o seguinte comando para copiar nossos arquivos do Dropbear de / tmp / etc / dropbear para o novo local em / etc / dropbear:

mv / tmp / etc / dropbear / *… / etc / dropbear /

Meu sistema relatou um erro "Não existe esse arquivo ou diretório" aqui, mas funcionou independentemente.

11) Verifique se a cópia foi bem-sucedida, digitando cd dropbear, Seguido por ls, e certificando-se de que nossos arquivos (dropbear_ecdsa_host_key e quaisquer outros que você viu na Etapa 7), estão presentes.

Agora, movemos o conteúdo de / tmp / etc / dropbear para / etc / dropbear, onde eles não serão removidos pelo sistema.

Agora devemos mover um segundo grupo de arquivos da mesma maneira, de / tmp / usr / local / bin para / usr / local / bin.

12) Digite o seguinte para ir para / tmp / usr / local / bin, e verifique seu conteúdo, pronto para copiar:

cd / tmp / usr / local / bin
ls

Você deve ver uma coleção de arquivos relacionados ao Dropbear, eu tinha oito no total. Se eles não estiverem lá, verifique se você está no diretório certo. Se você não conseguir encontrá-los no diretório correto, o processo não funcionará.

13) Depois de verificar os arquivos que desejamos, vamos para onde queremos movê-los, digitando:

cd / usr
ls

Verifique a lista de conteúdos e verifique se já não existe uma pasta chamada local. Se houver, não o substitua. No meu caso (e no seu também), não deve haver uma local pasta lá inicialmente.

14) Vamos criar um local pasta em usr:

mkdir ./local
ls

Verifique se o conteúdo de usr são como antes, exceto pela adição do novo local pasta que acabamos de criar.

15) E se local foi criado com sucesso, CD nele e crie uma pasta dentro dele chamada bin, igual a:

cd local
mkdir ./bin
ls

Verifique se o nosso bin pasta está agora listada sob o ls comando que acabamos de enviar.

16) E se bin está listado, criamos com sucesso a estrutura de pastas / usr / local / bin, e estamos prontos para copiar nossos arquivos para ele a partir de / tmp / usr / local / bin. Podemos fazer isso com o seguinte comando:

mv / tmp / usr / local / bin / *… / usr / local / bin /

Como na Etapa 10, meu sistema relatou um erro "Não existe esse arquivo ou diretório" aqui, mas funcionou independentemente.

17) Para verificar se a cópia foi bem-sucedida, digite bin bin, Seguido por ls, e verifique se nossos arquivos (dropbearconvert, dropbearkey, e todos os outros que você viu na Etapa 12, dos quais eu tinha oito), estão presentes.

Se eles são, então estamos prontos! Nós movemos todos os arquivos relacionados ao Dropbear de / tmp, onde eles são periodicamente limpos, no sistema de arquivos, onde serão persistentes. Especificamente, movemos o conteúdo de / tmp / etc / dropbear para / etc / dropbear, e o conteúdo de / tmp / usr / local / bin para / usr / local / bin.

Agora você pode invocar o SSH via Dropbear a qualquer momento em que o Apple TV 4 estiver em estado de jailbroken com o liberTV, sem se preocupar com o SSH ter sido apagado e exigir outra configuração. Lembre-se de usar qualquer um dos comandos que você está acostumado, como CD, passwd, ou ls, você precisará emitir o comando abaixo uma vez por sessão do Terminal SSH primeiro, ou eles não estarão disponíveis:

exportar PATH = / tmp / bin: / tmp / usr / bin: / tmp / usr / local / bin: / tmp / sbin

Boa sorte!

Não substitua QUALQUER binários do sistema. Se em algum momento deste guia você encontrar uma versão já existente de um arquivo no sistema de arquivos da Apple TV, NÃO a substitua pela versão de / tmp.

Isso não deve acontecer, mas verifique novamente o conteúdo dos diretórios antes de copiá-los e sempre verifique onde você está no sistema de arquivos antes de emitir qualquer comando de / para / nele.

Precisa de mais ajuda com este guia? Prazer em finalmente ter uma configuração SSH persistente no seu Apple TV 4? Deixe-me saber seus pensamentos na seção de comentários ...