...
"Most firewalls randomize ports (rewrite the source port) of outbound traffic. This is problematic for some protocols (like PPTP, IPSEC and SIP). sipXbridge needs static port NAT, or symmetric signalling in order to work properly. This means when sipXbridge makes an media connection at port 30001, it must be sent out on port 30001 (not rewritten by the firewall), and also come back on the same port. This is done by choosing "Firewall>NAT>Outbound" “Firewall>NAT>Outbound” and selecting "Manual “Manual (AON)"”. I've I’ve tried to make it easy by providing a sample setup which can be edited in a word process or (like Wordpad) and uploading to the system."
Read the whole article... http://blog.myitdepartment.net/?p=37
For pfSense version 2, remote provisioning of phones via FTP is functional, though you must add a system tunable by going to System -> Advanced -> System Tunables and entering the tunable debug.pfftpproxy with a value of 1.