UFW блокирует трафик в NAT

Я создал гостевую виртуальную машину с libvirt с NAT-мостом по умолчанию. (Сервер Host и Guest Ubuntu 14.04) После создания разрешающих правил для SSH и включения ufw - на гостевой - я больше не могу подключаться к гостевой.

Из системного журнала (гостя):

6 октября 17:36:51 ядро ​​ubuntu: [ 5969.693057] [UFW BLOCK] IN=eth0   
OUT=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 ОКНО =29200 RES=0x00 SYN URGP=0

Статус ufw(на госте):

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 - это IP Хоста, Гость - 192.168.122.152. Я понятия не имею, почему UFW блокирует разрешенный IP-адрес хоста /NAT.

Если я отключу UFW на гостевой, я могу подключиться с хоста через SSH без проблем.

редактировать: для уточнения, это логи гостя. NAT-маршрутизация работает. Проблема, кажется, на стороне гостя VM.

1 ответ

Решение

После долгих проб и ошибок я наконец нашел решение:

вместо:

Anywhere                   ALLOW IN    192.168.122.0/24 22/tcp

правильное правило должно быть:

 22/tcp                     ALLOW IN    192.168.122.0/24

я ошибочно указал порт источника вместо порта назначения. Это было вызвано использованием краткой формы команды allow ufw:

ufw allow from 192.168.122.0/24 port 22  proto tcp  

правильная форма:

ufw allow from 192.168.122.0/24 to any port 22 proto tcp
Другие вопросы по тегам