Доступ к внутренней сети образовательного учреждения через VPN (МГТС, Москва и др.)

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

В связи с введением электронных дневников многие школы стали выбирать различные системы и школы. Но в школах где присутствуют опытные сотрудники или технические специалисты выбрали конечно системы, которые можно непосредственно установить на сервере (часто это конечно обычный компьютер) и не зависеть от сети-Интернет (посчитайте сами скорость интернета на данный момент равна от 5 до 8 Mb/sec, в среднем журналы ведутся одновременно в 18 классах, в итоге получаем на каждого учителя приходится при идеальных условиях около 455 Kb/sec (в реальности цифра конечно же меньше); может показаться, что такой скорости достаточно для комфортного заполнения учителя журналов, но как правило в сеть выходят ученики, преподаватели для загрузки учебного материала  что существенно снижает скорость сети-интернета).

И так школы установили системы и столкнулись со следующей проблемой — как предоставить доступ к электронному дневнику из сети-Интернет. И если интернет предоставляется через МГТС (adsl модем), то провайдер установил блокировку, которая не позволяет легко организовать доступ с помощью обычного vpn pptp соединения.

Для решения проблемы можно использовать два способа:

  • Использование сторонних VPN -серверов (сложноть — средняя)
  • Самостоятельное создание VPN сети с помощью neorouter (сложность — высокая)

Способ 1. Использование сторонних VPN -серверов.

Один из самых простых способов. Подключение идет с помощью http://russianproxy.ru и аналогов. Необходимо приобрести тариф с внешним ip адресом (можно динамическим или прямым). Не нужно брать IP(NAT), доступ к серверу из сети-Интернет будет не возможен).
Подходят только эти тарифы:
  • Тариф Закачаешься
  • Тариф Онлайн Игрок
  • Тариф Онлайн Игрок + Постоянный выделенный IP
  • Тариф Мой сервер
  • Тарифы на PPTP / L2TP VPN сервис с динамическим / постоянным выделенным русским IP адресом
Для экономии я взял тариф Закачаешься (99 рублей в месяц).

Шаг 1.

Настройка сервера очень подробна рассмотрена на сайте russianproxy. Необходимо подключаться через L2TP IPSec ESP 3DES VPN.

Шаг 2.

Настройка доменного имени. Если вы взяли постоянный ip адрес, то необходимо просто на dns прописать IP к нужному домену в записи типа A(Adress). И следующие шаги уже не нужны.

Т.к. мы взяли динамический ip, то можно использовать услуги сервиса dyndns.com. Сервис определяет ваш внешний меняющийся IP и назначает ему доменное имя. Необходимо зарегистрироваться на сервисе, после воспользоватся бесплатным тарифом. Необходимо заполнить поле Hostname, отметить галку Wildcard, Service Type (Host with IP address). Остальные настройки нужно оставить без изменений.

Шаг 3. Установка клиента dyndns на сервер.

Для того что бы сервер  dyndns знал о вашем новом ip адресе необходимо скачать программу Dyn Update Clients, которая и будет сообщать ему о изменении ip. После установки необходимо просто указать ваш логин и пароль от dyndns. Все спустя 4 минуты ваш сервер будет доступен например по адресу  http://example.dyndns-ip.com .

Шаг 4. Настройка доступа к серверу по доменному имени образовательного учреждения.

Для решения этой задачи вам необходимо зайти на dns где обслуживается доменное имя учреждения. Далее выбрать нужный поддомен(ы) (например domen.example.com) и присвоить ему значение «chname» ,например,  example.dyndns-ip.com . После обновления основного и промежуточных dns к вам могут заходить по имени http://domen.example.com.

Плюсы:

  • низкая цена (от 100 рублей в месяц)
  • почти стабильное соединение (немного хуже чем у neorouter)
  • возможность использовать https
  • простота настройки
  • исходящая скорость повышается за счет сжатия трафика сервером
  • появляется возможность использования фильтрации трафика с помощью rejector.ru.

Минусы:

  • более высокие требования к настройке сервера с точки зрения безопасности
  • менее стабильное решение чем при использовании openvpn или neorouter
  • при расходе трафика VPN доступ к журналу будет не возможен через этот способ (минус относительный можно найти компании предоставляющие безлимитный трафик, да и потратить 100Gb для большинства школ с фильтрацией трафика практически не возможно)
  • не работает через прокси-сервера (тогда необходимо выбрать openvpn или neorouter)
  • данный способ не желательно применять если у вас на один сервер отвечает за раздачу интернета и на нем стоит журнал
  • необходимо произвести настройку маршрутизации на сервере в школе (требуется если через него идет интернет) или соответствующим образом настроить внутренние dns записи (или прокси-сервер, например squid позволяет это сделать).

Способ 2.Самостоятельное создание VPN сети с помощью neorouter.

