Eu tenho um VPS que acessei usando o Terminal no passado. Quando abro o Terminal, recebo
Último login: terça-feira, 29 de agosto, 04:02:48 em ttys002 Mac-mini:~ administator$
Todos os artigos que consegui pesquisar no Google dizem usar
Isso retorna permissão negada quando eu digito a senha (tenho 100% de certeza de que a senha e o nome de usuário estão corretos). Eu sei que o motivo é porque o Terminal não está saindo do Mac. No passado, encontrei um comando que precisa ser digitado antes de você digitar "ssh[e-mail protegido]". É como se eu tivesse que digitar um comando para sair do host local dos Macs e depois inserir as informações do servidor ssh.
Minha pergunta é: alguém sabe qual é o comando? Vasculhei o Google e não consigo encontrar as informações que encontrei antes e minha página favorita foi removida.
Obrigado!!
Responder1
Supondo que o VPS esteja hospedado na AWS, o comando ausente de que você fala seria o caminho para o arquivo de acesso (.PEM). Por exemplo:
ssh -i path/to/AccessKey.pem [email protected]
Informações detalhadas aqui:https://99robots.com/how-to-ssh-to-ec2-instance-on-aws/
Responder2
Se você usar o ssh no Terminal Mac, você pretende se conectar a um servidor remoto executando o sshd (daemon ssh).
Para que isso aconteça, algumas coisas devem estar OK:
- você deve estar em uma rede (você tem um endereço IP e um roteador, o DNS é útil)
- o servidor remoto deve estar em uma rede
- essas redes devem interconectar-se de forma que o tráfego seja possível.
netstat -nr
mostrará a tabela de roteamento no osx, linux e windows (desde que o netstat seja permitido)traceroute
eping
pode ajudar, mas na internet eles geralmente são bloqueados. - se você trabalha em uma empresa, o ssh pode não ser permitido.
- o servidor remoto pode não permitir isso
- qualquer rede intermediária pode não permitir isso
Se todas as opções acima estiverem corretas, você pode tentar telnet server 22
assumir que ele roda na porta padrão e que o Sierra é o OSX mais recente. Isso revelará a conectividade TCP.
Agora vem o ssh. Ambos os lados deveriam concordar sobre todos os tipos de detalhes.
- O PasswordAuthentication provavelmente está desativado ou a senha pode estar armazenada em um servidor de diretório.
- você não deve se conectar como usuário root
- um mecanismo de autenticação alternativo deve ser usado, um par de chaves é muito comum, mas tokens, certificados, senhas de uso único e Kerberos são possíveis. Não sabemos, mas seu parceiro de hospedagem saberá. Os pares de chaves são usados por padrão. AWS e GCE têm seus próprios métodos, cada um com páginas de instruções.
- você deve ter acesso ao ssh e seus arquivos no seu Mac e esses arquivos devem ter permissões de arquivo restritivas.
- você deve ser capaz de adicionar o endereço IP a ~/.ssh/known_hosts
- se as chaves ssh do seu Mac estiverem no diretório (oculto) .ssh no seu diretório inicial. Use
ssh-keygen
para criar um par e enviar o arquivo pub ao administrador. - se você for o administrador local, deverá adicionar o arquivo pub ao arquivoauthorized_keys para o usuário Linux que precisa estar conectado. Uma sessão de console é necessária se ninguém puder usar o ssh. A localização do arquivo mencionada no arquivo sshd_config, normalmente $HOME/.ssh/authorized_keys.
Existem casos mais misteriosos, como cifras incompatíveis e versões incompatíveis, mas se ambas as extremidades estiverem atualizadas, o acima deve ajudá-lo a encontrar o problema. Caso contrário, você precisa de ajuda interna, ou seja, root no seu servidor sshd pode tail -f /var/log/secure
.