Eu acho que você tem o SELinux habilitado em seu servidor. Por padrão, ele não permite que o processo apache inicialize conexões de rede de saída.
Cópia de uma resposta de https://serverfault.com/a/456875/442205
Para verificar o SELinux
sestatus
Para ver quais sinalizadores estão definidos nos processos httpd
getsebool -a | grep httpd
Para permitir que o Apache se conecte ao banco de dados remoto através do SELinux
setsebool httpd_can_network_connect_db 1
Usar a opção -P torna a alteração permanente. Sem esta opção, o booleano seria redefinido para 0 na reinicialização.
setsebool -P httpd_can_network_connect_db 1