Пока люди запускают самолетики из окна, упражняются в настройках прокси-серверов или даже устанавливают dante на VPS, разнокалиберный бизнес столкнулся с реальными последствиями массовых блокировок в своих процессах.


Можно по-разному относиться к происходящему, но когда перестает работать G Suite или облачная структура — это напоминает стихийное бедствие. И оперативно разгребать последствия приходится рядовым системным администраторам. Поэтому в этой статье делюсь вариантами выживания и переосмысления бизнес-процессов — своего рода, хроники с полей.


В качестве решения проблемы могут выступать самые разные варианты, вплоть до аренды квартиры в Светогорске и установки туда 4G модема с финской симкой. Или подкупа знакомого провайдера для установки в его дата-центре сервера, подключенного в обход системы «Ревизор». Но я остановлюсь на паре разумных и законных вариантов.


Виртуальная частная сеть


Когда мониторинг сообщает о недоступности ваших серверов, и в процессе выяснения ситуации вы понимаете, что подсеть зарубежного ЦОД попала в блокировку, то первая цензурная мысль будет о развертывании VPN. Виртуальные «дроплеты» за 5$ вполне спасают ситуацию. Хотя их адреса тоже могут попасть под раздачу.


Напомню, что проверить IP-адрес на блокировку можно на официальном сайте Роскомнадзора. Можно использовать и ботов — они в изобилии на просторах поиска.

Если вдруг вам придется «прыгать» по ЦОДам какого-нибудь сетевого поставщика мощностей (пока ищется нормальное решение), то вот небольшой совет по упрощению процесса: нужно создать снапшот виртуальной машины, сделать его доступным для нужного региона и создать новую виртуальную машину уже в целевом регионе на основе старого снапшота.



Выбор доступных регионов для образа виртуальной машины.


Мне повезло, и пока не заблокированный адрес попался с третьей попытки.


В качестве VPN-решения можно использовать что угодно. OpenVPN настраивается быстро и легко, но возможно потребует установки дополнительного ПО. L2TP \ IPSec посложнее, но поддерживается на свежих версиях IOS и Android.


Ниже приведу список готовых решений на тот случай, если действовать нужно быстро, а разбираться некогда:


  • Streisand. VPN-сервер «все-в-одном», включая Shadowsocks и Tor. Заодно поможет начать разбираться в Ansible.
  • Algo VPN. Без OpenVPN и Tor, зато с IKEv2.
  • Openvpn-install. Простой скрипт для установки OpenVPN.
  • IPsec VPN. Простой скрипт для установки L2TP \ IPSec сервера.

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


IP шестой версии


Одним из вариантов восстановления работоспособности был озвучен переход на IPv6, благо современные дата-центры предоставляют этот протокол. Помимо доступа к облачным серверам, IPv6 поможет восстановить работу сервисов Google — вроде G Suite, — на которых завязаны бизнес-процессы многих организаций.


Если вам повезло, и ваш провайдер поддерживает новый протокол — половина дела сделана. Если не так повезло, то одним из вариантов будет настройка туннеля 6to4\6in4.


Со списком провайдеров, поддерживающих IPv6, можно ознакомиться на wiki-портале version6.ru.

Большинство маршрутизаторов поддерживают такие туннели. В частности, настройка IPv6 на оборудовании MikroTik описана в статье «MikroTik — 6in4 или IPv6 без поддержки провайдера». Общий принцип предельно прост: регистрируемся у брокера, создаем туннель, назначаем адресацию, прописываем маршруты, пользуемся. Проверить работу можно на одном из сайтов для проверки IPv6.



Проверка работы IPv6 — теперь сервисы Google снова заработают.


Важный момент, который стоит учесть при настройке IPv6 — протокол работает без NAT, и все устройства в локальной сети находятся в «большом интернете». Если вы отключили фаервол на рабочих станциях, то сейчас самое время его включить и настроить. Обеспечить чуть большую защиту поможет настройка фаервола на маршрутизаторе. Например, на MikroTik я использовал следующие настройки:


/ipv6 firewall filter

#ограниченный входящий ICMP-трафик
add chain=input limit=100,5 protocol=icmpv6
add action=drop chain=input protocol=icmpv6

#ограниченный исходящий ICMP-трафик
add chain=forward limit=100,5 protocol=icmpv6
add action=drop chain=forward protocol=icmpv6

#Разрешаем входящие соединения типа established и related
add chain=input connection-state=established,related

#Вместо этой строки можно вставить правила для доступа по SSH\etc
#Запрещаем прочий входящий трафик на туннеле
add action=drop chain=input in-interface=**StF**

#Разрешаем исходящие соединения типа established и related
add chain=forward connection-state=established,related

#Вместо этой строки можно вставить правила доступа наружу для локальных серверов
#Блокируем все остальное
add action=drop chain=forward in-interface=**StF**

Где StF — это наименование туннеля 6to4.


Альтернативой настройки IPv6 на маршрутизаторе будет настройка туннеля на рабочей станции, благо системы Windows поддерживают протокол Teredo. Вариант настройки описан в материале «Настройка IPv6/Teredo в Windows 7». Особенность этого протокола в возможности работы из-за NAT.



IPv6 в работе.


К сожалению, недостатком туннелей остается потенциальная возможность блокировки туннельных брокеров, и постоянно менять серверы — не самое изящное решение.


Реорганизация бизнес-процессов


Когда все работает, самое время задуматься о создании инфраструктуры, которой будут не страшны все эти бедствия. Безусловно, если у компании достаточно средств для организации геораспределенного кластера с одним, а то и несколькими узлами в РФ, то это будет хорошим решением.


Но если средств нет, то приходится подыскивать аналоги G Suite. Те же Mail.ru и Yandex предлагают сервисы как совместной работы с текстами, так и почты для домена.


Другие организации все больше задумываются о шаге назад, в сторону собственной инфраструктуры. Облака — это хорошо, но доступность в современных реалиях дороже. Поэтому неплохим вариантом выглядит приобретение своего сервера в лизинг, либо аренда colocation в отечественных ЦОД.


Кстати, поделитесь и своими новостями с полей — вдруг в светлом будущем пригодится.

Комментарии (3)


  1. kirillzak
    27.04.2018 15:31

    IPsec VPN. Простой скрипт для установки L2TP \ IPSec сервера.

    Есть ещё L2TP \ IPSec который позволяет создать несколько учётных записей.


  1. md_pitbul
    27.04.2018 16:29

    Не встречал в комментариях ничего по-поводу SoftEther VPN почему он нигде не фигурирует? открытый исходный код, все работает сразу из коробки.
    может я не знаю о нем чего-то страшного?


    1. dimskiy
      27.04.2018 21:25

      Штука хорошая, многое в GUI реализовано. Но опенвпн вроде стандарта де-факто, хотя мне тоже не понятна всеобщая к нему любовь :)