Criei um convidado VM com libvirt com o NAT Bridge padrão. (Servidor Host e Convidado Ubuntu 14.04) Depois de criar regras de permissão para SSH e ativar o ufw - no convidado - não consigo mais me conectar ao convidado.
Do syslog (do convidado):
6 de outubro 17:36:51 kernel do Ubuntu: [5969.693057] [BLOCO UFW] IN = eth0 SAÍDA=MAC=52:54:00:ea:b5:2e:fe:54:00:ea:b5:2e:08:00 SRC=192.168.122.1 DST=192.168.122.152 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=5379 DF PROTO=TCP SPT=34376 DPT=22 JANELA=29200 RES=0x00 SYN URGP=0
Status do ufw (no convidado):
root@ubuntu:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
Anywhere ALLOW IN 148.251.139.136 22/tcp
Anywhere ALLOW IN 148.251.139.133 22/tcp
Anywhere ALLOW IN 141.7.0.0/16 22/tcp
Anywhere ALLOW IN 192.168.122.0/24 22/tcp
Anywhere ALLOW IN 192.168.122.1 22/tcp
148.251.139.136 é o IP do Host, Guest é 192.168.122.152. Não tenho ideia de por que o ufw bloqueia o IP permitido do Host/NAT.
Se eu desabilitar o ufw no convidado, posso me conectar do host via SSH sem problemas.
editar: para esclarecimento, estes são os logs do convidado. O roteamento NAT está funcionando. O problema parece estar no lado convidado da VM.
Responder1
depois de muita tentativa e erro finalmente encontrei a solução:
em vez de:
Anywhere ALLOW IN 192.168.122.0/24 22/tcp
a regra correta deveria ser:
22/tcp ALLOW IN 192.168.122.0/24
especifiquei por engano a porta de origem em vez da porta de destino. Isso foi causado pelo uso da forma abreviada do comando ufw permitir:
ufw allow from 192.168.122.0/24 port 22 proto tcp
forma correta:
ufw allow from 192.168.122.0/24 to any port 22 proto tcp