Как связать сеть офиса с удаленным сервером. Объединение локальных сетей офисов

Есть ряд решений, которые сейчас особо востребованы клиентами. Одним из них является работа в 1С или других приложениях удаленно на сервере предприятия. Представим, у Вас есть сервер, и Вам нужно предоставить возможность работать с данными и приложениями директору, который всегда в разъездах, или бухгалтеру, работающему из дома.

Ниже мы опишем проект, выполненный нами для клиента, имеющего головной офис в Москве и три подразделения в г. Ярослаль (офис, производство и склад). Нам была поставлена задача объединить офисы и подразделения таким образом, чтобы работа велась удаленно в 1С, установленной на сервере в Москве, а также была возможность работать с документами и сервером электронной почты, расположенном в центральном офисе. Также мы должны обслуживать серверы и компьютеры в удаленных подразделениях. Иными словами, необходимо создать единую среду, в которой пользователи могут работать с общими документами (сертификаты, наряды, накладные), вести учет в режиме он-лайн и работать с электронной почтой.

Работа в 1С удаленно

В каждом офисе и подразделении, где работает более 1 человека, ставится аппаратный VPN-роутер. Это устройство, позволяющее, с одной стороны, позволять пользователям ходить в интернет, а с другой, создавать VPN-каналы. VPN-канал - это защищенное зашифрованное соединение, туннель, который позволяет вашим пользователям свободно обмениваться данными и, в то же время, недоступное извне. Для построение таких каналов используется протокол ipsec , обеспечивающий высокий уровень криптографической стойкости.

На рисунке приведена схема соединения двух офисов.

Таким образом, с помощью двух роутеров мы можем обеспечить связь между офисами.

Казалось бы, запускай 1С удаленно и работай. Увы! Следует помнить, что этот канал проброшен через интернет, а следовательно, имеет ряд ограничений:

  • за трафик, как правило, приходится платить;
  • скорость интернета, а следовательно пропускная способность такого канала, относительно невелика.

Запустив такой удаленный 1С мы получим ситуацию "все висит".

Проблема решается использованием терминального доступа. Один из серверов в центральном офисе, обладающий заметными вычислительными способностями, мы настраиваем как терминальным сервер. Для этого используется встроенная в Windows служба Terminal Services. Необходимо установить и настроить этот компонент, активировать сервер лицензирования Служб терминалов и установить лицензии. После нужно установить на сервер 1С, и после этого этого можно работать в 1С удаленно в терминале .

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

Что это дает? Снижение трафика. Увеличение скорости обработки процедур в удаленной базе 1С. Возможность людям работать из любого места планеты с одной базой 1С удаленно, или одними и теми же файлами.

Но у любой бочки меда должна быть своя ложка дегтя. В данном случае, она заключается в том, что качество и сама возможность работы в терминале зависят от надежности подключения к интернет. Часто канала вполне достаточно для хождения по интернету, однако для работы в терминале нужен довольно надежный интернет. Под надежностью мы понимаем не столько скорость, сколько отсутсвие потерь пакетов в сети. Так, радиоканалы, применяемые многими провайдерами, часто обеспечивают очень высокие пиковые скорости, но процент потерь пакетов может достигать 10%. В этой ситуации терминальное соединение все время будет рваться, и работать будет тяжело.

Но в большинстве случаев нам удается наладить возможность работы в терминале как с удаленным 1С, так и с другими приложениями. Это позволяет нашим клиентам динамично развиваться, минимизировать издержки и обеспечивать устойчивую работу бизнес-процессов.

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

Как создать единую приватную сеть для всех мобильных сотрудников и удаленных филиалов

Что такое VPN?

Предположим, что у нас есть два офиса в разных точках города, или же в разных городах или странах и каждый из них подключен к интернету. Для работы, допустим, 1С в виде единой корпоративной системы нам нужно интегрировать их в единую локальную сеть. (Не смотря на то, что мы предлагаем решения для 1С в виде распределенных баз данных. Иногда проще создать единую сеть и подсоединяться прямо к 1С серверу как будто сервер находиться в Вашем помещении)

