Локалка через интернет
У меня на блоге уже была одна статья про организацию локальной сети через интернет при помощи Hamachi, но сегодня мы поговорим про еще один сервис, используемый в подобных целях, — OpenVPN.
О чем вообще речь? О том, чтобы связать два или большее количество компьютеров, находящихся в совершенно разных местах, в единую локальную сеть. То есть физически то они будут далеко друг от друга, а виртуально — как будто в одной локальной сети. Что это дает?
- Возможность делиться файлами по сети;
- Возможность запустить какую-нибудь программу типа 1с, обращающуюся с одного компьютера на другой;
- Возможность играть вместе в игры и многое другое.
Сама статья написана не мной, предложил мне ее один из постоянных участников нашего форума, NicromanseR, за что я ему очень благодарен. Сам я лишь немного подредактировал статью, чтобы она больше ложилась в стилистику этого блога.
Итак, как же сделать локалку через интернет с использованием OpenVPN? Задача не совсем простая и потребует некоторого количества манипуляций, но предлагаемая инструкция описывает их достаточно подробно.
Итак, скачиваем дистрибутив программы с официального сайта, распаковываем его и устанавливаем всё по умолчанию. Внимание! Нужно подтвердить установку драйвера сетевого адаптера TAP-Win32 Adapter V9, когда Windows это попросит.
Openvpn сервер
Один из компьютеров будет выступать в качестве Openvpn сервера, к нему будут подключаться другие компьютеры. Желательно, чтобы на нем был выделенный (постоянный) IP адрес. Начнем с его настройки.
- Запустите окно командной строки Пуск – Выполнить (или Win+R) – cmd.exe
- Cамая сложная часть настройки – генерация сертификатов и ключей. Здесь нужно быть предельно внимательным и точно следовать инструкциям. В окне консоли вводим без кавычек «cd C:\Program Files\OpenVPN\easy-rsa» где C:\Program Files\OpenVPN\ папка с установленной программой. Окно консоли не закрываем.
- Вводим опять без кавычек «init-config»
- Реедактируем файл vars.bat и устанавливаем следующие параметры: KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG, KEY_EMAIL. Эти параметры нельзя оставлять пустыми, остальные можно оставить по умолчанию. Пример: set KEY_COUNTRY=RU
set KEY_PROVINCE=MO
set KEY_CITY=Moskow
set KEY_ORG=GazProm
set KEY_EMAIL=root@yandex.ru
set KEY_CN=changeme
set KEY_NAME=changeme
set KEY_OU=changeme
set PKCS11_MODULE_PATH=changeme
set PKCS11_PIN=1234 В стандартном блокноте вам не получится отредактировать данный файл, поэтому я воспользовался программкой «Notepad++». - Вводим по очереди команды «vars» «clean-all» и «build-ca». Последняя команда build-ca запросит значения параметров. Все параметры можно не менять, нажав Enter, кроме одного – Common Name. Здесь нужно ввести какое-нибудь имя, я ввёл название организации.
- Теперь сгенерируем сертификат и ключ для сервера, выполнив команду: «build-key-server server» Также, как и в предыдущей команде, все параметры можно принять по умолчанию, но для Common Name введите слово «server». На последние два вопроса «Sign the certificate? [y/n]» and «1 out of 1 certificate requests certified, commit? [y/n]» ответьте утвердительно, нажав «y»
- Теперь сгенерируем ключи для клиентов, выполнив команды:
«build-key client1»
«build-key client2»
(это команды для двух филиалов, по аналогии можно сделать ключи для большего количества) - Как и в прошлый раз, принимаем все параметры, кроме Common Name, для которого указываем client1 и client2 соответственно. На последние вопросы опять ответьте утвердительно. Осталось выполнить еще одну команду: «build-dh»
- Итак, в результате выполнения всех команд, мы получим в папке C:\Program Files\OpenVPN\easy-rs\keys ряд файлов ключей и сертификатов. Зайдите на сервере в папку C:\Program Files\OpenVPN\config и скопируйте туда содержимое папки .\easy-rs\keys. Скопируйте отдельно следующие файлы для клиентских машин: ca.crt, client1.crt, client1.key, client2.crt, client2.key в безопасное место, затем их нужно будет перенести на компьютеры подключаемых клиентов. Вот и все с сервером, можно запускать службу OpenVPN Service, можно сделать автоматический запуск службы при необходимости (через Пуск- Панель управления – Службы), но осталось сделать конфиг для сервера. Сразу хочу сделать замечание, что на Windows клиентах и серверах путь надо прописывать через ДВОЙНОЙ «\\». И так, зайдём в папку C:\Program Files\OpenVPN\config и создадим там файл «server.ovpn», его содержание должно быть примерно следующее: port 5194
proto udp
dev tun
topology subnet
ca C:\\Program Files\\OpenVPN\\config\\keys\\ca.crt
cert C:\\Program Files\\OpenVPN\\config\\keys \\server.crt
key C:\\Program Files\\OpenVPN\\config\\keys \\server.key # This file should be kept secret
dh C:\\Program Files\\OpenVPN\\config\\keys \\dh1024.pem
server 10.218.77.0 255.255.255.0 # vpn subnet
ifconfig-pool-persist ipp.txt # Тут будут храниться ip адреса клиентов
push «route 192.168.78.0 255.255.255.0»
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 4
mute 20
client-to-client
client-config-dir C:\\Program Files\\OpenVPN\\config\\keys
Конфиг готов, осталось создать ещё 1 файлик с именем «ipp.txt» и следующим содержанием:
client1,10.218.77.10
client2,10.218.77.11
client3,10.218.77.12
Всё, от сервера OpenVPN можно пока отстать. Переходим к настройке клиентской части для создания локалки через интернет.
Openvpn клиент
Чтобы настроить Openvpn клиент, Заходим в папку по адресу C:\Program Files\OpenVPN\config и создаём там файлик «client.ovpn» со следующим содержанием:
remote my_server 5194
client
dev tun
proto udp
topology subnet
persist-key
persist-tun
ca C:\\Program Files\\OpenVPN\\config\\keys \\ca.crt
cert C:\\Program Files\\OpenVPN\\config\\keys \\client1.crt
key C:\\Program Files\\OpenVPN\\config\\keys \\client1.key
comp-lzo
verb 4
mute 20
Тут Вам надо поменять значение «my_server» на IP адрес вашего сервера. Скопируем файлы ca.crt, client1.crt, client1.key в папку C:\Program Files\OpenVPN\config\keys для пользователя «client1» и файлы ca.crt, client2.crt, client2.key для второго клиента (если у вас планируется больше двух). На этом настройка OpenVPN клиента закончена. Пробуем подключиться.
Примечание (Сандер): Если вы все правильно настроите, то после запуска службы на сервере и сеансов на клиентах, ваши компьютеры окажутся в одной локальной сети. Технически это будет выглядеть как будто в сетевых настройках у вас появился новый сетевой адаптер, который функционирует как локалка через интернет. И еще. OpenVPN — это бесплатный продукт с открытым кодом, так что вы работаете не через черный ящик, не завязаны на чужие сервера, в общем, при помощи этой технологии вы получаете настоящую защиту от внешнего мира. Кроме того, OpenVPN прекрасно работает под Линуксом, так что вы даже сможете связать друг с другом в одну компьютеры с совершенно разными операционными системами.
Если у вас будут вопросы, пишите, мы постараемся помочь.
- Основы интернета (11)
- Настройки интернета (17)
- Настройки Windows (17)
- Программы для Windows (12)
- Интересное в интернете (33)
- Настройка сайта (18)
- Развлечения в интернете (13)
- Опасный интернет (23)
- Развитие интернета (18)
- Интернет сервисы (29)
- Линукс для начинающих (8)
- Деньги в интернете (11)
- Цифровая фотография (12)
Как соединить два компьютера в одну сеть через интернет
Если вам хочется поиграть со знакомыми по сети, передать некоторые файлы с одного компьютера на другой или скачать важные документы у коллеги при этом не пользуясь стандартными средствами Интернета, то с помощью специального софта между вашими компьютерами можно создать локальную сеть через Интернет. Наиболее популярной утилитой для создания такой сети является Hamachi.
Прежде всего, необходимо скачать программу Hamachi. Сделать это можно прямо на ее официальном сайте https://secure.logmein.com/RU/home.aspx. Для скачки доступно несколько версий программы, как платные, так и бесплатные. Для домашнего использования подойдет бесплатная версия, которая ограничивает число компьютеров в локальной сети до 16. После установки утилиты нажимаем кнопку «Включить».