permissão negada para root @ localhost para conexão ssh

28

Acabei de instalar o Ubuntu 14.04 e o LAMP nisso. Então, eu queria configurar meu servidor, então tentei este tutorial.

Quando eu dou o comando:

ssh root@localhost

Recebo: permissão negada, tente novamente. Eu entrei como usuário root através do comando:

sudo -i

Eu também tentei o mesmo, efetuando login através de:

sudo -s

Eu uso a mesma senha usada para fazer login como usuário, mas ainda estou recebendo a mesma mensagem de erro.

Alguém poderia me ajudar aqui?

PS: Analisei esta questão, mas não pareceu funcionar para mim.

vnay92
fonte

Respostas:

57

Por padrão, o servidor SSH nega o login baseado em senha para root. Em /etc/ssh/sshd_config, altere:

PermitRootLogin without-password

para

PermitRootLogin yes

E reinicie o SSH:

sudo service ssh restart

Ou, você pode usar chaves SSH. Se você não tiver um, crie um usando ssh-keygen(atenha ao padrão da chave e pule a senha, se quiser). Em seguida, faça sudo -s(ou qualquer que seja o seu método preferido de se tornar root) e adicione uma chave SSH a /root/.ssh/authorized_keys:

cat /home/user/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
muru
fonte
Eu recebo este erro: cat: /home/user/.ssh/id_rsa.pub: Esse arquivo ou diretório não existe.
vnay92
Ah. Sorry. I assumed you had an SSH key. As your user, do ssh-keygen (skip a password for the SSH key if you wish, and stick to the defaults for the rest) to create one. Also, I hope you replaced user with your actual username.
muru
Ambos os métodos não funcionaram para mim! Até chequei minha pasta pessoal; está vazio. O que devo fazer?
Heich-B
5

Em alguns casos, após a alteração,

PermitRootLogin yes

deve verificar esta configuração:

DenyUsers root
AllowUsers saeid

e para ativar o login, é necessário alterar para:

#DenyUsers root
AllowUsers root OtherUser
Amini
fonte
4

Se você não forneceu a senha para root e está tentando disparar um comando no spark ou no haddop ./sbin/stop-all.sh or./sbin/start-all.sh. Se você não possui uma senha root, pode configurar uma usando

sudo passwd

e comandos de fogo.

D Nilesh
fonte
1

Eu tive um problema semelhante a isso. Eu precisava de dois PCs , um no Ubuntu e outro no Arch , para sincronizar arquivos através do Unison, mas tive a mesma permissão negada. Apenas para quem está tendo o mesmo problema que eu, eis o que eu fiz:

Primeiro: instalou a mesma versão do Unison nos dois computadores. Isso foi um pouco desafiador, já que o disponível no centro de software estava atrasado em relação ao que estava prontamente disponível para o Arch. Portanto, não consegui encontrar uma versão superior para o Ubuntu, então substituí a do Arch por uma inferior. Encontrei um aqui: http://zdia.de/downloads/unison-2.40.102-linux-x86_64 . A mesma versão está no centro de software do Ubuntu.

Segundo: Siga as etapas aqui: https://www.howtoforge.com/setting-up-unison-file-synchronization-between-two-servers-on-debian-squeeze (Nota: Arch era meu servidor 1 e o Ubuntu era meu servidor 2.)

Encontrei um problema na etapa 3 ao tentar copiar ssh. Mas foi resolvido alterando "id_dsa.pub" para "id_rsa.pub" na linha "ssh-copy-id -i $ HOME / .ssh / id_dsa.pub [email protected]". Provavelmente minha culpa, pois acho que esqueci de adicionar "-t dsa". De qualquer forma, tente o comando original primeiro. SE você receber um erro, em seguida, mudar para RSA.

Depois de seguir as etapas acima, descobri que ainda não consegui fazer com que o Unison se conectasse ao outro servidor, nem consigo efetuar login (sem o Unison) através do ssh no outro servidor. Finalmente, depois de horas de busca no google, fui levado a esta página e a resposta dada pelo meu Muru selou o acordo.

Depois de aplicá-lo, agora eu podia entrar via SSH no servidor 2.

Então, eu executei o Unison, corrigi as configurações do perfil e viola!

Josh Buzz
fonte