Можно конечно купить персональную линию между двух городов, но данное решение это будет скорее всего сверхдорогим.
Решение посредством виртуальной приватной сети (VPN - Virtual Private Network) предлагает нам эту выделенную линию организовать посредством сосздания шифрованного туннеля через интернет.Основное преимуществом VPN перед выделенными линиями связи - сохранение денег компании при полной закрытости канала.
С точки зрения потребителя, VPN - технология, с помощью которой можно организовать удаленный защищенный доступ через открытые каналы Интернета к серверам, базам данных, любым ресурсам вашей корпоративной сети. Допустим бухгалтер в городе А может легко распечатать счет-фактуру на принтере секретаря в городе Б к которому приехал клиент. Удаленные сотрудники подключившись по VPN со своих ноутбуков смогут также работать в сети, как-будто они находятся в физической сети своих офисов.

Очень часто, клиенты сталкиваясь с *тормозами* кассовых аппаратов при использовчании Удаленного рабочего стола приходят к необходимости установки VPN. Это позволят избавиться от персылки данных для кассы туда-обратно на сервер посрдством виртуального COM через интернет и позволет усановку тонкого клиента в любой точке, который общается с кассой напрямую, отправляя на сервер только необходимую информацию по закрытому каналу. Да и трансляция интерфйса RDP прямо в сеть Интернет подвергает Вашу компанию очень большим рискам.

Способы подключений

Способы организации в VPN наиболее целесообразно выделить следующие 2 основных способа:

  • (Клиент - Сеть ) Удаленный доступ отдельно взятых сотрудников к корпоративной сети организации через модем либо общедоступную сеть.
  • (Сеть - Сеть ) Объединение двух и более офисов в единую защищенную виртуальную сеть посредством интернет

Большинство руководств, особенно для виндовс, описывают подключение по первой схеме. При этом нужно понимать, что данное подключение не является туннелем, а только позволяет подключаться к ВПН сети.Для организации данных туннелей нам понадобится только 1 белый IP а не по числу удаленых офисов как многие ошибочно полагают.

На рисунке показаны оба варианта подключения к основному офису А.

Между офисами А и В организован канал обеспечивающий интеграцию офисов в единую сеть. Это обеспечивает прозрачность обоих офисов для лубых устройств конторые находятся в одном из них, что решает многие проблемы. Например организации единой номерной емкости в рамках одной АТС имеющй IP телефоны.

Мобильным клиентам доступны все сервисы офиса А, а при нахожденнии офиса В в единой виртуальной сети и его сервисы.

При этом способ подкдючения мобильных клиентов обычно реализуется протоколом PPTP (Point-to-Point Tunneling Protocol) Протокол туннелирования точка-точка, а второй IPsec или OpenVPN

PPTP

(Point-to-Point Tunneling Protocol bumagin-lohg) – туннельный протокол «точка-точка», детище Microsoft и является расширением PPP (Point-to-Point Protocol), следовательно, использует его механизмы подлинности, сжатия и шифрования. Протокол PPTP является встроенным в клиент удаленного доступа Windows XP. При стандартном выборе данного протокола компанией Microsoft предлагается использовать метод шифрования MPPE (Microsoft Point-to-Point Encryption). Можно передавать данные без шифрования в открытом виде. Инкапсуляция данных по протоколу PPTP происходит путем добавления заголовка GRE (Generic Routing Encapsulation) и заголовка IP к данным обработанных протоколом PPP.

Из-за значительных проблем в безопасности, нет причин для выбора PPTP вместо других протоколов, кроме как из-за несовместимости устройства с другими протоколами VPN. Если ваше устройство поддерживает L2TP/IPsec или OpenVPN, то лучше выбрать какой-то из этих протоколов.

