Я сделал, чтобы ProtonVPN считал и соединился с серверами VPN в любом случае для интернет-конфиденциальности. К сожалению, ProtonVPN не предлагает основанному на Linux клиенту в этой точке, таким образом, они советуют для соединения с их серверами через OpenVPN.
Я установил пакеты openvpn
network-manager-openvpn
и network-manager-openvpn-gnome
официальному руководству для загрузки их .ovpn конфигурационных файлов.
Соединение хорошо работает, но каждый раз, когда я соединяюсь с VPN на Ubuntu, я должен вручную выбрать определенный сервер из предварительно сконфигурированных .ovpn файлов. Вместо этого на их клиенте Android, например, я могу просто коснуться кнопки и подключения к случайному серверу, даже не думая об этом.
Там какой-либо путь состоит в том, чтобы заставить администратора сети выбрать случайную конфигурацию .ovpn вместо меня имеющий необходимость выбрать ту вручную? (Я не боюсь командной строки, но предпочтительно не добавляя другой PPA к моей системе.)
Простой сценарий командной строки мог работать как это:
#!/bin/bash
RANGE=200
number=$RANDOM
let "number %= $RANGE"
fname="us${number}.ovpn"
openvpn "$fname"
Предположение, что:
us176.ovpn
, т.е. двухбуквенный код страны и рабочее число.us1
кому: us200
.Необходимо было бы адаптировать диапазон и добавить каталог, где файлы конфигурации хранятся. В зависимости от точного формата имени файла, который я не знаю для ProtonVPN, Вам, вероятно, придется сделать другие модификации, но Вы получаете идею. Обратите внимание, что необходимо было бы выполнить сценарий как sudo, чтобы OpenVPN работал как этот.
Править: В случае, если Ваша VPN запрашивает имя пользователя и пароль на соединении, можно изменить последнюю строку сценария как это:
openvpn --config $fname --auth-user-pass /dir/to/userpass.txt
где userpass.txt содержит имя пользователя и пароль на двух отдельных строках, если Вы довольны хранением его как этот.
Я никогда не делал это, но насколько я понимаю 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 попробует каждый профиль подключения последовательно, пока он не достигнет успешного соединения.
- удаленно-случайный может использоваться для начального "скремблирования" списка соединения.