Gostaria de adicionar um usuário à minha instância AWS e fazer ssh como esse usuário com o par de chaves existente.
Agora posso fazer login na minha instância da AWS como root:
ssh -i ~/path/mysshkeypair.pem root@EC2-my###-###.compute-1.amazonaws.com
Logado como root, criei outro usuário e dei a ele um diretório inicial. Posso digitar "su otheruser" e navegar. Mas quando volto para minha máquina e tento:
ssh -i ~/path/mysshkeypair.pem otheruser@EC2-my###-###.compute-1.amazonaws.com
Recebo: Permissão negada (chave pública).
Que etapas preciso seguir para poder fazer login como outro usuário?
Minha máquina é um Mac e a instância é uma máquina Ubuntu.
Responder1
Presumo que você esteja usando uma configuração SSH não modificada.
Você está tentando usar a mesma chave SSH privada com diferentes usuários do Ubuntu. No entanto, o servidor SSH na máquina Ubuntu tentará encontrar a chave SSH pública correspondente apenas no diretório inicial do usuário de login, ou seja, 'outro usuário' no seu caso, e aparentemente você não forneceu a chave SSH pública em questão lá também.
Você pode fazer isso funcionar anexando as chaves SSH públicas do usuário 'root' (geralmente contidas em /root/.ssh/authorized_keys
) àquelas do usuário 'otheruser' (geralmente contidas em /home/otheruser/.ssh/authorized_keys
), ou seja, no seu caso, você provavelmente pode apenas copiar o primeiro para o último.
Observe que, caso a configuração do seu servidor SSH já tenha sido reforçada, podem ser necessários ajustes adicionais para permitir o acesso SSH para 'outro usuário' em primeiro lugar (por exemplo, anexando 'outro usuário' aoPermitir usuáriosdiretiva dentro de /etc/ssh/sshd_config
), no entanto, isso seria incomum para qualquer instância padrão do AWS Ubuntu.