Confundido com ssh - Permissão negada (publickey)

0

Como configuro corretamente o open-ssh no Debian? Eu tinha tudo funcionando - fazendo o login usando uma chave de autenticação (PasswordAuthentication definido como não), então de repente eu recebo uma Permissão negada (publickey) . Então eu desinstalei o ssh no servidor e no cliente remoto. Então me meti numa confusão - a reinstalação não conseguiu configurar os diretórios .ssh no nível raiz ou de usuário.

Histórico:

Instalei o open-ssh no meu servidor - como root Eu instalei o open-ssh no meu pc cliente remoto - como root

Gerei minha chave pública e privada no meu servidor - como root.
Gerei minha chave pública e privada no meu pc remoto - como root

Eu criei um arquivo de chaves autorizadas no diretório .ssh no meu servidor - como usuário - e copiei na chave pública do meu pc remoto

Eu modifiquei meu arquivo de configuração ssh para não permitir login de senha

Minhas perguntas:

Você deve sempre instalar o open-ssh como root?

Se assim for, então propagar para todos os usuários, dando-lhes permissão para aceitar uma conexão ssh?

Você cria o arquivo de chave autorizado como raiz ou no nível do usuário?

Eu desinstalei tudo * com apt-get purge openssh-client , mas ele deixou os diretórios .ssh em todo o lugar. Essa prática é comum no Linux e está tudo bem excluir apenas esses diretórios restantes manualmente?

Felicidades

    
por Chezzers 03.04.2018 / 05:18

1 resposta

1

Parece que falta alguns elementos no seu entendimento -

Praticamente você precisa instalar o ssh aberto como root - por padrão ele fala na porta 22 que é restrita ao root. Você provavelmente poderia configurá-lo para responder em uma porta não padrão acima de 1024 (normalmente 2222).

ssh não "se propaga" - ele é executado como um daemon. No entanto, normalmente irá procurar nos diretórios home dos usuários por ~ user / .ssh / authorised_keys

Você normalmente criaria um arquivo authorised_keys para cada usuário no sistema. Note que o servidor SSH também possui suas próprias chaves, que geralmente podem ser encontradas em / etc / sshd

Se não houver nada a não ser o material SSH, não é necessário excluir as chaves .ssh nos diretórios base manualmente. Também é permitido deixá-los, porque o cliente e o servidor são duas coisas diferentes, mas ambos usam o mesmo diretório em algumas instâncias.

Tratamento de chaves -

Você geralmente criaria uma chave privada e pública no seu cliente, em seguida, adicionaria a chave pública ao seu servidor em ~ user / .ssh / authorized_keys - Você não precisa gerar uma chave privada ou pública no servidor para o usuário - a menos que você também queira que o usuário use o servidor como um cliente ssh.

Geralmente, as chaves pertenceriam ao usuário a que pertencem e as chaves privadas teriam permissão de 600. Você também pode ter as chaves de propriedade de root, mas isso impedirá que o usuário as altere.

    
por 03.04.2018 / 06:39

Tags