OpenVPN с Android 2.3.x — проблемы безопасности

Мне нужно использовать телефон Android 2.3.x для доступа к серверу OpenVPN. У меня CM 7 со встроенной поддержкой OpenVPN и tun. Меня больше всего беспокоит то, что я не знаю, куда положить ключи. Если мой телефон попадет в чужие руки, я оставлю ключи открытыми, и я не могу этого допустить.

Если бы у меня был телефон с ICS, у меня было бы полное шифрование файловой системы, и я был бы в безопасности. Итак, есть ли альтернатива или какой-то метод, о котором я не знаю, который может безопасно хранить сертификаты и ключ на телефоне?

Ответы (2)

Если вы поддерживаете сервер OpenVPN, вы можете сгенерировать ключи, требующие использования пароля. Метод описан на http://openvpn.net/index.php/open-source/documentation/howto.html#pki .

Прокрутите до раздела Генерация сертификатов и ключей для 3 клиентов . Вы захотите использовать build-key-passсценарий для создания защищенного паролем ключа. Это предотвратит злонамеренное использование вашего ключа, если ваш телефон попадет в чужие руки, хотя я не совсем уверен, поддерживает ли это реализация OpenVPN в CM 7.

Если у вас нет возможности build-key-passгенерировать и регистрировать собственные ключи, то нет практического способа обеспечить безопасность вашего ключа без полного шифрования устройства.

Другой вариант, хотя и не такой надежный: используйте приложение для удаленной очистки, чтобы удаленно стереть данные с телефона, если он украден.
Первое, что делает любой вор/нашедший, — избавляется от SIM-карты.

Хорошо, я поторопился и задал вопрос, не попробовав сначала. Решение простое и очень безопасное. Сначала вы создаете на сервере комбинированный ключ PKCS12, который объединяет сертификат сервера, сертификат клиента и ключ с расширением openssl pkcs12 -export -in android.cer -inkey android.key -certfile ca.crt -name android -out certs.p12. Во время этого вы должны ввести пароль для расшифровки. Вы совершенно безопасно переносите этот комбо-ключ на SD-карту. Затем вы импортируете его в безопасное хранилище Android, а затем можете удалить ключ PKCS12.

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