Não é possível SSH para VM

7

Eu tenho uma VM instalada com alguma imagem de disco personalizada (CentOS) do trabalho e não consigo SSH na VM.

Aqui estão algumas coisas que eu tentei:

[VM]$ ssh root@localhost
Password:

Ótimo, o ssh está trabalhando com o loopback.

Mas quando eu tento da máquina host:

~/VirtualBox VMs% ssh -v -v -v [email protected]
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.56.1 [192.168.56.1] port 22.
debug1: connect to address 192.168.56.1 port 22: Connection refused
ssh: connect to host 192.168.56.1 port 22: Connection refused

Nada. Ping funciona embora.

na VM, /etc/hosts.allow:

ssh:ALL:allow
sshd:ALL:allow

nada em hosts.deny

EDIT:
Eu também fiz:

service iptables save
service iptables stop
chkconfig iptables off

EDIT:
Também estou vendo essa mensagem na VM em / var / log / secure

MaseupossomuitobemsshdaVMparaaVM,entãoestenãoéoproblema,certo?

EDITAR:%código%

E eu tenho, em / etc / ssh / sshd_config

PermitRootLogin yes  

E não é possível fazer login com um nome de usuário separado.

EDIT: [VM]$ lsof -i :22 e netstat -pant |grep :22
EuachoquetalvezissotambémapontaparaasoluçãoIPv6?

EDIT:
Configuraçãoexistentepara%código%

Nova configuração para %código% Euentãoexecuteioscomandos:

sysctl-wnet.ipv6.conf.default.disable_ipv6=1sysctl-wnet.ipv6.conf.all.disable_ipv6=1chkconfigip6tablesoffservicesshdrestartinit6

Aaaaaaand,aindanada.Masdepoisdeumreinício,parecequeoipv6nãoestádesativado.Estourecebendoamesmamensagemdeerro. E netstat -ntp |grep :22 ainda está dizendo tipo IPv6:

EDIT:IndomaisabaixonoburacodocoelhoIPv6.
link
Ele diz para remover a linha comentada com vi /etc/sysctl.conf , o que parece suspeito, porque já está comentado. Então eu fiz e nada.

No entanto, a próxima seção tem um detalhe útil: %código% Quando adiciono esta linha a vi /etc/sysctl.conf e faço algumas reinicializações consecutivas, vejo agora que meu erro de associação de endereço parou de aparecer em lsof -i :22
easaídade#ListenAddress::agoramostraumtipodeIPv4! Progresso!! Mas infelizmente ainda não consigo me conectar. Eu tentei reiniciar a VM, abrindo novas janelas do shell apenas no caso de haver algum estado pendurado ao redor. Ainda a mesma resposta.

~% ssh -vvv [email protected]
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.56.1 [192.168.56.1] port 22.
debug1: connect to address 192.168.56.1 port 22: Connection refused
ssh: connect to host 192.168.56.1 port 22: Connection refused

EDIT:
ok, então eu tenho arp-scan e estou tentando encontrar conflitos de IP, mas agora estou ainda mais confuso. O ifconfig mostra que o vboxnet0, que é o adaptador somente para host, possui um IP de 192.168.56.1. É aí que eu comecei esse IP para começar.

[local]~root# ifconfig  
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 7c:d1:c3:e8:b0:e9 
    inet6 fe80::7ed1:c3ff:fee8:b0e9%en0 prefixlen 64 scopeid 0x4 
    inet 10.6.12.46 netmask 0xfffffe00 broadcast 10.6.13.255
    media: autoselect
    status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 0e:d1:c3:e8:b0:e9 
    media: autoselect
    status: inactive
vboxnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 0a:00:27:00:00:00 
    inet 192.168.56.1 netmask 0xffffff00 broadcast 192.168.56.255
vboxnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 0a:00:27:00:00:01 
    inet 192.168.57.1 netmask 0xffffff00 broadcast 192.168.57.255

Mas AddressFamily inet # IPv4 only fornece apenas os domínios que começam com 10.6. *. *
Então eu acho que está olhando en0? Então eu tentei usar /etc/ssh/sshd_config