Надо отметить, что почти все устройства, в том числе и мобильные, имеют встроенного в ОС (Windows, iOS, Android) клиента позволяющему мнгновенно настроить подключение.

L2TP

(Layer Two Tunneling Protocol) – более совершенный протокол, родившийся в результате объединения протоколов PPTP (от Microsoft) и L2F (от Cisco), вобравший в себя все лучшее из этих двух протоколов. Предоставляет более защищенное соединение, нежели первый вариант, шифрование происходит средствами протокола IPSec (IP-security). L2TP является также встроенным в клиент удаленного доступа Windows XP, более того при автоматическом определении типа подключения клиент сначала пытается соединиться с сервером именно по этому протоколу, как являющимся более предпочтительным в плане безопасности.

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

OpenVPN

Продвинутое открытое VPN решение, созданное компанией "OpenVPN technologies", которое сейчас дефакто является стандартом в VPN-технологиях. Решение использует SSL/TLS протоколы шифрования. OpenVPN использует OpenSSL библиотеку для обеспечения шифрования. OpenSSL поддерживает большое количество различных криптографических алгоритмов таких как 3DES, AES, RC5, Blowfish. Как в случае IPSec, CheapVPN включает экстримально высокий уровень шифрования - AES алгоритм с ключом длиной 256 бит.
OpenVPN - Единственное решение позволяющие обойти тех провайдеров которые режут или взымают плату за открытие дополнительных протоколов, кроме WEB. Это дает возможность организовать каналы которые впринципе невозможно отследить и у нас есть такие решения

Теперь у Вас есть некоторое представление о том, что такое VPN и как это работает. Если Вы руководитель - задумайтесь, возможно это именно то, что Вы искали

Пример настройки сервера OpenVPN на платформе pfSense

Создаем сервер

  • Interface: WAN (сетевой интерфейс сервера, подключенный к интернету)
  • Protocol: UDP
  • Local Port: 1194
  • Description: pfSenseOVPN (любое удобное название)
  • Tunnel Network: 10.0.1.0/24
  • Redirect Gateway: Включить (Отключите эту опцию, если Вы не хотите, чтобы весь интернет-трафик клиента перенаправлялся через VPN-сервер.)
  • Local Network: Оставляем пустым (Если Вы хотите, чтобы локальная сеть, находящаяся за сервером pfSense, была доступна для удаленных клиентов VPN, укажите здесь адресное пространство этой сети. Допустим 192.168.1.0/24 )
  • Concurrent Connections: 2 (Если Вы приобрели дополнительную лицензию OpenVPN Remote Access Server, укажите число, соответствующее количеству приобретенных лицензий)
  • Inter-Client Communications: Включить (Если Вы не хотите, чтобы VPN-клиенты видели друг друга, отключите эту опцию)
  • DNS Server 1 (2 и т.д.): указать DNS-серверы хоста pfSense. (узнать их адреса можно в разделе System > General Setup > DNS Servers )

далее создаем клиентов и для упрощения процедур конфигурации программ-клиентов, в pfSense предусмотрен дополнительный инструмент – “OpenVPN Client Export Utility” . Этот инструмент автоматически подготавливает установочные пакеты и файлы для клиентов, что позволяет избежать ручной настройки OpenVPN-клиента.

VPN соединение между офисами покрывают такие требования безопасности бизнеса как:

  • Возможность централизованного доступа к информации из офисов, так же как и из главного офиса
  • Единая корпоративная информационная система
  • Корпоративные базы данных с единой точкой входа
  • Корпоративная электронная почта с единой точкой входа
  • Конфиденциальность передаваемой между офисами информации

Если у Вас возникли трудности при настройке или Вы еще не определились с технологией VPN - звоните нам!

Хотя тема и избита, но тем не менее, часто многие испытывают затруднения – будь то начинающий системный администратор или же просто продвинутый пользователь, которого начальство заставило выполнять функции эникейщика. Парадоксально, но несмотря на обилие информации по VPN, найти внятный вариант — целая проблема. Более того, даже складывается впечатление, что один написал – другие же нагло скопировали текст. В итоге, поисковая выдача буквально захламлена обилием ненужной информации, из которой стоящее редко можно вычленить. Поэтому я решил в своей манере разжевать все нюансы (может, кому и пригодится).

