Домашняя » как » Подключайтесь к домашней сети из любой точки мира с помощью OpenVPN и Tomato

    Подключайтесь к домашней сети из любой точки мира с помощью OpenVPN и Tomato

    Несколько недель назад мы рассмотрели установку прошивки маршрутизатора с открытым исходным кодом Tomato на ваш Linksys WRT54GL. Сегодня мы рассмотрим, как установить OpenVPN вместе с Tomato, и как настроить его для доступа к домашней сети из любой точки мира.!

    Что такое OpenVPN?

    Виртуальная частная сеть (VPN) - это надежное защищенное соединение между одной локальной сетью (ЛВС) и другой. Думайте о своем маршрутизаторе как о посреднике между сетями, к которым вы подключаетесь. И ваш компьютер, и сервер OpenVPN (в данном случае ваш маршрутизатор) «пожимают друг другу руки», используя сертификаты, которые проверяют друг друга. После проверки и клиент, и сервер соглашаются доверять друг другу, и тогда клиенту разрешается доступ в сети сервера..

    Как правило, программное и аппаратное обеспечение VPN требуют больших затрат на внедрение. Если вы еще не догадались, OpenVPN - это VPN-решение с открытым исходным кодом, которое (барабанная дробь) бесплатно. Tomato, наряду с OpenVPN, является идеальным решением для тех, кто хочет защищенное соединение между двумя сетями без необходимости открывать свой кошелек. Конечно, OpenVPN не будет работать прямо из коробки. Требуется немного доработать и настроить, чтобы все было правильно. Не волнуйтесь, хотя; мы здесь, чтобы сделать этот процесс более легким для вас, поэтому возьмите с собой теплую чашку кофе и начнем.

    Для получения дополнительной информации об OpenVPN, посетите официальный Что такое OpenVPN? страница.

    Предпосылки

    В этом руководстве предполагается, что вы в настоящее время используете Windows 7 на своем компьютере и используете учетную запись администратора. Если вы являетесь пользователем Mac или Linux, это руководство даст вам представление о том, как все работает, однако вам, возможно, придется немного больше исследовать самостоятельно, чтобы добиться совершенства. Также мы будем устанавливать специальную версию Tomato под названием TomatoUSB VPN на маршрутизаторе Linksys WRT54GL версии 1.1. Чтобы узнать, совместим ли ваш роутер с TomatoUSB, посетите страницу их типов сборки..

    В начале этого руководства предполагается, что у вас есть:

    1. оригинальная прошивка Linksys, установленная на вашем роутере или
    2. прошивку Tomato мы описали в нашей прошлой статье

    Примите к сведению текст выше определенных шагов, указывающий, идет ли речь о прошивке Linksys или прошивке Tomato.

    Установка TomatoUSB

    В предыдущей статье мы обсуждали, как установить оригинальную прошивку Tomato v1.28 с веб-сайта PolarCloud. К сожалению, эта версия Tomato не поддерживает OpenVPN, поэтому мы будем устанавливать более новую версию под названием TomatoUSB VPN.

    Первое, что вам нужно сделать, это зайти на домашнюю страницу TomatoUSB и нажать на ссылку «Скачать Tomato USB»..

    Скачать VPN под Ядро 2.4 (стабильное) раздел. Сохраните файл .rar на свой компьютер.

    Вам понадобится программа для извлечения файла .rar. Мы предлагаем использовать WinRAR, поскольку он бесплатный и простой в использовании. Вы можете скачать копию бесплатной версии на их сайте. После установки WinRAR щелкните правой кнопкой мыши на файле, который вы скачали, и нажмите Извлечь здесь. Вы должны увидеть два файла с именем CHANGELOG а также томат-NDUSB-1.28.8754-vpn3.6.trx.

    Если вы используете прошивку Linksys ...

    Откройте браузер и введите IP-адрес маршрутизатора (по умолчанию 192.168.1.1). Вам будет предложено ввести имя пользователя и пароль. По умолчанию для Linksys WRT54GL используются значения «admin» и «admin»..

    Нажмите на вкладку «Администрирование» вверху. Затем нажмите Обновление прошивки, как показано ниже.

    Нажмите кнопку «Обзор» и перейдите к извлеченным файлам VPN TomatoUSB. Выберите томат-NDUSB-1.28.8754-vpn3.6.trx файл и нажмите кнопку Обновить в веб-интерфейсе. Ваш маршрутизатор начнет установку VPN TomatoUSB, и на его завершение потребуется меньше минуты. Примерно через минуту откройте командную строку и введите ipconfig -релиз определить новый IP-адрес вашего маршрутизатора. Затем введите ipconfig -renew. IP-адрес справа от шлюза по умолчанию ... это IP-адрес вашего маршрутизатора.

    Заметка: После установки Tomato зайдите в Администрирование> Конфигурация и выберите «Удалить все NVRAM…».

    Если вы используете прошивку Tomato…

    Откройте браузер и введите IP-адрес вашего маршрутизатора. Мы предполагаем, что если вы установили Tomato, вам известен IP-адрес вашего маршрутизатора. Если вы не уверены, возможно, по умолчанию установлено значение 192.168.1.1. После введите ваше имя пользователя и пароль.

    Хотя это и не требуется, вы можете сделать резервную копию текущей конфигурации Tomato перед обновлением до TomatoUSB VPN, на всякий случай. Чтобы сохранить конфигурацию, перейдите в «Администрирование»> «Конфигурация» и нажмите кнопку «Резервное копирование». Это предложит вам сохранить файл .cfg на вашем компьютере..

    Теперь пришло время обновить Tomato до TomatoUSB VPN. Нажмите Upgrade в левом столбце и нажмите кнопку «Выбрать файл». Перейдите к файлам, которые мы извлекли ранее и выберите томат-NDUSB-1.28.8754-vpn3.6.trx файл. Затем нажмите кнопку обновления.

    Вас попросят подтвердить обновление; просто нажмите ОК.

    Ваш роутер начнет загружать новую прошивку и перезагрузится через минуту.

    Он может иметь тот же или другой IP-адрес после перезапуска. В нашем случае конфигурация маршрутизатора осталась прежней, поэтому наш IP-адрес остался прежним. Чтобы определить новый IP-адрес вашего маршрутизатора, откройте командную строку и введите ipconfig -релиз. Затем введите ipconfig -renew. IP-адрес справа от шлюза по умолчанию ... является адресом вашего маршрутизатора. Если для вашей конфигурации заданы значения по умолчанию, вернитесь на страницу конфигурации («Администрирование»> «Конфигурация») и нажмите кнопку «Выбрать файл» в разделе «Восстановить конфигурацию». Найдите файл .cfg, который вы сохранили на своем компьютере ранее, и нажмите кнопку «Восстановить»..

    Настройка OpenVPN

    Независимо от того, установлена ​​ли у вас прошивка Linksys или прошивка Tomato, теперь на вашем маршрутизаторе должна быть установлена ​​новая TomatoUSB VPN. Вы увидите несколько новых меню в левом столбце, включая веб-использование, USB и NAS, а также VPN-туннелирование. Для этого руководства мы имеем дело только с меню VPN-туннелирования, поэтому нажмите кнопку VPN-туннелирование. Держите это окно браузера открытым; Мы вернемся к этому в ближайшее время.

    Теперь давайте перейдем на страницу загрузок OpenVPN и загрузим установщик OpenVPN для Windows. В этом руководстве мы будем использовать вторую последнюю версию OpenVPN под названием 2.1.4. В последней версии (2.2.0) есть ошибка, которая сделает этот процесс еще более сложным. Загружаемый файл установит программу OpenVPN, которая позволяет подключаться к вашей сети VPN, поэтому обязательно установите эту программу на любые другие компьютеры, которые вы хотите использовать в качестве клиентов (так как мы увидим, как это сделать). потом). Сохраните файл openvpn-2.1.4-install .exe на свой компьютер.

    Перейдите к только что загруженному файлу OpenVPN и дважды щелкните его. Начнется установка OpenVPN на вашем компьютере. Запустите программу установки со всеми установленными значениями по умолчанию. Во время установки появится диалоговое окно с просьбой установить новый виртуальный сетевой адаптер под названием TAP-Win32. Нажмите кнопку Установить.

    Теперь, когда на вашем компьютере установлен OpenVPN, мы должны начать создавать сертификаты и ключи для аутентификации устройств..

    Создание сертификатов и ключей

    Нажмите кнопку «Пуск» и перейдите в раздел «Аксессуары». Вы увидите программу командной строки. Щелкните правой кнопкой мыши и выберите «Запуск от имени администратора»..

    В командной строке введите cd c: \ Program Files (x86) \ OpenVPN \ easy-rsa если вы используете 64-битную Windows 7, как показано ниже. Тип cd c: \ Program Files \ OpenVPN \ easy-rsa если вы используете 32-битную Windows 7. Затем нажмите Enter.

    Сейчас типа INIT-конфигурации и нажмите Enter, чтобы скопировать два файла с именами vars.bat и openssl.cnf в папку easy-rsa. Держите вашу командную строку, так как мы скоро вернемся к ней.

    Перейдите к C: \ Program Files (x86) \ OpenVPN \ easy-rsa (или же C: \ Program Files \ OpenVPN \ easy-rsa на 32-битной Windows 7) и щелкните правой кнопкой мыши на файле с именем vars.bat. Нажмите Редактировать, чтобы открыть его в Блокноте. В качестве альтернативы, мы рекомендуем открыть этот файл с помощью Notepad ++, поскольку он лучше форматирует текст в файле. Вы можете скачать Notepad ++ со своей домашней страницы.

    Нижняя часть файла - это то, что нас интересует. Начиная со строки 31, измените KEY_COUNTRY значение, KEY_PROVINCE значение и т. д. для вашей страны, провинции и т. д. Например, мы изменили нашу провинцию на «IL», город на «Чикаго», org на «HowToGeek» и отправили электронное письмо на наш собственный адрес электронной почты. Кроме того, если вы используете Windows 7 64-bit, измените ГЛАВНАЯ значение в строке 6 до % ProgramFiles (x86)% \ OpenVPN \ easy-rsa. Не изменяйте это значение, если вы используете 32-битную Windows 7. Ваш файл должен выглядеть примерно так, как показано ниже (с вашими соответствующими значениями, конечно). Сохраните файл, переписав его, как только вы закончите редактирование.

    Вернитесь в командную строку и введите вары и нажмите Enter. Затем введите очистка всех и нажмите Enter. Наконец, введите строить-ча и нажмите Enter.

    После выполнения строить-ча команда, вам будет предложено ввести название страны, штат, местность и т. д. Так как мы уже настроили эти параметры в нашем vars.bat файл, мы можем пропустить эти опции, нажав Enter, но! Перед тем, как начать нажимать клавишу Enter, обратите внимание на параметр Common Name. Вы можете ввести что-нибудь в этот параметр (то есть ваше имя). Просто убедитесь, что вы вводите что-то. Эта команда выведет два файла (сертификат корневого центра сертификации и ключ корневого центра сертификации) в папку easy-rsa / keys.

    Теперь мы собираемся построить ключ для клиента. В той же командной строке введите построить ключ client1. Вы можете изменить «client1» на что угодно (например, Acer-Laptop). Просто обязательно введите то же имя, что и общее имя, когда будет предложено. Например, когда вы запускаете команду ключ сборки Acer-Laptop, Ваше общее имя должно быть «Acer-Laptop». Выполните все настройки по умолчанию, как на последнем шаге, который мы сделали (за исключением Common Name, конечно). Тем не менее, в конце вам будет предложено подписать сертификат и совершить. Введите «у» для обоих и нажмите Enter.

    Кроме того, не беспокойтесь, если вы получили ошибку «невозможно написать« случайное состояние »». Я заметил, что ваши сертификаты все еще делаются без проблем. Эта команда выведет два файла (ключ Client1 и сертификат Client1) в папку easy-rsa / keys. Если вы хотите создать другой ключ для другого клиента, повторите предыдущий шаг, но обязательно измените Общее имя.

    Последний сертификат, который мы будем генерировать, - это ключ сервера. В той же командной строке введите встроенный ключ-сервер сервер. Вы можете заменить «сервер» в конце команды на что угодно (например, HowToGeek-Server). Как всегда, обязательно введите то же имя, что и Общее имя, когда будет предложено. Например, когда вы запускаете команду build-ключ-сервер HowToGeek-Server, Ваше общее имя должно быть «HowToGeek-Server». Нажмите Enter и выполните все настройки по умолчанию, кроме Common Name. В конце введите «y», чтобы подписать сертификат и зафиксировать. Эта команда выведет два файла (ключ сервера и сертификат сервера) в папку easy-rsa / keys.

    Теперь мы должны сгенерировать параметры Диффи-Хеллмана. Протокол Диффи-Хеллмана «позволяет двум пользователям обмениваться секретным ключом по небезопасной среде без каких-либо предварительных секретов». Вы можете прочитать больше о Diffie Hellman на сайте RSA.

    В той же командной строке введите строить-дк. Эта команда выведет один файл (dh1024.pem) в папку easy-rsa / keys.

    Создание файлов конфигурации для клиента

    Прежде чем редактировать какие-либо файлы конфигурации, мы должны настроить динамический DNS-сервис. Используйте эту услугу, если ваш провайдер периодически выдает вам динамический внешний IP-адрес. Если у вас есть статический внешний IP-адрес, перейдите к следующему шагу.

    Мы предлагаем использовать DynDNS.com, сервис, который позволяет вам указывать имя хоста (то есть howtogeek.dyndns.org) на динамический IP-адрес. Для OpenVPN важно всегда знать общедоступный IP-адрес вашей сети, и с помощью DynDNS OpenVPN всегда будет знать, как найти вашу сеть, независимо от того, какой у вас публичный IP-адрес. Зарегистрируйте имя хоста и укажите его на ваш публичный IP-адрес. После того, как вы зарегистрировались в службе, не забудьте настроить службу автоматического обновления в Tomato в разделе Основные> DDNS..

    Теперь вернемся к настройке OpenVPN. В проводнике Windows перейдите к C: \ Program Files (x86) \ OpenVPN \ sample-config если вы используете 64-битную Windows 7 или C: \ Program Files \ OpenVPN \ sample-config если вы используете 32-битную Windows 7. В этой папке вы найдете три примера файлов конфигурации; нас интересует только client.ovpn файл.

    Щелкните правой кнопкой мыши на client.ovpn и откройте его с помощью Блокнота или Блокнота ++. Вы заметите, что ваш файл будет выглядеть как на картинке ниже:

    Тем не менее, мы хотим, чтобы наши client.ovpn файл, похожий на этот картинка ниже. Обязательно измените имя хоста DynDNS на ваше имя хоста в строке 4 (или измените его на ваш публичный IP-адрес, если у вас есть статический). Оставьте номер порта 1194, так как это стандартный порт OpenVPN. Кроме того, не забудьте изменить строки 11 и 12, чтобы они отражали имя файла сертификата вашего клиента и файла ключа. Сохраните его как новый файл .ovpn в папке OpenVPN / config..

    Настройка VPN-туннеля Tomato

    Основная идея теперь состоит в том, чтобы скопировать серверные сертификаты и ключи, которые мы сделали ранее, и вставить их в меню сервера Tomato VPN. Затем мы проверим несколько настроек в Tomato, протестируем VPN-соединение, а затем мы сможем помыть руки и позвонить в день.!

    Откройте браузер и перейдите к маршрутизатору. Откройте меню VPN-туннелирование на левой боковой панели. Убедитесь, что Server1 и Basic также выбраны. Настройте параметры точно так, как они отображаются ниже. Нажмите Сохранить.

    Обновление: режимом по умолчанию является TUN или туннель, но вы, вероятно, захотите изменить его на TAP, который вместо этого соединит сеть. Туннельный режим поместит ваших внешних клиентов в сеть, отличную от внутренней. Поэтому определенно измените Interface Type на TAP вместо.

    Затем нажмите вкладку «Дополнительно» рядом с «Основные». Как и прежде, убедитесь, что ваши настройки в точности соответствуют приведенным ниже. Нажмите Сохранить.

    Наш последний шаг - вставка ключей и сертификатов, которые мы изначально создали. Откройте вкладку Keys рядом с Advanced. В проводнике Windows перейдите к C: \ Program Files (x86) \ OpenVPN \ easy-rsa \ keys на 64-битной Windows 7 (или C: \ Program Files \ OpenVPN \ easy-rsa \ keys на 32-битной Windows 7). Откройте каждый соответствующий файл ниже (ca.crt, server.crt, server.key, а также dh1024.pem) с помощью Блокнота или Блокнота ++ и скопируйте содержимое. Вставьте содержимое в соответствующие поля, как показано ниже. Я должен отметить, что вам нужно только вставить все ниже - НАЧАТЬ СЕРТИФИКАТ - в server.crt. OpenVPN по-прежнему будет работать должным образом, если вы вставите весь файл, но он более «чистый», только вставляя фактическую информацию о сертификате. Нажмите Сохранить, а затем нажмите Начать сейчас.

    Прежде чем мы проверим наше VPN-соединение, есть еще одна вещь, которую мы должны проверить внутри Tomato. Нажмите Basic в левом столбце, а затем Time. Убедитесь, что время маршрутизатора указано правильно, а часовой пояс отображает текущий часовой пояс. Установите NTP-сервер времени в вашей стране.

    Настройка клиента OpenVPN

    В этом примере мы будем использовать ноутбук с Windows 7 в качестве нашего клиента. Первое, что вы захотите сделать, это установить OpenVPN на вашем клиенте, как мы делали это выше на первых шагах по настройке OpenVPN. Затем перейдите к C: \ Program Files \ OpenVPN \ config где мы будем вставлять наши файлы.

    Теперь нам нужно вернуться на наш оригинальный компьютер и собрать в общей сложности четыре файла для копирования на наш клиентский ноутбук. Перейдите к C: \ Program Files (x86) \ OpenVPN \ easy-rsa \ keys снова и скопируйте ca.crt, client1.crt, а также client1.key. Вставьте эти файлы в клиент конфиг папка.

    Наконец, нам нужно скопировать еще один файл. Перейдите к C: \ Program Files (x86) \ OpenVPN \ config и скопируйте новый файл client.ovpn, который мы создали ранее. Вставьте этот файл в клиент конфиг папка также.

    Тестирование клиента OpenVPN

    На клиентском ноутбуке нажмите кнопку «Пуск» Windows и выберите «Все программы»> «OpenVPN». Щелкните правой кнопкой мыши файл OpenVPN GUI и выберите «Запуск от имени администратора». Обратите внимание, что вы всегда должны запускать OpenVPN от имени администратора, чтобы он работал правильно. Чтобы навсегда установить файл для запуска от имени администратора, щелкните файл правой кнопкой мыши и выберите «Свойства». На вкладке «Совместимость» установите флажок «Запустить эту программу от имени администратора»..

    Значок OpenVPN GUI появится рядом с часами на панели задач. Щелкните правой кнопкой мыши значок и выберите «Подключиться». Так как у нас есть только один файл .ovpn в нашем конфиг папка, OpenVPN будет подключаться к этой сети по умолчанию.

    Появится диалоговое окно с журналом соединений.

    После подключения к VPN значок OpenVPN на панели задач станет зеленым и отобразит ваш виртуальный IP-адрес..

    И это все! Теперь у вас есть защищенное соединение между вашим сервером и сетью клиента с использованием OpenVPN и TomatoUSB. Для дальнейшей проверки соединения попробуйте открыть браузер на клиентском ноутбуке и перейти к маршрутизатору Tomato в сети сервера..

    Изображение Ewan