Sto provando a configurare un microservizio per la mia applicazione web, che è ospitata all'indirizzo ip X.X.X.X
. Il microservizio dovrebbe accettare solo connessioni https da questa app Web.
Ho testato il microservice come funzionante dal server web con le regole di "ip allow all" di tabelle ip libere, ma le mie regole di seguito (in particolare, gli ultimi 2) non mi lasciano passare.
Ecco le regole della mia iptables
al momento:
#allow current ssh connection so we don't disconnect ourselves
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
#allow ssh traffic
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j ACCEPT
#allow ssh web traffic only from nominated webserver
iptables -A INPUT -p tcp -s X.X.X.X/32 --dport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -d X.X.X.X/32 --sport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
Ho ricontrollato che X.X.X.X
ip sia corretto e che il proxy dell'app Web abbia lo stesso IP (è nginx sullo stesso server). Cosa sto rovinando?
Modifica: output di iptables -L
:
target prot opt source destination
ACCEPT tcp -- X-X-X-X.rev.cloud.scaleway.com anywhere tcp dpt:https state ESTABLISHED
Questo significa che in qualche modo il mio IP "sorgente" non è in realtà la fonte della richiesta che penso di inviare? (ed è invece il provider VPS scalare?)