Bonsoir;
Si plexpy n'écoute qu'en local exclusivement, et que tu le joins via un reverse nginx couvert par un mot de passe digne de ce nom (aléatoire, 12 caractères ou plus, mélangeant majuscules, minuscules, nombres, caractères spéciaux), je ne pense pas que ça provienne de là, même si c'était une passoire.
Pour ma part, j'essaie toujours tant que possible de réduire au maximum les applications en écoute sur le 0.0.0.0; même des applications sensibles telle que webmin, j'en modifie la configuration pour qu'elles écoutent sur le 127.0.0.1 uniquement, puis reverse via nginx, et dans le vhost de nginx l'accès limité à 2 ip desquelles je suis amené à me connecter.
Iptables, quasiment aucune règle, mis à part pour obliger de se connecter sur le 80 ou le 443 via le domaine et non l'ip, plus quelques règles incontournables pour le vpn.
Un bonne règle fail2ban nginx-auth sévère qui contrôle le error.log, portsentry, et c'est tout.
A+++