mba-108-on-03:~ root# arp-scan -I vboxnet0 -l
Interface: vboxnet0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.56.100  08:00:27:bc:ed:2f   CADMUS COMPUTER SYSTEMS

512 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8: 256 hosts scanned in 1.301 seconds (196.77 hosts/sec). 1 responded

Por que agora é .100? #confused

vboxnet1 não tem nada

mba-108-on-03:~ root# arp-scan -I vboxnet1 -l
Interface: vboxnet1, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)

512 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8: 256 hosts scanned in 1.302 seconds (196.62 hosts/sec). 0 responded

Todas as outras interfaces não funcionam com o arp-scan.

Então, vamos mostrar duplicatas na interface en0:

mba-108-on-03:~ root# arp-scan -I en0 -l |grep DUP
10.6.12.68  84:8e:0c:75:5b:f4   (Unknown) (DUP: 2)
10.6.12.64  ac:cf:5c:42:24:47   (Unknown) (DUP: 2)
10.6.12.76  88:53:95:6e:6a:af   (Unknown) (DUP: 2)

Esses números não correspondem a nada significativo para mim. Indo tentar uma reinicialização, então a sugestão de IPv6.

EDIT:
A VM é um VirtualBox.
Adaptador 1: NAT
Adaptador 2: Adaptador somente para host, 'vboxnet0'
Alguma idéia?

    
por Ken 06.02.2014 / 05:28

3 respostas

4

Ok, aqui está como finalmente surgiu:

Um de meus colegas de trabalho lembrou que a imagem do disco "pode não ter uma segunda interface ativada". Como o VBox está configurado com NAT como adaptador one e somente Host como adaptador dois, você precisa ter eth0 e eth1 configurados na imagem de disco. Nós não.

Para fazer isso:

  • verifique se ifconfig |less não tem eth0 e eth1 listado.
  • cd /etc/sysconfig/network-scripts/
  • cp ifcfg-eth0 ifcfg-eth1
  • cp ifcfg-eth0.bak ifcfg-eth1.bak
  • edite os arquivos e remova qualquer coisa com HWaddr e altere eth0 para eth1
  • ifup eth1
  • execute ifconfig e pegue o inet addr de eth1, que era um IP diferente para mim. Agora estou trabalhando com 192.168.56.101.
  • faça o init 6 para reiniciar e certifique-se de que o eth1 seja iniciado automaticamente agora.
  • faça login no host: ssh [email protected]

Nenhuma das edições da pergunta acima foi realmente um problema meu, mas é uma boa informação de depuração !!

Felicidades,
Ken

    
por 06.02.2014 / 20:40
3

Parece que o daemon ssh está usando o IPv6 (da saída de lsof -i :22 ) enquanto você está tentando se conectar ao IPv4. O sistema não saberá como encaminhar o tráfego.

Não tenho certeza sobre o conflito de IP que você está vendo, mas sugiro tentar o seguinte:

  1. Desativar o IPv6

    Adicione o seguinte a /etc/sysctl.conf

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1
    

    Desativar o IPv6 no sistema em execução

    sysctl -w net.ipv6.conf.default.disable_ipv6=1
    sysctl -w net.ipv6.conf.all.disable_ipv6=1
    

    Desativar iptables para IPv6

    chkconfig ip6tables off
    
  2. Reinicie alguma coisa!

    Você terá que reiniciar o daemon ssh ou o sistema operacional para que as alterações entrem em vigor.

    Então, reinicie o sshd

    service sshd restart
    

    Ou reinicie o sistema operacional

    init 6
    

Não esqueça que você pode não ter uma rota para o host e pode pensar em usar o modo em ponte para que o servidor DHCP possa distribuir um endereço correto.

Você também pode ler o Wiki do CentOS para obter mais informações sobre como desabilitar o IPv6

    
por 06.02.2014 / 17:04
0

Sua conexão foi recusada porque você está tentando usar o ssh como usuário root? (Eu posso estar errado).

tente:

ssh <host_username>@<ipaddress> 

Você também está usando um mac? Em caso afirmativo, tente ativar o login remoto em Preferências do sistema - > Compartilhamento verificar login remoto.

    
por 06.02.2014 / 06:34

Tags