Resolvido! O problema era que eu tinha definido uma regra de pré-roteamento para solicitações de banco de dados NAT para outro banco de dados e, claro, eu esqueci sobre isso.
Essa é a razão pela qual o tráfego nem chegou à cadeia INPUT.
Estou configurando um ambiente de teste / laboratório para uma equipe de desenvolvedores que também precisam de um banco de dados. Eu configurei um Centos 7 VPS no qual instalei o servidor de aplicativos, o banco de dados e uma instância do OpenVPN.
Estou usando o iptables para filtrar o tráfego, e nada além do 1194 / udp está exposto à internet, estou aceitando apenas o que eu preciso da interface do túnel. (Eu estou realmente aceitando 22 / tcp da internet temporariamente, porque eu estou mexendo com a configuração vpn. Eu estou usando chaves ssh e root não pode fazer o login remotamente de qualquer maneira)
O problema é que consigo acessar o servidor via SSH e também vejo a página de destino do aplicativo (que é exibida em 8080 / tcp), mas não consigo me conectar ao banco de dados.
Aqui estão as regras do firewall:
[root@grolloserver ~]# iptables -nvL
Chain INPUT (policy DROP 198 packets, 19717 bytes)
pkts bytes target prot opt in out source destination
48218 4934K f2b-SSH tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
25541 1143K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
3 120 ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
72983 14M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
31 1302 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:1194
2 1570 ACCEPT icmp -- tun0 * 0.0.0.0/0 0.0.0.0/0
2 92 ACCEPT tcp -- tun0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
1 44 ACCEPT tcp -- tun0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080
0 0 ACCEPT tcp -- tun0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306
36412 3741K LOGGING all -- * * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
128 6608 ACCEPT all -- tun0 * 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 1077 packets, 287K bytes)
pkts bytes target prot opt in out source destination
Chain LOGGING (1 references)
pkts bytes target prot opt in out source destination
36412 3741K LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 prefix "iptables dropped: "
Chain f2b-SSH (1 references)
pkts bytes target prot opt in out source destination
Coisas que eu tentei:
O Firewalld está mascarado e parado. O SELinux está desativado. O mssfix está configurado para 1430 (1470, que é o MTU com o qual eu faço ping com êxito no gateway da VPN - 40).
Vocês têm algum conselho? Obrigado.
EDIT: eu esqueci de mencionar, a conexão expira após ~ 15 segundos. Contadores Iptables estão em zero (eu não os reiniciei). ss -nal4 mostra o mariadb escutando no endereço ip da interface tun0.
Por padrão, o Mariadb não está permitindo o log remoto. Você deve ter um olhar para a sua configuração e eu até acho que também os bancos de dados devem ser concedidos de uma maneira que você se conecte a eles remotamente. Eu estive lá.