До сегодняшнего дня я нормально подключался к своей рабочей VPN (используя libreswan
и NetworkManager-l2tp
). После обновления моей системы мои VPN-соединения перестали работать. После долгого устранения неполадок я заметил кое-что странное:
sudo ike-scan [vpn address]
приводит к:
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
Ending ike-scan 1.9: 1 hosts scanned in 2.471 seconds (0.40 hosts/sec). 0 returned handshake; 0 returned notify
Это означает, что путь целевого шлюза не шлюз IPSec (хотя, безусловно, так и есть).
Что могло вызвать это? Есть ли что-то в наборе настроек помимо ike-scan
, что нужно изменить, чтобы он работал должным образом? Существуют и другие адреса IPSec VPN, которые отображаются аналогично, хотя они являются L2TP / IPSec VPN. Кроме того, всего пару недель назад я использовал ike-scan
, чтобы выяснить, какие алгоритмы Phase1 и Phase2 были для моей работы VPN.
Есть и другие сети VPN, например, в , этот ответ, которые не работают. Некоторые другие IP-адреса L2TP / IPSec также не работают.
Что здесь может происходить?
Если вы используете ike-scan без указания предложения, которое хотите протестировать, по умолчанию будет 3des-sha1-modp1024. Глядя на результат, ваш VPN-сервер, похоже, не поддерживает это предложение.
Попробуйте следующий скрипт ike-scan.sh, который перебирает несколько предложений. Вы можете запустить его как sudo ./ike-scan.sh [адрес vpn] | grep SA=
или sudo bash ike-scan.sh [адрес vpn] | grep SA=
#!/bin/sh
# Encryption algorithms: 3des=5, aes128=7/128, aes192=7/192, aes256=7/256
ENCLIST="5 7/128 7/192 7/256"
# Hash algorithms: md5=1, sha1=2, sha256=5, sha384=6, sha512=7
HASHLIST="1 2 5 6 7"
# Diffie-Hellman groups: 1, 2, 5, 14, 15, 19, 20, 21
GROUPLIST="1 2 5 14 15 19 20 21"
# Authentication method: Preshared Key=1, RSA signatures=3
AUTHLIST="1 3"
for ENC in $ENCLIST; do
for HASH in $HASHLIST; do
for GROUP in $GROUPLIST; do
for AUTH in $AUTHLIST; do
echo ike-scan --trans=$ENC,$HASH,$AUTH,$GROUP -M "$@"
ike-scan --trans=$ENC,$HASH,$AUTH,$GROUP -M "$@"
done
done
done
done
Если бы рекомендовали использовать более новый network-manager-l2tp 1.2.16 из следующего PPA:
Для обратной совместимости с большинством L2TP/IPsec VPN-серверов network-manager-l2tp 1.2.16 и более поздних версий больше не использует набор разрешенных алгоритмов по умолчанию strongSwan и libreswan, вместо этого по умолчанию используются алгоритмы, представляющие собой слияние предложений IKEv1 клиентов Windows 10 и macOS/iOS/iPadOS L2TP/IPsec. Самые слабые предложения, которые не были общими как для Win10, так и для iOS, были исключены, но все самые сильные были сохранены.
Так что с network-manager-l2tp 1.2.16 и 1.8.0 (примечание: 1.8.0 не был выпущен для Ubuntu из-за проблем несовместимости лицензирования GPLv2 с OpenSSL, унаследованным от Debian), я бы рекомендовал удалить фазу 1 и 2 предложения, так как они больше не нужны.
Если вы используете strongswan и включили отладку, как описано в файле README.md:
Вы можете увидеть как предложения фазы 1 (основной режим), так и фазы 2 (быстрый режим), предлагаемые VPN-сервером.