Neorouter позволяет организовать зашифрованное VPN соединение между компьютерами используя произвольный порт, предварительно заданный пользователем. Для установки сервера vpn можно приобрести простой vps или даже поставить на маршрутизатор имеющий внешний ip адрес (да именно на маршрутизатор, т.к. нагрузка создается минимальная при организации VPN с помощью neorouter).

Сервер как и клиент может быть под любой популярной операционной системой:

  • Windows (Win 7/Vista/XP/2008/2003/2000)
  • Mac OSX (x86 Leopard/Snow Leopard, PPC Tiger)
  • FreeBSD i386 and x64
  • Linux i386 and x64 (Redhat/Fedora/CentOS, Ubuntu/Debian, SuSE)
  • Linux-based router firmware (Tomato, OpenWRT Kamikaze, Fonera)
  • Android v1.6+
Здесь будут приведен пример настройки для linux (debian).

Шаг 1. Установка сервера.

Установим установщик

apt-get install dpkg
Установим сервер
apt-get install nrserver-1.5.1.2820-free-ubuntu-amd64.deb
Добавим админитстратора
nrserver -adduser ADMIN PASSWORD admin
Добавим пользователей
nrserver -adduser ИМЯ_ПОЛЬЗОВАТЕЛЯ ПАРОЛЬ user
Включим пользователелей
nrserver -enableuser ИМЯ_ПОЛЬЗОВАТЕЛЯ
Запустим сервер (если не запустился автоматически)
/usr/bin/nrserver.sh start
Все теперь пользователь «ИМЯ_ПОЛЬЗОВАТЕЛЯ» может подключиться к серверу VPN.

Шаг 2. Настройка сервера. Установка клиента на сервере, где расположен электронный журнал (электронный дневник).

Т.к. у нас система Netshool, то была установлена версия клиента neorouter для windows. После установки необходимо пройти их ниспадающего меню «file» -> «options» и задать настройки сети «»settings». Укажите сеть отличную от вашей сети в школе!!! Например в образовательном учреждении сеть 172.16.16.0, то тогда можно указать 10.10.10.0. Здесь же можно указать порт для подключения к серверу или оставить его без изменений (порт 32976). В сетевой карте под именем «NeoRouter Connection» удалите настройки шлюза (если они есть).
В разделе «computers» можно увидеть подключенных клиентов и их ip адреса (данная информация понадобиться при настройке перенаправления портов).
В разделе «user account» можно добавить и сразу активировать новых пользователей.
После настройки включите vpn соединение с сервером. Введите в главном окне программы заданный вами пользовательский пароль, логин и ip-адрес сервера (или домен). После входа настройки программы на сервере с системой netshool (или другой) больше менять не требуется. При перезагрузки системы vpn соединение будет устанавливаться автоматически (у вас после подключения появился второй сетевой интерфейс его не нужно отключать).

Шаг 3. Установка клиента на сервер.

Так же на сервер необходимо установить клиент для того что бы можно было обращаться к серверу из учебного заведения и наоборот.

Установим клиент
dpkg -i nrclient-1.5.1.2820-free-ubuntu-amd64.deb
Запуск клиента:
nrclientcmd
После запуска укажите доменное имя сервера (или ip), имя пользователя и его пароль.

Шаг 4. Настройка перенаправления.

Это наверное самая сложная часть. Сделаем перенаправление с vpn сервера (внешний ip 1.1.1.1, ip через vpn 10.10.10.2)с порта № 9000 на порт №80 сервера в образовательном учреждении (ip через vpn 10.10.10.3).

iptables -A INPUT -p tcp -m tcp —dport 9000 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 1.1.1.1 —dport 9000 -j DNAT —to-destination 10.10.10.3:80
iptables -t nat -A POSTROUTING -p tcp —dst 10.10.10.3 —dport 80 -j SNAT —to-source 10.10.10.2
iptables -A FORWARD -i eth0 -d 10.10.10.3 -p tcp —dport 9000 -j ACCEPT
iptables -A FORWARD -i eth0 -s 10.10.10.3 -p tcp —dport 9000 -j ACCEPT

Разрешим подключение в vpn серверу

iptables -A INPUT -m state —state NEW -m tcp -p tcp —dport 32976 -j ACCEPT

Сохраним настройки

iptables-save

Стоит отметить, что в данной статье не рассматривались вопросы безопасности и др., администратору необходимо корректно настроить брандмауэры на vpn сервере и на школьном сервере.

Плюсы:
  • низкая цена 7-8 евро за VPS в месяц (и как правило модно на vps разместить другие ресурсы учреждения)
  • стабильное соединение (при разрые neorouter сам восстанавливает соединение и загрузка идет в качестве службы)
  • интернет идет не идет через VPN, через него проходят только запросы из вне к журналу (дневнику)
  • безопасность системы выше чем при первом варианте
  • работа через прокси-сервера (т.е. работа практически в любых сетях)
Минусы:
  • сложность настройки
  • низкая скорость при первом установлении соединения

About Андрей Русинов

Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.