Итак, что такое VPN? VPN (Virtual Private Network - виртуальная частная сеть) - обобщённое название технологий, позволяющих обеспечить одно или несколько сетевых соединений (логическую сеть) поверх другой сети (в том числе и интернет). В зависимости от применяемых протоколов и назначений, VPN может обеспечивать соединения трёх видов: узел-узел , узел-сеть и сеть-сеть. Как говорится, без комментариев.

Стереотипная схема VPN

VPN позволяет легко объединить удаленный хост с локальной сеткой фирмы или другого хоста, а также объединить сети в одну. Выгода вполне очевидна – мы легко с клиента VPN получаем доступ к сети предприятия. Кроме того, VPN еще и защищает ваши данные посредством шифрования.

Я не претендую на то, чтобы вам описать все принципы работы VPN, так как есть масса специальной литературы, да и если честно, я и сам много чего не знаю. Тем не менее, если у вас стоит задача «Сделай!», нужно срочно вливаться в тему.

Давайте рассмотрим задачу из моей личной практики, когда нужно было объединить по VPN два офиса –головной и филиал. Ситуацию еще и осложнял тот факт, что в головном офисе стоял видео-сервер, который должен принимать видео с IP камеры филиала. Вот вам вкратце задача.

Способов решения много. Все зависит от того, что у вас есть под рукой. Вообще, VPN легко построить с помощью железного решения на базе различных роутеров Zyxel. В идеале, может случиться и то, что интернет обоим офисам раздает один провайдер и тогда у вас вообще проблем не возникнет (достаточно просто обратиться к прову). Если фирма богата, то может себе позволить и CISCO. Но обычно все решается программными средствами.

А тут выбор велик – Open VPN, WinRoute (учтите, что он платный), средства операционной системы, программы типа Hamanchi (честно говоря, в редких случаях она может и выручит, но полагаться на нее не рекомендую – бесплатная версия имеет ограничение в 5 хостов и еще один существенный минус заключается в том, что все ваше соединение зависит хоста Hamanchi, что не всегда гуд). В моем случае идеально было бы воспользоваться OpenVPN – бесплатной программой, способной незатейливо создать надежное VPN-соединение. Но мы, как всегда, пойдем по пути наименьшего сопротивления.

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

В Windows семейства NT уже вшиты зачаточные возможности серверов. Поднять VPN-сервер на одной из машин не составит труда. В качестве сервера я буду приводить примеры скриншотов Windows 7, но общие принципы будут теми же самыми, что и для старушки XP.

Учтите, что для соединения двух сетей, нужно чтобы они имели разный диапазон ! Например, в головном офисе диапазон может быть 192.168.0.x, а в филиале – 192.168.20.x (или любой диапазон серых ip). Это очень важно, так что будьте внимательны. Теперь, можно приступать к настройке.

Зайдите на сервере VPN в Панель управления -> Центр управления сетями и общим доступом ->изменение параметров адаптера.

Теперь нажмите клавишу Alt, вызвав меню. Там в пункте Файл нужно выбрать «Новое входящее подключение».

Поставьте галочки тем пользователям, которые могут входить в систему по VPN. Я настоятельно рекомендую Добавить нового пользователя, назвать его понятным именем и назначить пароль.

После того, как вы это сделали, нужно в следующем окне выбрать как будут подключаться пользователи. Ставьте галку «Через интернет». Теперь вам остается назначить диапазон адресов виртуальной сети. Причем, можно выбрать сколько всего компьютеров может участвовать в обмене данных. В следующем окне выберите протокол TCP/IP версии 4 нажмите «Свойства»:

