Як встановити OpenVPN на CyanogenMod 7?


18

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

У мене є HTC G2 із CyanogenMod 7 , у якому вбудована підтримка OpenVPN :

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

Вдома у мене є маршрутизатор з TomatoVPN , який включає сервер OpenVPN:

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

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

Потрібно запакувати ваші сертифікати та ключі та покласти їх у SD-карту

Де я їх беру?

Скопіюйте client.p12 в кореневий каталог sdcard

Де я це беру?

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

Як конкретно? Які параметри повинні бути якими? Використання налаштувань, які не захищають мене, гірше, ніж взагалі немає захисту через помилкове почуття безпеки.

Я шукаю покрокові інструкції щодо налаштування "дорожнього воїна", який спрямовує весь трафік через VPN.

Де взяти ключі? Чи потрібно використовувати додаткові ідентифікатори користувача / пароля? Які DNS пошукові домени? Які параметри я повинен використовувати в меню розширеного OpenVPN CM7 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.пем
  • 02.пем
  • 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 або серверні сертифікати не спрацювала, сказавши «немає сертифікату для встановлення». Я відредагував файли і видалив усе раніше -----BEGIN, а потім вони встановили. У "Додати OpenVPN VPN" я вибрав сертифікат "ca" для "Встановити сертифікат CA", а сертифікат htc_g2 - "Встановити сертифікат користувача". Коли я намагаюся підключитися, він говорить "Неможливо підключитися до мережі". Те саме, якщо я спробую сертифікат сервера для сертифіката користувача.


Яку операційну систему ви працюєте на домашньому комп'ютері?
newuser

@JonnyP: Домашній комп'ютер - це Ubuntu, але я б краще використовувати роутер, ніж комп'ютер.
ендоліт

1
На цьому етапі я рекомендую вам спробувати спочатку налаштувати OpenVPN на роботу із звичайним клієнтом настільного OpenVPN, а потім скопіювати ту саму програму на свій телефон.
onik

Я не можу повірити, що ніхто не знає, як це зробити. Чому опція існує, якщо ніхто її ніколи не використовував?
ендоліт

У мене є друг, який налаштував це ... на CM 6 . Йому довелося переоформити всі сервіси VPN після того, як він виявив, що клієнт CM вимагає встановити певні поля. Я побачу, чи зможу я отримати більше інформації про нього.
Броам

Відповіді:


1

Перш за все, перевірте Keysвкладку в TomatoVPN, щоб побачити, чи вже у вас визначені деякі клавіші за замовчуванням. Якщо ні, то ознайомтеся з інформацією про те, як генерувати ключі у OpenVPN HOWTO . Далі скопіюйте перші два клавіші (сертифікат CA та сервер) з текстових областей у текстовий редактор та збережіть їх із .cerсуфіксом та перенесіть їх на телефон. CM7 повинні мати можливість імпортувати .cerсертифікати безпосередньо , але старіші версії , можливо , доведеться використовувати P12 - файли (див цю посилання для інформації про те , як конвертувати .crt -> .pem ->.p12). Після цього перейдіть до Settings -> Security -> Install from SD Cardзавантаження сертифікатів на телефон.


Ця посилання містить 14000 слів. Чи можете ви вказати мене безпосередньо на відповідні частини? Чи відрізняється генерація ключів, якщо я хочу підключити до мого маршрутизатора інші комп'ютери, крім телефону? Я додав більше деталей до питання.
ендоліт

1
Ці ж ключі використовуються і для звичайних клієнтів. Я не маю досвіду TomatoVPN, але ви повинні мати можливість встановити принаймні пару різних клієнтських ключів. Крім того, можливо використовувати одночасно одні і ті ж клавіші на різних пристроях, але це залежить від налаштування OpenVPN. Створення ключів описано під заголовком "Налаштування власного сертифікаційного органу (CA) та генерування сертифікатів та ключів для сервера OpenVPN та декількох клієнтів". Якщо ви користуєтесь ключами та зберігаєте їх у безпеці, для звичайних обставин аутентифікація користувача / проходу не потрібна. Перенаправлення шлюзу 'має бути єдиним ...
onik

... те, що вам потрібно змінити в налаштуваннях 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.

Сподіваюся, що це допоможе.


Я не знаю, що таке ta.key. Здається, сервер працює нормально. Я просто не знаю, як з цим підключитися. /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.
гантелі

@endolith Ви хочете підключитися до OpenVPN з Android-телефону CM7 чи десь ще?
гантелі

Роутер працює на сервері OpenVPN, і я хочу підключитися до нього зі своїм телефоном CM7, так.
ендоліт

@endolith Спочатку скористайтеся командою, яку я надав, щоб створити файл p12, скопіюйте його на SD-карту телефону. Дотримуйтесь цього в меню телефону: Налаштування-Бездротові та мережі-Налаштування VPN-Додати VPN, потім виберіть OpenVPNAdd VPN та введіть параметри: [Ім'я VPN] будь-яке, як вам подобається [Встановити VPN-сервер], заповніть IP-адресу, як і "віддалений" у client.ovpn [Автентифікація користувача], якщо ви використовуєте користувача / пароль, заповніть його. [Встановити сертифікат CA] торкніться та імпортує сертифікат [Встановити сертифікат користувача] торкніться та імпортує сервер користувача (client.crt) Можливо, вам доведеться перевірити розширені параметри. Це все.
гантелі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.