Este problema es muy curioso y me ha pasado en varias ocasiones, por esa razón he decidido documentarlo, esperando que en caso de que les ocurra lo puedan resolver rápidamente.
Introducción
Por defecto, FreeBSD establece conexiones externas utilizando puertos a partir del 10000 y hasta el 65535, sin embargo, ese comportamiento se puede modificar para definir un rango personalizado.
En mi caso por lo general utilizo el rango del 49152 al 65535.
El problema se presenta cuando intentamos establecer una conexión hacia el exterior con el firewall activo y este únicamente tiene permitido un rango de puertos que no comienza a partir del 10000. Es entonces cuando obtenemos el mensaje de error:
Operation not permitted - connect(2)
Solución
Lo único que se necesita hacer es especificar el rango de puertos que vamos a utilizar, esto lo podemos hacer utilizando el comando sysctl de la siguiente forma:
sysctl net.inet.ip.portrange.first=49152 sysctl net.inet.ip.portrange.last=65535
Para mantener la configuración al reiniciar también es necesario agregar las siguientes lineas al sysctl.conf:
net.inet.ip.portrange.first=49152 net.inet.ip.portrange.last=65535
Es importante mencionar que al acotar el rango de puertos se mejora la seguridad y se vuelven claras las reglas de firewall que tenemos que agregar. Es por eso que resulta importante realizar dicha actividad.