em1 внутренний интерфейс
em0 внешний интерфейс
/etc/natd.conf
..
same_ports yes
interface em0
use_sockets yes
unregistered_only yes..
redirect_port tcp 192.168.1.149:3389 3389
..
-------------
Для того, чтобы правила не терялись - пропиши их в файле /etc/rc.firewall.local (так у меня)
ipfw show:
.....
10000 divert 8668 ip from any to ВНЕШНИЙ_ИП in via em0
10100 divert 8668 ip from 192.168.1.0/24 to any out via em0
...
10200 allow tcp from any to 192.168.1.149 dst-port 3389 in recv em0
10300 allow tcp from any to 192.168.1.149 dst-port 3389 out via em1
...
Почему natd два правила? Честно - не знаю, но с одним "any to any" были тормоза на исходящий трафик, даже в шелле.
Делаешь этот конфиг, перезапускаешь natd и должно работать.