Resposta curta
Você provavelmente não pode - falar com seu administrador de sistema.
Resposta mais longa
Em primeiro lugar, o fato de o diretório /home
estar vazio (e mesmo que não exista) não significa necessariamente que o usuário não tenha um diretório pessoal. Você pode tentar ver o valor da variável de ambiente HOME
:
$ echo $HOME
/path/to/nonstandard/homedirectory
ou use o comando getent
:
$ getent passwd username
username:*:1001:1001:User Name:/path/to/nonstandard/homedirectory:/bin/bash
Se o usuário realmente não tiver um diretório inicial, ainda será possível usar uma chave pública se o administrador do servidor tiver definido um local fora do padrão para o arquivo authorized_keys
.
Supondo que você esteja usando o OpenSSH , o local do arquivo authorized_keys
pode ser especificado pela palavra-chave AuthorizedKeysFile
no sshd_config
arquivo de configuração. Consulte a documentação para mais informações:
O valor padrão é ~/.ssh/authorized_keys
. Você terá que olhar as configurações em /etc/ssh/sshd_config
para ver se o padrão está sendo cancelado. Como você não tem acesso root, provavelmente terá que pedir ajuda ao administrador do sistema se quiser fazer alguma alteração.
Se você não tiver um diretório pessoal, que o administrador do sistema não configurou um local diferente para o arquivo authorized_keys
e você não tiver privilégios administrativos em sua máquina, provavelmente não será capaz de usar a autenticação baseada em chave - fale com o seu administrador de sistema.