Как мне настроить OpenVPN на CyanogenMod 7?

18

Я хочу направить весь сетевой трафик через интернет-провайдера моего дома, когда я нахожусь в интернет-кафе, чтобы меня не могли подслушать / подслушать .

У меня HTC G2 с CyanogenMod 7 , который имеет встроенную поддержку клиента OpenVPN :

введите описание изображения здесь

Дома у меня есть маршрутизатор с TomatoVPN на нем, который включает в себя сервер OpenVPN:

введите описание изображения здесь

Теперь, как мне заставить телефонный клиент подключиться к серверу маршрутизатора? Я могу Google и найти набор, казалось бы, соответствующих инструкций , но они не очень полезны:

Вы должны упаковать свой сертификат и ключи и положить его на SD-карту

Где мне их взять?

Скопируйте client.p12 в корневой каталог SDCard.

Где это взять?

добавьте свои сертификаты и соответственно установите тип интерфейса и протокол.

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

Я ищу пошаговые инструкции для установки "roadwarrior", которая маршрутизирует весь трафик через VPN.

Где взять ключи? Нужно ли использовать дополнительную аутентификацию по имени пользователя и паролю? Какие DNS-домены поиска? Какие настройки я должен использовать в Расширенном меню OpenVPN CM7? «Шлюз перенаправления» должен быть настроен на маршрутизацию всего трафика, например, верно? Какие настройки для Basic и Advanced в TomatoVPN? «Прямые клиенты для перенаправления интернет-трафика»? "Ответить на DNS"?

Обновить:

Я дал ему еще одну попытку самостоятельно, и снова был неудачным. Я не думаю, что есть способ генерировать ключи на маршрутизаторе или телефоне, поэтому я попытался сгенерировать их в Ubuntu. Я пытался следовать этим указаниям для генерации ключей, но они не верны. (Папка /usr/share/doc/openvpn/examples/easy-rsa/2.0вместо /usr/share/doc/openvpn-2.0/easy-rsa, например, и есть vars, но не init-configсценарий.) Я нашел эти направления , которые являются более полезными, и сгенерировал ряд файлов:

  • 01.pem
  • 02.pem
  • ca.crt
  • ca.key
  • dh1024.pem
  • htc_g2.crt
  • htc_g2.csr
  • htc_g2.key
  • server.crt
  • server.csr
  • server.key
  • ta.key

Файлы, которые я скопировал на маршрутизатор:

  • ca.crt
  • server.crt
  • server.key
  • dh1024.pem

сначала удалите все -----BEGIN, согласно этим инструкциям . Сервер маршрутизатора запускается сейчас и говорит

Имя Значение Макс. Длина очереди bcast / mcast 0

под статусом. Итак, я думаю, сервер работает?

Затем я скопировал эти файлы на телефон:

  • ca.crt
  • htc_g2.crt
  • htc_g2.key
  • server.crt
  • ta.key

Различные направления расходятся во мнениях о том, какие файлы копировать. Затем я зашел в «Настройки» → «Расположение и безопасность» → «Установка с SD-карты» и смог установить сертификат CA, добавить пароль и т. Д. Попытка добавить сертификаты htc_g2 или server не сработала, сказав «нет сертификата для установки». Я отредактировал файлы и удалил все раньше -----BEGIN, а затем они установили. В «Добавить OpenVPN VPN» я выбрал сертификат «ca» для «Установить сертификат CA» и сертификат htc_g2 для «Установить сертификат пользователя». Когда я пытаюсь подключиться, появляется сообщение «Невозможно подключиться к сети». То же самое, если я попробую сертификат сервера для сертификата пользователя.

эндолиты
источник
Какие операционные системы вы используете на своем домашнем компьютере?
newuser
@JonnyP: Домашний компьютер - это Ubuntu, но я бы лучше использовал маршрутизатор, чем компьютер.
эндолит
1
На этом этапе я бы порекомендовал вам сначала попытаться настроить OpenVPN на обычном клиенте OpenVPN для настольных ПК, а затем скопировать ту же настройку на телефон.
onik
Я не могу поверить, что никто не знает, как это сделать. Почему опция существует, если никто ее не использовал?
эндолит
У меня есть друг, который настроил это ... на CM 6 . Ему пришлось перевыпустить все сертификаты VPN после того, как он обнаружил, что клиенту CM необходимо установить определенные поля. Я посмотрю, смогу ли я получить больше информации от него.
Broam

Ответы:

