Вопрос или проблема
Я только что установил Debian. Я пытался установить ProtonVpn, но не могу загрузить deb файл с помощью wget. Часы системы обновлены. Я также пытался добавить разные серверы в файл resolve.conf, но проблема сохраняется. Подключение установлено, но остальное не работает. Информация о моей системе:
uname -a
Linux localhost 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux
wget https://repo.protonvpn.com/debian/dists/stable/main/binary-all/protonvpn-stable-release_1.0.6_all.deb
--2025-02-13 19:07:36-- https://repo.protonvpn.com/debian/dists/stable/main/binary-all/protonvpn-stable-release_1.0.6_all.deb
Resolving repo.protonvpn.com (repo.protonvpn.com)... 104.26.4.35, 172.67.70.114, 104.26.5.35, ...
Connecting to repo.protonvpn.com (repo.protonvpn.com)|104.26.4.35|:443... connected.
GnuTLS: Error in the pull function.
Unable to establish SSL connection.
Я попытался переустановить свои сертификаты, но это не сработало. Более того
sudo add-apt-repository 'deb https://protonvpn.com/download/debian stable main'
не работает, вот та же ошибка:
...
Ign:4 https://protonvpn.com/download/debian stable InRelease
Err:1 https://protonvpn.com/download/debi stable InRelease
Could not handshake: Error in the pull function. [IP: 185.159.159.140 443]
Err:4 https://protonvpn.com/download/debian stable InRelease
Could not handshake: Error in the pull function. [IP: 185.159.159.140 443]
Reading package lists... Done
W: Failed to fetch https://protonvpn.com/download/debi/dists/stable/InRelease Could not handshake: Error in the pull function. [IP: 185.159.159.140 443]
W: Failed to fetch https://protonvpn.com/download/debian/dists/stable/InRelease Could not handshake: Error in the pull function. [IP: 185.159.159.140 443]
W: Some index files failed to download. They have been ignored, or old ones used instead.
и
$ openssl s_client -connect repo.protonvpn.com:443
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 324 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---
также для gnu tls client:
~$ gnutls-cli -p 443 repo.protonvpn.com
Processed 140 CA certificate(s).
Resolving 'repo.protonvpn.com:443'...
Connecting to '104.26.5.35:443'...
*** Fatal error: Error in the pull function.
вот та же ошибка: error in the pull function.
мой провайдер блокирует protonvpn? потому что я могу зафиксировать handshake для google.com
и проверьте это:
curl -L -o windscribe-cli.deb https://windscribe.com/download/linux
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (35) OpenSSL/3.0.15: error:0A00010B:SSL routines::wrong version number
any@localhost:~/Downloads$ curl --tlsv1.2 -L -o windscribe-cli.deb https://windscribe.com/download/linux
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (35) OpenSSL/3.0.15: error:0A00010B:SSL routines::wrong version number
any@localhost:~/Downloads$
и браузер тоже не может открыть:
У меня нет проблем с установкой любого другого пакета, например:
$ sudo apt install tmux
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
libb2-1 librsync2
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
tmux
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 455 kB of archives.
After this operation, 1,133 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian bookworm/main amd64 tmux amd64 3.3a-3 [455 kB]
Fetched 455 kB in 1s (833 kB/s)
Selecting previously unselected package tmux.
(Reading database ... 358542 files and directories currently installed.)
Preparing to unpack .../archives/tmux_3.3a-3_amd64.deb ...
Unpacking tmux (3.3a-3) ...
Setting up tmux (3.3a-3) ...
Processing triggers for man-db (2.11.2-2) ...
Похоже, что 185.159.159.140 (в настоящее время) неправильно отвечает на порт 443. Это проблема для поддержки Proton VPN, и вы должны сообщить им об этом.
В краткосрочной перспективе вы можете изменить свой файл /etc/hosts
, чтобы ссылаться на другой сервер. Например, если вы мне доверяете (если вы используете Proton, вам, вероятно, не следует), добавьте эту строку временно:
104.26.4.35 repo.protonvpn.com
ПРОСТОЙ СПОСОБ:
Вы можете скачать их напрямую на https://repo.protonvpn.com/debian/dists/stable/main/binary-all/
Текущая версия:
https://repo.protonvpn.com/debian/dists/stable/main/binary-all/proton-vpn-gtk-app_4.8.2_all.deb
- Сохраните в папке Загрузки.
- Откройте Терминал
cd ~/Downloads
chmod +x proton-vpn-gtk-app_4.8.2_all.deb
sudo dpkg -i proton-vpn-gtk-app_4.8.2_all.deb
ПРАВИЛЬНЫЙ СПОСОБ:
protonvpn-beta.sources файл в /etc/apt/sources.list.d:
Types: deb
URIs: https://repo.protonvpn.com/debian
Suites: stable
Components: main
Architecture: amd64
Signed-By: /usr/share/keyrings/protonvpn-beta-archive-keyring.gpg
Рекомендуется также перезагрузить компьютер и убедиться, что версия и библиотека OpenSSL совпадают.
openssl --version
.
Ответ или решение
Установка приложений на Debian может иногда сталкиваться с определёнными проблемами, особенно если мы говорим о программном обеспечении, связанном с безопасностью, таком как ProtonVPN. Рассмотрим теоретическую базу возможной проблемы, примеры её проявлений и шаги для её решения.
Теоретическая база
Первая проблема, которая часто встречается при загрузке .deb
файла с использованием wget
, заключается в проблемах, связанных с SSL-соединением. Сообщение об ошибке "GnuTLS: Error in the pull function" указывает на то, что на этапе TLS-шифрования происходит сбой. Теоретически, такие ошибки могут быть вызваны несколькими факторами:
- Проблемы с сертификатами: Это может быть вызвано как с устаревшими, так и с некорректно установленными SSL-сертификатами на вашем локальном компьютере.
- Несоответствие версий библиотек: OpenSSL и другие библиотеки, обеспечивающие SSL/TLS-шифрование, могут использоваться версиями, которые имеют несовместимые функции, что приводит к сбою.
- Блокировка на уровне сети или ISP: Провайдер может блокировать доступ к определённым серверам, в том числе тем, которые обеспечивают доступ к ProtonVPN.
- Проблемы на стороне сервера: Серверы ProtonVPN могут временно не работать или иметь неправильно настроенные сертификаты.
Примеры проявлений проблемы
Из предоставленного вами описания следующие ключевые моменты подчеркивают суть проблемы:
wget
встречает ошибку SSL при попытке загрузки файла с сервера ProtonVPN.- Аналогично,
curl
иgnutls-cli
сталкиваются с ошибками при попытке установить SSL-соединение. - Тем не менее, другие пакеты, например
tmux
, успешно устанавливаются, что исключает общие коonекционные или сетевые проблемы.
Более того, проблема становится очевидной, когда OpenSSL показывает, что на сервере отсутствует сертификат, что является ясным подтверждением проблемы на уровне TLS-шифрования.
Применение и решение
Для того чтобы решить данную проблему, можно предпринять следующие шаги:
-
Обновление сертификатов: Попробуйте обновить системы сертификатов.
sudo apt-get update sudo apt-get install --reinstall ca-certificates
-
Проверка и обновление OpenSSL: Убедитесь, что у вас установлена актуальная версия OpenSSL.
openssl version
-
Изменение конфигурации DNS: Вернитесь к исходным настройкам вашего
/etc/resolv.conf
, так как манипуляции в этом файле могут вызвать ненужные проблемы. -
Проверка работы TLS: Проверьте, работает ли ваше TLS-соединение без проблем с другими сайтами.
openssl s_client -connect google.com:443
-
Изменение /etc/hosts: Добавьте временную запись для сервера ProtonVPN.
sudo nano /etc/hosts # Добавьте следующую строку для обхода DNS 104.26.4.35 repo.protonvpn.com
-
Ручная загрузка и установка .deb файла:
- Загрузите файл через браузер и установите его через терминал:
cd ~/Downloads chmod +x proton-vpn-gtk-app_4.8.2_all.deb sudo dpkg -i proton-vpn-gtk-app_4.8.2_all.deb
- Загрузите файл через браузер и установите его через терминал:
-
Обращение в техподдержку: Если проблема сохраняется, свяжитесь с технической поддержкой ProtonVPN для прояснения ситуации на их стороне.
Заключение
Проблемы с установкой ProtonVPN на Debian могут возникать из-за различных технических аспектов, связанных с SSL/TLS-соединением. Однако последовательное применение предложенных решений должно помочь устранить возникшие проблемы. В случаях когда доступ не восстанавливается, рекомендуется обратиться в техническую поддержку провайдера, так как проблема может крыться именно в блокировке на сетевом уровне.