We are using Pritunl as our VPN backend for automated infrastructure operations. Recently, we’ve observed consistent connection failures when running bulk tasks in parallel that require VPN connections (e.g., deleting QA instances or deploying test environments).
Observed Behavior:
Up to 9–10 connections establish successfully.
Beyond that, subsequent jobs fail to connect — logs show VPN handshake failures or timeout errors.
Retrying the failed tasks individually works fine, suggesting the issue is not with specific credentials or client configuration.
Test Reproduction:
Trigger 20+ concurrent VPN connections via automated scripts.
Are we talking about simultaneous connections from a single account? I think you should provide the server and client logs with the errors; it will greatly help in finding a solution.
Are you using the same user profile for the tasks. If the same profile is used multiple devices needs to be enabled in the server settings. Also increase the size of the VPN virtual network to ensure there is not an IP shortage which can occur with multiple devices. This would show an error in the top right logs.
If the server is using device authentication or dynamic firewall or WireGuard. These connections require HTTPS authorization requests. There was an issue with the Python Cryptography library after it was ported to OpenSSL 3.0 that would cause parsing a certificate to take several seconds and consume significant CPU usage. This was recently fixed in the newer releases. Make sure the server is updated and monitor the CPU usage when connecting.
You need to check the client logs from the OpenVPN process. In the Pritunl server web console the server output in the servers tab and the logs in the top right.