У вас появится то, что у меня на скриншоте. Если вы хотите, чтобы клиент получил доступ к локальной сети, в которой находится сервер, просто ставьте галку «Разрешить звонящим доступ к локальной сети». В пункте «Назначение IP адресов» я рекомендую указать адреса вручную по принципу, который я выше описал. В моем примере я дал диапазону всего двадцать пять адресов, хотя мог указать просто и два и 255.

После этого жмем на кнопку «Разрешить доступ».

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

Теперь остается дело за малым – настроить VPN-клиента. На клиентской машине также идете в Центр управления сетями и общим доступом и выбираете Настройка нового подключения или сети . Теперь вам нужно будет выбрать пункт «Подключение к рабочему месту»

Жмете на «Использовать мое подключение к Интернету и теперь вас выбросит в окно, где нужно будет ввести адрес нашего интернет-шлюза в филиале. У меня он имеет вид 95.2.x.x

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

Как вариант, при подключении может выскочить ошибка 800, сигнализируящая о том, что с подключением что-то не то. Это проблема брэндмауэра либо клиента, либо сервера. Конкретно я сказать вам не могу – все определяется экспериментально.

Вот так незатейливо мы создали VPN между двумя офисами. Таким же образом можно объединить и игроков. Однако не стоит забывать, что это будет все-таки не полноценный сервер и лучше использовать более продвинутые средства, о которых я расскажу в следующих частях.

В частности, в части 2 мы с вами рассмотрим настройку OPenVPN под Windows и Linux.

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

Настраивать будем в операционной системе Debian Squeeze, но инструкция полностью пременима к любому дистрибутиву основанному на Debian, и с небольшими изменениями в командах установки и настройки моста и OpenVPN будет применима к любому дистрибутиву Linux или FreeBSD.

Предположим, что дистрибутив Debian или Ubuntu установлены по одной из инструкций: ,

Установим и настроим VPN сеть на основе OpenVPN используя мост tap0

Создаем сетевой мост между физической сетевой eth1 и виртуальным интерфейсом tap0

Устанавливаем нужные программы согласившись на запрос менеджера пакетов:

Настраиваем сеть сервера исходя из того, что у нас 2 сетевые карты: сетевая eth0 eth1 br0

Редактируем конфигурационный файл /etc/network/interfaces :

Auto lo iface lo inet loopback # internet provider auto eth0 iface eth0 inet static address 192.168.50.2 netmask 255.255.255.0 gateway 192.168.50.1 # local network auto eth1 iface eth1 inet static address 10.10.10.1 netmask 255.255.255.0

Auto lo iface lo inet loopback # Прописываем мост, в него включаем VPN интерфейс tap0 и сетевую карту eth1 auto br0 iface br0 inet static # Добавляем в мост tap0 интерфейс openvpn bridge_ports eth1 tap0 address 10.10.10.1 netmask 255.255.255.0 # Internet auto eth0 iface eth0 inet static address 192.168.50.2 netmask 255.255.255.0 gateway 192.168.50.1

После этого при выполнении команды ifconfig должен появится мост br0 с IP 10.10.10.1, интерфейс eth0 c IP адресом 192.168.50.2 и интерфейс eth1 без IP адреса, так как он в мосте br0

Настраиваем OPENVPN:
Копируем скрипты для конфигурирования нашего openvpn сервера командой:

Cp -Rp /usr/share/doc/openvpn/examples/easy-rsa/2.0/ /etc/openvpn/easy-rsa

Вносим изменения в файл /etc/openvpn/easy-rsa/vars , чтобы определить глобальные переменные и при создании ключей поменьше вводить данных:

Vi /etc/openvpn/easy-rsa/vars

Export KEY_COUNTRY="US" export KEY_PROVINCE="CA" export KEY_CITY="SanFrancisco" export KEY_ORG="Fort-Funston" export KEY_EMAIL=" "

Export KEY_COUNTRY="UA" export KEY_PROVINCE="11" export KEY_CITY="Kiev" export KEY_ORG="NameFirm" export KEY_EMAIL=" "

Переходим в папку с скриптами для создания сертификатов и ключей командой:

Cd /etc/openvpn/easy-rsa/

Инициализируем PKI (Public Key Infrastructure) командами:

. ./vars ./clean-all

Внимание. При выполнении команды ./clean-all удалятся все существующие сертификаты и ключи как сервера так и клиентов, потому не выполняйте на боевом сервере, или же выполняйте предварительно сохранив папку /etc/openvpn/ в архив командой:

Tar cf - /etc/openvpn/ | gzip -c -9 > /home/openvpn_backup.tgz

Генерируем Certificate Authority (CA) сертификат и ключ командой:

./build-ca

Большинство параметров подхватятся из файла vars. Только параметр Name надо указать явно:

Name :vpn

Вообще можете все поля заполнять каждый раз так, как Вам нужно.

Генерируем параметры Диффи - Хеллмана командой:

./build-dh

Генерируем сертификат и секретный ключ сервера, на запрос ввода пароля ничего не вводим, и при запросе Sign the certificate? : вводим y и нажимаем Enter выполнив команду:

./build-key-server server

Все параметры принимаем по умолчанию. На запрос Common Name вводим server

Common Name (eg, your name or your server"s hostname) :server

На вопросы Sign the certificate? и 1 out of 1 certificate requests certified, commit? отвечаем положительно:

Sign the certificate? :y 1 out of 1 certificate requests certified, commit? y

Осталось создать сертификаты и ключи для клиентов. Сначала инициализируем параметры:

Cd /etc/openvpn/easy-rsa/ . ./vars

Создаем ключи для пользователя server1 . По примеру, пользователей добавляем столько, сколько нужно:

./build-key server1 ./build-key client1 ./build-key client2

Исходя из того, что сеть у нас 10.10.10.0/24 мы сразу выделяем пул адресов для компьютеров офиса 1 - 10.10.10.40-149 , для офиса 2 выделяем пул адресов 10.10.10.150-254 и выделяем пул адресов для удаленных сотрудников 10.10.10.21-39.
Создаем папку /etc/openvpn/ccd/ где указываем какому клиенту какой айпи командой:

Mkdir -p /etc/openvpn/ccd/

Прописываем каждому клиенту свой IP в сети командами::

Echo "ifconfig-push 10.10.10.150 255.255.255.0" > /etc/openvpn/ccd/server1 echo "ifconfig-push 10.10.10.21 255.255.255.0" > /etc/openvpn/ccd/client1 echo "ifconfig-push 10.10.10.22 255.255.255.0" > /etc/openvpn/ccd/client2

Cоздаем конфигурационный файл сервера:

Vi /etc/openvpn/server.conf ################################## port 1195 proto udp dev tap0 ca easy-rsa/keys/ca.crt cert easy-rsa/keys/server.crt key easy-rsa/keys/server.key # This file should be kept secret dh easy-rsa/keys/dh1024.pem mode server tls-server daemon ifconfig 10.10.10.1 255.255.255.0 client-config-dir /etc/openvpn/ccd keepalive 10 20 client-to-client comp-lzo persist-key persist-tun verb 3 log-append /var/log/openvpn.log #script-security 2 # раскоментировать при работе на OpenVPN версии от 2.4 up /etc/openvpn/up.sh #################################

Vi /etc/default/openvpn

OPTARGS=""

OPTARGS="--script-security 2"

Создаем скрипт /etc/openvpn/up.sh запускающийся при запуске OpenVPN сервера:

Vi /etc/openvpn/up.sh #!/bin/sh brctl addif br0 tap0 brctl addif br0 eth1 ifconfig tap0 0.0.0.0

Даем права на выполнение скрипта /etc/openvpn/up.sh командой:

Chmod +x /etc/openvpn/up.sh

После этого перезагружаем OpenVPN сервер командой:

Выполняем команду ifconfig , должен появится интерфейс tap0 без IP адреса.

Собираем архив с ключами для раздачи удаленным сотрудникам и отправки на офис 2

Создаем папки с именами пользователей командами:

Mkdir -p /etc/openvpn/users/server1 mkdir -p /etc/openvpn/users/client1 mkdir -p /etc/openvpn/users/client2

Создаем папку с архивированными ключами командой:

Mkdir -p /etc/openvpn/users_tgz

Собираем ключи и сертификаты по папкам пользователей командами:

Cp /etc/openvpn/server/easy-rsa/keys/server1.key /etc/openvpn/users/server1/ cp /etc/openvpn/server/easy-rsa/keys/server1.crt /etc/openvpn/users/server1/ cp /etc/openvpn/server/easy-rsa/keys/ca.crt /etc/openvpn/users/server1/ cp /etc/openvpn/server/easy-rsa/keys/client1.key /etc/openvpn/users/client1/ cp /etc/openvpn/server/easy-rsa/keys/client1.crt /etc/openvpn/users/client1/ cp /etc/openvpn/server/easy-rsa/keys/ca.crt /etc/openvpn/users/client1/ cp /etc/openvpn/server/easy-rsa/keys/client2.key /etc/openvpn/users/client2/ cp /etc/openvpn/server/easy-rsa/keys/client2.crt /etc/openvpn/users/client2/ cp /etc/openvpn/server/easy-rsa/keys/ca.crt /etc/openvpn/users/client2/

Создаем конфигурационные файлы из расчета, что server1 - это сервер удаленного офиса 2, а client1 и client2 это удаленные сотрудники подключающиеся к VPN сети снаружи из Windows.

Вместо IP-SERVER-VPN ставим внешний айпи адрес OpenVPN сервера.

Создаем конфигурационный файл OpenVPN для server1:

Echo " remote IP-SERVER-VPN 1195 client dev tap0 proto udp resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert server1.crt key server1.key comp-lzo verb 4 mute 20 verb 3 log-append /var/log/openvpn.log up /etc/openvpn/up.sh " > /etc/openvpn/users/server1/server1.conf

Архивируем ключи для server1 командой:

Tar cf - /etc/openvpn/users/server1 | gzip -c -9 > /etc/openvpn/users_tgz/server1.tgz

client1 :

Echo " remote IP-SERVER-VPN 1195 client dev tap0 proto udp resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert client1.crt key client1.key comp-lzo verb 4 mute 20 verb 3 " > /etc/openvpn/users/client1/client1.ovpn

Архивируем ключи для client1 командой:

Tar cf - /etc/openvpn/users/client1 | gzip -c -9 > /etc/openvpn/users_tgz/client1.tgz

Создаем конфигурационый файл для client2 командой:

Echo " remote IP-SERVER-VPN 1195 client dev tap0 proto udp resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert client2.crt key client2.key comp-lzo verb 4 mute 20 verb 3 " > /etc/openvpn/users/client1/client2.ovpn

Архивируем ключи для client2 командой:

Tar cf - /etc/openvpn/users/client2 | gzip -c -9 > /etc/openvpn/users_tgz/client2.tgz

Настраиваем VPN сервер офиса 2

В инструкции выше мы установили и настроили VPN сервер на Debian GNU/Linux используя OpenVPN, создали ключи с сертификатами для удаленного сервера офиса 2 и удаленных сотрудников. Теперь нам необходио соеденить офис 1 с офисом 2 в единую локальную сеть через VPN.

Предположим, что в офисе 2 у нас установлен и настроен Linux сервер (шлюз), который занимается распределением интернет канала для сотрудников офиса2. На этом сервере есть 2 сетевые карты: eth0 - интернет провайдер и eth1 - локальная сеть, она будет включена в мост, и будет иметь пул адресов 10.10.10.100-254

Нам необходимо установить програмное обеспечение командой:

Aptitude install bridge-utils openvpn

Настраиваем сеть сервера

Настраиваем сеть исходя из того, что у нас 2 сетевые карты сетевая eth0 - получает интернет от провайдера и через неё офис 1 выходит в интернет, а также сетевая eth1 - включена в свич локальной сети офиса 1, она будет включена в мост с интерфейсом br0

Редактируем конфигурационный файл /etc/network/interfaces:

Vi /etc/network/interfaces

Auto lo iface lo inet loopback # internet provider auto eth0 iface eth0 inet static address 192.168.60.2 netmask 255.255.255.0 gateway 192.168.60.1 # local network auto eth0 iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0

Auto lo iface lo inet loopback # Прописываем мост, в него включаем VPN интерфейс tap0 и сетевую карту eth1 auto br0 iface br0 inet static # Добавляем в мост tap0 интерфейс openvpn bridge_ports eth1 tap0 address 10.10.10.150 netmask 255.255.255.0 # Internet auto eth0 iface eth0 inet static address 192.168.60.2 netmask 255.255.255.0 gateway 192.168.60.1

Сохраняем изменения и перезагружаем сеть командой:

/etc/init.d/networking restart

После этого при выполнении команды ifconfig должен появится мост br0 с IP 10.10.10.150 , интерфейс eth0 c IP адресом 192.168.60.2 и интерфейс eth1 без IP адреса, так как он находится в мосте br0

Для компьютеров офиса 2 выдаем компьютерам IP адреса не выходя за рамки 10.10.10.150-254 , где 10.10.10.150 - это IP адрес сервера офиса 2.

Заливаем с VPN сервера офиса 1 собранный архив ключей OpenVPN на сервер офиса 2 командой:

Ssh -P22 /etc/openvpn/users_tgz/server1.tgz :/root/

Или же, если server1 офиса 2 не имеет постоянного, либо динамического айпи будем сливать ключи с VPN сервера офиса 2 командой:

Ssh -P22 :/etc/openvpn/users_tgz/server1.tgz /root/

На запрос пароля - вводим пароль пользователя root , после ввода правильного пароля скачивается архив с ключами в папку /root/server1.tgz

Распаковываем содержимое архива (только файлы ключей без папок ) /root/server1.tgz в папку /etc/openvpn/

Разрешаем OpenVPN запускать скрипты:

Vi /etc/default/openvpn

OPTARGS=""

OPTARGS="--script-security 2"

Создаем скрипт /etc/openvpn/up.sh запускающийся при подключении VPN клиента к VPN серверу:

Vi /etc/openvpn/up.sh #!/bin/sh brctl addif br0 tap0 brctl addif br0 eth1 ifconfig tap0 0.0.0.0 chmod +x /etc/openvpn/up.sh

Перезагружаем OpenVPN сервер командой:

/etc/init.d/openvpn restart

При выполнении команды ifconfig должен появится интерфейс tap0 без IP адреса.

Теперь можно пинговать с обоих офисов компьютеры другого офиса, пользоватся расшаренными папками, принтерами, ресурсами другого офиса, а также устраивать игровые баталии офис 1 на офис 2:)

Для проверки интерфейсов подключенных в мост, выполняем команду:

Brctl show

Ответ системы:

Bridge name bridge id STP enabled interfaces br0 7000.003ds4sDsf6 no eth1 tap0

Видим нашу локальную сетевую карту eth1 и виртуальный интерфейс OpenVPN tap0

Задача выполнена, два удаленных офиса соединены в одну локальную сеть.

Если Вам статья принесла пользу, поделитесь с друзьями кликнув по иконке Вашей социальной сети внизу данной статьи. Прокоментируйте пожалуйста данную инструкцию, понравилась ли она Вам, принесла пользу? Вы также можете подписатся на получение уведомлений о выходе новых статей на свою почту на странице

А теперь сделаем маленький перерывчик и половину минутки отдохнем подняв себе настроение для более продуктивной работы, просмотрим ролик и улыбнемся:

Поделитесь с друзьями или сохраните для себя:

Загрузка...