ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
10 мая
946346 Топик полностью
fk0, легенда (15.09.2019 11:28, просмотров: 228) ответил Гудвин на Исходные данные: 1. Debian на VDS. 2. Клиенты под виндой и требуется пробросить один TCP порт по защищенному соединению. 3. Чтобы на стороне клиента не было никакой открытой информации (приватные ключи, настройки соединения), дабы она не утекла и
Нет смысла скрывать непонятно что, это типичный пример security through obscurity. Нет смысла скрывать адрес сервера -- его видно сниффером. Как впрочем возможно и логин, и даже пароль. Вот приватный ключ не видно, для его получения нужно уметь его достать из VPN-клиента. Но если этот клиент работает на обычном компе -- часто нет смысла и прятать от того, кто комп может потрогать руками. Поэтому не понятно, чем плох вариант просто "клиентского ПО под винду", вроде того же OpenVPN с файлом настроек. Ну утечёт, ну размножится, толку-то, если сервер позволяет подключение только _одного_ клиента? Скопировать и запустить десяток уже не выйдет. Как сделать? Через скрипты (при коннекте) на сервере или даже тупей, через жёсткое назначение ip-адресов конкретным клиентам (т.е. два логина от одного клиента окажутся на одном адресе и ничего не заработает). Если нужна железяка (аппаратный токен), то отдельный комп типа роутера или компа в виде usb-донгла, на котором и будет крутиться openvpn-клиент, например. С аппаратными токенами сильно сложней, ибо софт должен уметь работать с этим ключиком, что вряд ли. Или будет как с российскими токенами, которые по документации генерируют и содержат ключ внутри себя, выполняя криптоалгоритмы с ключём по запросу ПО с компа, как бы. А по факту (поскольку софт сделать не смогли, не захотели, дорого), имеет место наёбка и ключи свободно из токенов достаются, в итоге токен превращается просто во флешку и ценность такого ключа не выше чем ключа в просто файле. Если нужна неизменяемость файла настроек, то можно попробовать завернуть весь openvpn с конфигами в некий контейнер, который перед стартом проверяет свою подпись (хеш), потом либо распаковывается во временный каталог, либо эмулирует файловые API и так запускается (либо даже, допускаю, для openvpn достаточно всё тупо передать через командную строку). Готового софта не назову, но уверен он есть, да и наколхозить можно самому тоже массу вариантов. Только и обратная сторона медали -- нехитрыми средствами юзер всё подсмотрит (в работающем процессе), возьмёт другую версию openvpn из интернета и будет сам подключаться по образу и подобию. Смысла особого нет прятать.
[ZX]