I have a desktop application with JavaFX and I need to connect it to the server in a safer way. Right now, the program connects by mysql and FTP without TLS.

I've thought to connect it by VPN, but the clients have the Java application installed on their personal computers and I can't control the end device security.

Is it dangerous for the server to use the VPN method and install the VPN keys on their computers? If it isn't safe, could you guys recommend other options?

  • Comments have been moved to chat; please do not continue the discussion here. Before posting a comment below this one, please review the purposes of comments. Comments that do not request clarification or suggest improvements usually belong as an answer, on Information Security Meta, or in Information Security Chat. Comments continuing discussion may be removed.
    – Rory Alsop
    Commented Oct 4, 2023 at 8:31
  • you shouldn't be directly accessing MySQL or FTP through a distributed app. Let the back-end handle DB calls and uploads/downloads. Only the server should have access to files/db. That way you can add user authentication to those calls. Commented Oct 6, 2023 at 17:42

1 Answer 1


Is it dangerous for the server use the VPN method and install the VPN keys in their computers? If it isn't safe, could you guys recommend me other options?

Secure is not black or white. You need to figure out what threats you face, and look at how to mitigate those threats.

One threat you have identified is plaintext protocols such as mysql and ftp. That means anyone along the path will be able to snoop the authentication details. If you add a VPN (or TLS), it means that anyone along the path won't be able to read this anymore.

But it's no more secure than the keys used, so it does not protect against malware on the computer where the software is running.

When you've done a mitigation, you have to verify if it opened other vulnerabilities, or if it has resolved the problems in a good enough manner. Often resolving means accepting some residual risk.

  • I get you, the app can't be completely safe. I was looking for another option to protect the connection between desktop app and server.
    – Arkhan6
    Commented Oct 3, 2023 at 19:28
  • Ok, then think through how the security looks with VPN? You have to evaluate the risks. We can't do that for you.
    – vidarlo
    Commented Oct 4, 2023 at 8:01
  • For my conclusions, I think that I have to configure a firewall in the server so that the VPN only have access to the Sql and Ftp in the server.
    – Arkhan6
    Commented Oct 4, 2023 at 9:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .