Существует ли способ рандомизировать мои выбранные OpenVPN-серверы?

Я сделал, чтобы ProtonVPN считал и соединился с серверами VPN в любом случае для интернет-конфиденциальности. К сожалению, ProtonVPN не предлагает основанному на Linux клиенту в этой точке, таким образом, они советуют для соединения с их серверами через OpenVPN.

Я установил пакеты openvpn network-manager-openvpn и network-manager-openvpn-gnome официальному руководству для загрузки их .ovpn конфигурационных файлов.

Соединение хорошо работает, но каждый раз, когда я соединяюсь с VPN на Ubuntu, я должен вручную выбрать определенный сервер из предварительно сконфигурированных .ovpn файлов. Вместо этого на их клиенте Android, например, я могу просто коснуться кнопки и подключения к случайному серверу, даже не думая об этом.

Там какой-либо путь состоит в том, чтобы заставить администратора сети выбрать случайную конфигурацию .ovpn вместо меня имеющий необходимость выбрать ту вручную? (Я не боюсь командной строки, но предпочтительно не добавляя другой PPA к моей системе.)

2
задан 30 January 2019 в 15:52

2 ответа

Простой сценарий командной строки мог работать как это:

#!/bin/bash
RANGE=200

number=$RANDOM
let "number %= $RANGE"
fname="us${number}.ovpn"
openvpn "$fname"

Предположение, что:

  • Ваши файлы конфигурации OpenVPN называют в соответствии со схемой как us176.ovpn, т.е. двухбуквенный код страны и рабочее число.
  • Доступные файлы конфигурации OpenVPN, выполненные от us1 кому: us200.

Необходимо было бы адаптировать диапазон и добавить каталог, где файлы конфигурации хранятся. В зависимости от точного формата имени файла, который я не знаю для ProtonVPN, Вам, вероятно, придется сделать другие модификации, но Вы получаете идею. Обратите внимание, что необходимо было бы выполнить сценарий как sudo, чтобы OpenVPN работал как этот.

Править: В случае, если Ваша VPN запрашивает имя пользователя и пароль на соединении, можно изменить последнюю строку сценария как это:

openvpn --config $fname --auth-user-pass /dir/to/userpass.txt

где userpass.txt содержит имя пользователя и пароль на двух отдельных строках, если Вы довольны хранением его как этот.

3
ответ дан 2 December 2019 в 01:52

Я никогда не делал это, но насколько я понимаю openvpn руководство, которое можно записать нескольким профилям подключения / удаленный vpn-server-ip в Вашем .ovpn файл конфигурации. В сочетании с –remote-random программное обеспечение openvpn выберет один для Вас, иначе это выберет первый сервер, который указан в списке. Я не знаю, будет ли это работать с NetworkManager, но он должен работать при выполнении команды от termial как
sudo openvpn my.config.file.ovpn.


Форма кавычки maual:

- удаленный хост [первичный] [порт]

Удаленное имя хоста или IP-адрес. На клиенте нескольких - удаленные опции могут быть указаны для дублирования, каждый обращающийся к различному серверу OpenVPN. Определение нескольких - удаленные опции с этой целью является особым случаем более общей функции профиля подключения.

Посмотрите <connection> документация ниже.

Клиент OpenVPN попытается соединиться с сервером в host:port в порядке, указанном списком - удаленные опции. первичный указывает на протокол для использования при соединении с удаленным, и может быть "tcp" или "udp".

Клиент будет идти дальше к следующему хосту в списке, в случае сбоя соединения. Обратите внимание, что в любой момент времени, клиент OpenVPN будет самое большее подключен к одному серверу.

[...]

<connection> Определите профиль соединения клиента.

Профили соединения клиента являются группами опций OpenVPN, которые описывают, как соединиться с данным сервером Open‐VPN. Профили соединения клиента указаны в конфигурационном файле OpenVPN, и каждый профиль заключается в скобки <connection> и </connection>.

Вот пример использования профиля подключения:

клиент dev бочка

<connection>

удаленный 198.19.34.56 1194 udp

удаленный 198.19.34.56 443 tcp

удаленный 198.19.34.56 443 tcp прокси HTTP 192.168.0.8 8 080 повторных попыток прокси HTTP

[...]

Клиент OpenVPN попробует каждый профиль подключения последовательно, пока он не достигнет успешного соединения.

- удаленно-случайный может использоваться для начального "скремблирования" списка соединения.

2
ответ дан 2 December 2019 в 01:52

Другие вопросы по тегам:

Похожие вопросы: