não consegue encontrar o tráfego da porta 22 no VirtualBox

2

Estou tentando aprender a usar o tcpdump. Eu pensei em escutar meu login no ssh. A configuração é um pouco incomum, eu tenho o OS X Lion rodando o VirtualBox, com o Ubuntu rodando na VM. Eu tenho ssh habilitado e pode entrar no OS X normalmente:

> ssh -p 22 10.0.1.2 -l telliott
Welcome to Ubuntu 11.10 (GNU/Linux 3.0.0-17-generic i686)

 * Documentation:  https://help.ubuntu.com/

0 packages can be updated.
0 updates are security updates.

Last login: Sat Mar 31 19:54:36 2012 from toms-mac-mini.local
telliott@U32:~$ logout
Connection to 10.0.1.2 closed.
>

Eu tenho não ofuscado a porta ssh no Ubuntu. Do OS X, o traço dá o que eu esperava:

> ./stroke 10.0.1.2 22 22
Port Scanning host: 10.0.1.2

     Open TCP Port:     22          ssh

Então, no OS X, eu faço:

> sudo tcpdump -i en1 -v port 22
Password:
tcpdump: listening on en1, link-type EN10MB (Ethernet), capture size 65535 bytes

Então eu faço o login do OS X para o Ubuntu usando o ssh, mas não vejo nada com o tcpdump. Aqui está o ifconfig do Ubuntu:

telliott@U32:~$ ifconfig
eth1      Link encap:Ethernet  HWaddr 08:00:27:d7:ba:0e  
          inet addr:10.0.1.2  Bcast:10.0.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fed7:ba0e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:799 errors:0 dropped:0 overruns:0 frame:0
          TX packets:465 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:96863 (96.8 KB)  TX bytes:68638 (68.6 KB)

Onde estão os pacotes que eu esperava ver? Obrigado por qualquer ajuda.

Atualização: no OS X

> 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
    options=27<RXCSUM,TXCSUM,VLAN_MTU,TSO4>
    ether 60:fb:42:f4:cd:9e 
    media: autoselect
    status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 00:26:b0:fa:75:7f 
    inet6 fe80::226:b0ff:fefa:757f%en1 prefixlen 64 scopeid 0x5 
    inet 10.0.1.3 netmask 0xffffff00 broadcast 10.0.1.255
    media: autoselect
    status: active
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
    lladdr 60:fb:42:ff:fe:f4:cd:9e 
    media: autoselect <full-duplex>
    status: inactive

Atualização 2:

Percebeu que esta é uma pergunta boba porque (i) o tcpdump na porta 22 no Ubuntu funciona como você esperaria e (ii) eu nunca abri a porta 22 no OS X. ssh está trabalhando com alguma mágica da "ponte" "modo da VM que ainda não entendi. Estou tentando fazer com que a solução abaixo funcione, como tenho certeza que será.

    
por telliott99 01.04.2012 / 02:19

1 resposta

1

Tente definir uma das interfaces das VMs como somente host e use o tcpdump para ouvir em vboxnet0

% sudo tcpdump -AXvnn -s0 -ivboxnet0 port 22
tcpdump: WARNING: vboxnet0: That device doesn't support promiscuous mode
(BIOCPROMISC: Operation not supported on socket)
tcpdump: listening on vboxnet0, link-type EN10MB (Ethernet), capture size 65535 bytes
05:33:38.767959 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60)
192.168.56.3.22 > 192.168.56.1.56137: Flags [S.], cksum 0x186b (correct), seq 3689124050, ack 844205722, win 14480, options [mss 1460,sackOK,TS val 4294808631 ecr 446189010,nop,wscale 5], length 0

Funciona para mim, além disso, você pode enviar o SSH para sua VM se sua rede estiver off-line.

    
por 01.04.2012 / 12:37