SSH do emulador do terminal tentando ler /data/.ssh em vez de $ home / .ssh -- ssh campo com terminal camp android Relacionado O problema

Terminal emulator's ssh trying to read /data/.ssh instead of $HOME/.ssh


7
vote

problema

português

Quando eu tento usar o SSH do emulador do terminal, obtenho

.

ssh: AVISO: Falha ao criar /data/.ssh: Permissão negada.

ou desde 2012-08-19:

.

Não foi possível criar diretório '/ data / ssh_client'.

mas quando eu digito:

  echo $HOME /sdcard    

Por que a verificação do SSH não é o /sdcard/.ssh ou /sdcard/ssh_data ?

english

When I try using Terminal emulator's ssh I get

ssh: Warning: failed creating /data/.ssh: Permission denied.

or since 2012-08-19:

Could not create directory '/data/ssh_client'.

But when I type:

echo $HOME /sdcard 

Why isn't ssh checking /sdcard/.ssh or /sdcard/ssh_data?

     
     
     

Lista de respostas

3
 
vote

Isso não acontece quando você executa ssh como root.

/ sdcard é um inseguro (!) Local para configuração do cliente SSH e teclas valiosas (alguns usuários nem sequer criptografam suas chaves por razões de preguiça). Cada aplicativo leu o acesso a esse local, então este é provavelmente definido deliberadamente não para /sdcard/.ssh por razões de segurança.

Se você tiver acesso root, crie um symlink de / data / ssh_data ou /data/.ssh para /data/jackpal.androidterm/ ou criar a pasta com direitos de acesso apropriados para o aplicativo de terminal (não sistema de leitura / gravação do sistema embora!).

pelo caminho:
Isso pode ser corrigido em breve. Ver o log de commit do cyanogenmod rel="nofollow noreferer"> aqui . Excert:

.

Alguns usuários têm / como diretório inicial, alguns / dados. Este commit corrige ssh e ssh-keygen tentando criar /.ssh que é volátil e somente leitura de qualquer maneira.

Para permitir um aplicativo (por exemplo, emulador de terminal Android) para usar o SSH / dados / ssh_client ainda tem que existir e permissões do proprietário precisam ser Defina para o usuário do aplicativo. Isso pode ser corrigido usando os dados reais diretório (/ dados / dados / app ") em um commit posterior.

 

This doesn't happen when you run ssh as root.

/sdcard is an unsafe(!) location for ssh client config and valuable keys (some users don't even encrypt their keys for reasons of laziness). Each app has read access to that location, so this is most probably set deliberately not to /sdcard/.ssh for security reasons.

If you have root access, create a symlink from /data/ssh_data or /data/.ssh to /data/jackpal.androidterm/ or create the folder with appropriate access rights for the terminal app (not system wide read/write though!).

By the way:
This might be fixed soon. See CyanogenMod's github commit log here. Excerpt:

Some users have / as home directory, some /data. This commit fixes ssh and ssh-keygen trying to create /.ssh which is volatile and read-only anyway.

To allow an app (e.g. Android Terminal Emulator) to use ssh /data/ssh_client still has to exist and owner permissions need to be set to the app user. This could be fixed by using the real data directory (/data/data/"app") in a later commit.

 
 

Perguntas relacionadas

0  PHP com suporte do MySQL da linha de comando no Android  ( Php with mysql support from the command line on android ) 
Existe um emulador de terminal para Android, que permite usar VI e PHP com suporte ao MySQL? PS. Termux Infelizmente não permite conectar PHP ao mysql. ...

0  Depois de definir programaticamente a resolução através de um aplicativo, como posso fazer o dispositivo lembrar da nova configuração?  ( After programmatically setting the resolution through an app how can i make the ) 
Então estou definindo a resolução editando os arquivos do sistema. Esta tem sido a única maneira que funciona para mim. Mais precedentemente eu emitir este co...

3  Instalar split apk manualmente  ( Install split apk manually ) 
Recentemente eu tenho que saber uma coisa chamada Split APKS, e encontrei as fatias como arquivos APK inválidos, apenas a base é. Infelizmente, isso significa...

3  Como instalar pacotes de comandos de terminais adicionais para dispositivos enraizados?  ( How to install bundles of additional terminal commands for rooted devices ) 
Eu enraizei um dispositivo HTC Wildfire s recentemente e piscou um Android 4.1.2 AOKP Jelly Bean Custom ROM. Um benefício é que eu posso usar o terminal agora...

13  Um terminal real (raiz ou não-raiz)  ( A real terminal root or no root ) 
Eu uso o kubuntu no meu laptop, mas isso vai para qualquer distro Linux. Eu posso abrir uma janela de terminal e digitar coisas como sudo apt-get update , s...

9  O acesso ao logcat precisa de root?  ( Does access to logcat need root ) 
meu dispositivo já está enraizado, é por isso que estou perguntando. Você precisa de root para monitorar o fluxo do logcat no telefone? Se eu correr o comand...

16  É possível habilitar os serviços de localização via shell?  ( Is it possible to enable location services via shell ) 
É possível habilitar os serviços de localização (GPS ou o Google NetworkLocation) via adb ou emulador de terminal? Eu estou em um telefone enraizado. Pontos...

7  SSH do emulador do terminal tentando ler /data/.ssh em vez de $ home / .ssh  ( Terminal emulators ssh trying to read data ssh instead of home ssh ) 
Quando eu tento usar o SSH do emulador do terminal, obtenho . ssh: AVISO: Falha ao criar /data/.ssh: Permissão negada. ou desde 2012-08-19: . Não foi p...

1  Fechamento / matando "Android Terminal Emulator" App  ( Closing killing android terminal emulator app ) 
Eu tenho um Sprint LG G3 rodando Android 4.4.2. Estou usando emulador de terminal Android por jackpal. Respawn depois de fechar o aplicativo. Eu vejo o proc...

8  Executando aplicativos de um emulador de terminal [fechado]  ( Running applications from a terminal emulator ) 
. FECHADO. Esta questão é off-tópico . Atualmente não está aceitando respostas. Quer melh...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.