We configured a peer-to-peer IPsec tunnel between two pfSense firewalls by creating essentially identical phase 1 and phase 2 configurations on either end. We also added firewall rules to both ends to allow IPsec traffic to pass to the LAN. As a result, now users on either end can access LAN resources on the remote end as if they are local resources on a local subnet.