1

Прежде всего, проверьте Keysвкладку в TomatoVPN, чтобы увидеть, есть ли у вас уже определенные ключи по умолчанию. Если нет, обратитесь к OpenVPN HOWTO за информацией о том, как генерировать ключи. Затем скопируйте первые два ключа (CA и сертификат сервера) из текстовых областей в текстовый редактор, сохраните их с .cerсуффиксом и перенесите на телефон. CM7 должен иметь возможность импортировать .cerсертификаты напрямую, но более старые версии могут использовать файлы .p12 (см. Эту ссылку для получения информации о том, как конвертировать .crt -> .pem ->.p12). После этого перейдите к Settings -> Security -> Install from SD Cardзагрузке сертификатов на телефон.

Оник
источник
Эта ссылка содержит 14 000 слов. Можете ли вы указать мне непосредственно на соответствующие части? Отличается ли генерация ключей, если я хочу подключить другие компьютеры к маршрутизатору, кроме телефона? Я добавил больше деталей к вопросу.
эндолит
1
Те же ключи используются и на обычных клиентах. У меня нет опыта работы с TomatoVPN, но вы должны иметь возможность установить хотя бы пару различных клиентских ключей. Кроме того, возможно использование одних и тех же клавиш одновременно на разных устройствах, но это зависит от настроек OpenVPN. Создание ключа описано под заголовком «Настройка собственного центра сертификации (CA) и создание сертификатов и ключей для сервера OpenVPN и нескольких клиентов». Если вы используете ключи и сохраняете их в безопасности, при обычных обстоятельствах аутентификация пользователя / пароля не требуется. Redirect gateway` должен быть единственным ...
onik 10.10.11
... тот, который вам нужно изменить в настройках CM7.
onik
Причина для понижения?
onik
1

Хорошо, давайте проясним проблему.

Можете ли вы объяснить, какой файл для? Например, для чего нужен «ta.key»?

Обычно на стороне сервера есть список файлов:

  1. server.conf (конфигурация сервера, кажется, у вас нет этого файла?)
  2. ca.crt
  3. ca.key
  4. dh1024.pem

и сервер также должен содержать набор клиентских ключей.

Для клиентской стороны оно должно иметь:

  1. client.crt
  2. client.key
  3. ca.crt
  4. client.ovpn (или client.conf)

Я не могу понять, почему у вас есть Ta.key?

для того, чтобы создать файлы p12, вот инструкция:

Откройте терминал Linux (ПРИМЕЧАНИЕ: у вас должен быть предварительно установлен OpenSSL), введите

openssl pkcs12 -export -in [PathToClientCert] -inkey [PathToClientKey] -certfile [PathToCACert] -name [FriendlyName] -out certs.p12

(вы должны заменить содержимое квадратных скобок на ваши, и вам не нужно оставлять какие-либо квадратные скобки.)

тогда будет создан файл p12 с именем certs.p12.

Надеюсь, это поможет.

dumbfingers
источник
Я не знаю, что такое та. Сервер работает нормально. Я просто не знаю, как к нему подключиться. /tmp/etc/openvpn/server1имеет эти файлы в нем: ca.crt config.ovpn dh.pem server.crt server.key status. Может config.ovpnэто так же, как server.conf?
эндолит
@endolith Да, config.ovpn - это то же самое, что и sever.conf. Возможно, вам придется отредактировать config.ovpn перед запуском OpenVPN.
dumbfingers
@endolith вы хотите подключиться к OpenVPN с телефона андроид CM7 или где-то еще?
гантели
Маршрутизатор работает на сервере OpenVPN, и я хочу подключиться к нему с моего телефона CM7, да.
эндолит
@endolith Во-первых, используйте предоставленную мною команду для создания файла p12, скопируйте его на SD-карту вашего телефона. Выполните следующие действия в меню телефона: «Настройки» - «Беспроводная связь и сети» - «Настройки VPN» - «Добавить VPN», затем выберите «OpenVPNAdd VPN» и заполните следующие параметры: [Имя VPN] любой, какой вам нравится [Установить VPN-сервер], введите IP-адрес так же, как «remote» в client.ovpn [аутентификация пользователя], если вы используете user / password, заполните его. [Установить сертификат CA] коснитесь и импортируйте сертификат пользователя [Установите сертификат пользователя] коснитесь и импортируйте сертификат пользователя (client.crt) Возможно, вам придется проверить дополнительные параметры. Это все.
гантели