вторник, 8 октября 2013 г.

[Перевод] Объединяя облака – создаем site-to-site соединение между Amazon Web Services и Windows Azure

image

В этой статье демонстрируется применение виртуальных сетей Windows Azure (Windows Azure Virtual Network, VNET) для создания IPsec-туннеля для соединения с окружением Virtual Private Cloud (VPC) расположенным в Amazon Web Services (AWS). используя это руководство вы сможете буквально содержать рабочие среды в каждом из облаков с полным сетевым сообщением между содержащимися в них виртуальными машинами посредством безопасного IPsec-туннеля. Этот подход может легко применяться для реализации сценария обеспечения отказоустойчивости, резервного копирования или даже миграции между облачными провайдерами. Программный VPN, который используется в этой статье для тестирования – это Open Swan.



Создание VPC в Amazon AWS




Для начала, на стороне Amazon создайте частное виртуальное облако (virtual private cloud, VPC), которое эквивалентно виртуальной сети в Windows Azure.

Создание VPC – публичная подсеть с интернет-шлюзом


create-vpc-wizard-rs


Я выбрал адресное пространство 10.0.0.0/16 для сети Amazon VPC.


create-vpc-wizard-complete


Создайте экземпляр EC2, который будет использоваться для размещения Open Swan и будет входной точкой туннеля со стороны Amazon.


Запуск Ubuntu 13.04 в подсети VPC


launch-ubuntu-instance-1


Укажите подсеть и я рекомендую увеличить размер экземпляра с Micro до Small.


launch-ubuntu-instance-2


Как только экземпляр будет создан, переключитесь в представление EC2 и выделите новый Elastic IP. Это будет ваш внешний IP-адрес, который вы будете использовать для подключения через SSH и при подключении вашей виртуальной сети Windows Azure.


Нажмите Yes Allocate в окне диалога выделения нового IP-адреса.


allocate-elastic-ip


Выберите экземпляр из ниспадающего меню и нажмите Yes Associate.


associate-elastic-ip-instance


Создание виртуальной сети в Windows Azure




Перед конфигурированием сервиса Open Swan нам необходимо создать обратную сторону сети в Windows Azure. Для создания IPsec-туннеля сервису Open Swan требуется IP-адрес шлюза и ключ аутентификации, которые необходимо получить от виртуальной сети в Windows Azure.

Создайте виртуальную сеть в Windows Azure


create-vnet


Укажите параметры Data Center Location и VNET/Affinity Group Name


create-vnet-1


Выберите параметр site-to-site VPN


create-vnet-2


Определите сетевые свойства, которые в нашем случае являются параметрами Amazon VPC Address Space и Elastic IP сервера Open Swan Server


create-vnet-3


Определите адресное пространство Windows Azure Address Space. Убедитесь, что вы добавили подсеть шлюза (Gateway Subnet).


create-vnet-4


Создание шлюза Windows Azure Virtual Network Gateway


После создания виртуальной сети, откройте ее и щелкните “create gateway” –> выберите “static routing”.


azure-create-gateway


После создания шлюза вы сможете получить IP-адрес и ключ аутентификации и настроить Open Swan на стороне Amazon.


azure-gateway-created


Настройка Open Swan в Amazon Web Services




Подключение к Open Swan VM

Переключитесь на просмотр экземпляров и выберите ваш экземпляр, в меню Actions нажмите Connect.


Выберите Connect with a standalone SSH client.


connect-to-instance


Скопируйте команду для SSH (или используйте PuTTY) для подключения через SSH.


connect-via-ssh


Подключившись установите и настройте решение Open Swan for the VPN на стороне Amazon.


Установка Open Swan



sudo apt-get install openswan



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

open-swan-install-1


Следующие шаги потребуют от вас использование текстового редактора для изменения некоторые файлов конфигурации.


Отредактируйте файл ipsec.conf



cd /etc
sudo vi ipsec.conf



После открытия, перейдите в режим редактирования: *i

Замените существующую конфигурацию следующими настройками:



config setup
protostack=netkey
nat_traversal=yes
virtual_private=%v4:10.0.0.0/16
oe=off include /etc/ipsec.d/*.conf



Выйдите и сохраните настройки:: x

Измените директорию ipsec.d и создайте новый файл amznazure.conf.



cd ipsec.d
sudo vi amznazure.conf



Содержимое amznazure.conf

conn amznazure
authby=secret
auto=start
type=tunnel
left=10.0.0.28
leftsubnet=10.0.0.0/16
leftnexthop=%defaultroute
right=[WINDOWS AZURE GATEWAY IP]
rightsubnet=172.16.0.0/16
ike=aes128-sha1-modp1024
esp=aes128-sha1
pfs=no



Примечания к этим параметрам:

  • left= локальный IP-address сервера Open Swan Server

  • leftsubnet= локальной адресное пространство серверов в VPC

  • right= IP-адрес шлюза Windows Azure VNET Gateway (замените на ваш)

  • rightsubnet= адресное пространство Windows Azure Virtual Network




После указания параметров настройки вы можете указать ключ аутентификации.

cd /etc
sudo vi ipec.secrets



Добавьте сточку к файлу в следующем формате (не добавляйте []):

10.0.0.28 [WINDOWS AZURE GATEWAY IP] : PSK "[WINDOWS AZURE GATEWAY KEY]"



Далее, включите IP forwarding в Open Swan VM:

sudo vi /etc/sysctl.conf



Раскомментируйте строчку:

net.ipv4.ip_forward=1



Примените новые настройки:

sudo sysctl -p /etc/sysctl.conf



Далее, запретите проверку source / destination checking в сервере Open Swan.

change-source-dest-check


disable-source-dest-check


Настройте группы Security Groups для доступа траффика из Windows Azure


В консоли управления Amazon выберите Security Groups и -> amzn-azure-group.


Добавьте два дополнительных правила UDP inbound rules – одно для 500 и одно для 4500 с помощью Windows Azure GW IP с /32 CIDR.


amzn-security-group



sudo service ipsec restart



Подключение виртуальной сети Windows Azure к Amazon AWS Virtual Private Cloud

amzn-azvnet-connected


Настройка маршрутизации


Причина использования программного решения VPN на стороне Amazon AWS состоит в том, что сетевой стек AWS поддерживает конфигурирование таблиц маршрутизации, тогда как Windows Azure этого (пока) не позволяет.


В панели управления Amazon вернитесь обратно к представлению VPC и выберите таблицы маршрутов. Выберите таблицу маршрута ассоциированную с вашим VPC и добавьте новый маршрут к 172.16.0.0/16 (Windows Azure Network) и это позволит маршрутизировать траффик через ID экземпляра сервера Open Swan.


Обновление информации о маршрутах


update-route-table


Создание экземпляров для тестирования связи


Создайте экземпляр AWS в подсети VPC.


launch-into-subnet


Запустите экземпляр в Windows Azure в созданной ранее виртуальной сети.


launch-into-vnet


В каждых экземплярах вам будет необходимо разрешить ICMP-правила для каждой VM, чтобы протестировать связь с помощью PING.


Пингуем Azure VM из Amazon VM через IPsec-туннель


ping-from-amzn


Пингуем Amazon VM из Azure VM через IPsec-туннель


ping-from-azure


Это все!




Теперь вы можете размещать приложения в Amazon AWS и Windows Azure и обеспечивать их связь между собой посредством безопасного IPsec-туннеля через интернет.

This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends:



Комментариев нет:

Отправить комментарий