Eu realizei o que descrevi na pergunta. Aqui está a configuração do Ubuntu que me permitiu fazer isso:
$ sudoedit /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
gateway 192.168.0.1
(Na verdade, br0 em meus arquivos, desde a ponte VM até a LAN física, mas os substitui por mais genéricos eth0 )
$ sudoedit /etc/sysctl.conf
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
Basicamente, a configuração de encaminhamento de pacotes do sysctl.conf é o que, acredito, permitiu que minha configuração funcionasse.
Confirmei que a configuração realmente funcionava, vendo traceroute s passando por 192.168.0.10 antes de 192.168.0.1 e as regras de firewall configuradas no Ubuntu na verdade filtravam o tráfego como pretendido.