откуда лучше брать сервера?
Поднять свои.
Получается должен быть какой-то Бекенд, на чём его писать?
На том, на чём умеешь.
Какие нагрузки он может выдерживать, тут ещё получается надо бы, чтобы эта система сама себя масштабировала, сигнализировала, если сервера перегружены, чтобы надо было ещё подключить.
Ну тебе с твоего бэкенда надо будет собирать метрики по задержкам, нагрузке на CPU, и RAM.
Решений этой задачи много. Гугли "сбор метрик с бэкенда".
Автоматическое масштабирование - тема отдельная и достаточно сложная.
Может быть есть уже какой-то готовый сервис который предлагает готовое решение
Да, есть. Многие vpn-провайдеры имеют так называемую услугу "white label" - они сами делают клиент с твоим логотипом, названием, и может даже дизайном, но за инфраструктуру отвечать будут уже они.
Быстро и по сути ноль головной боли, если у тебя задача просто сделать свой vpn-сервис