Сегодня 27 сентября 2016
18+
photokina
Мастерская

Как попасть в Америку. Создаём VPN-сервер в Amazon EC2

Напоминаем, что все действия, описанные в статье, пользователь делает на свой страх и риск. Материал приведен исключительно в ознакомительных целях. Если же вы собираетесь воспроизводить действия, описанные ниже, настоятельно советуем внимательно прочитать статью до конца хотя бы один раз. Редакция 3DNews не несет никакой ответственности за любые возможные последствия.

#Вступление

В этой статье будет достаточно подробно рассмотрено создание собственного VPN-сервера в облачной платформе Amazon Elastic Compute Cloud. Причём за очень символическую сумму. В качестве клиента будет выступать Windows 7. Зачем это всё надо? Хотя бы для того, чтобы получить доступ к веб-сервисам, которыми разрешено пользоваться только в стране победившего капитализма. С их (сервисов) точки зрения вы будете находиться на территории США. На самом деле вариантов использования такого доступа превеликое множество. Самый простой пример — можно бесплатно слушать радио в Last.fm или Pandora.

У продвинутых пользователей наверняка возникнет один резонный вопрос. Зачем нам настраивать какой-то VPN-сервер, да ещё в Amazon? Есть же прокси-сервера, зачастую бесплатные, есть Tor и прочие анонимайзеры, есть, в конце концов, провайдеры VPN-доступа с вполне приемлемыми тарифами. Предлагаемый метод в чём-то хуже, а в чём-то лучше перечисленных решений. Его основные плюсы таковы: простота работы, относительно высокая безопасность и практически полная бесплатность. Интересно? Тогда поехали.

Идея поднятия VPN-сервера в Amazon EC2, мягко говоря, не нова. Нюанс в том, что с первого ноября прошлого года каждому новому клиенту Amazon Web Services на целый год бесплатно предоставляется доступ к небольшому кусочку облака — 613 Мбайт оперативной памяти, 10 Гбайт дискового пространства, 15 Гбайт трафика, 750 часов машинного времени и так далее. Чувствуете гешефт? Конечно, что-то серьёзное на такой машине не запустишь. Но для наших целей подобной конфигурации вполне хватит, к тому же и платить за неё фактически не надо.

Итак, нам понадобятся следующие вещи: действующая банковская карта хотя бы с тремя долларами на счету, клиенты PuTTY и PuTTYgen с этого сайта, учетные записи в Amazon и DynDNS, а также немного свободного времени. Если нет аккаунта в Amazon и DynDNS, то их придётся создать. Рекомендуем предварительно внимательно почитать лицензионные соглашения и правила использования всех сервисов и программ на предмет легальности в вашей стране. Регистрация в Amazon и DynDNS ничем не отличается от аналогичного процесса на других сайтах, так что сложностей возникнуть не должно. Отметим лишь, что при регистрации в Amazon надо будет указать правильный номер телефона — он потребуется для последующей активации. Также при указании реквизитов карты в Amazon.com и AWS на счёте автоматически будет зарезервирована сумма в один доллар. Наконец, ещё одно замечание. Лучше не использовать браузеры IE и Opera. IE в самый неподходящий момент заблокировал загрузку цифрового ключа, а Opera почему-то отказывалась показывать PIN-код для активации по телефону. В Chrome, к примеру, всё прошло успешно.

#Создаём instance в Amazon EC2

Для начала входим в свой аккаунт на Amazon и переходим в консоль EC2. Жмём на кнопку Sign Up Now и приступаем к процессу регистрации в Amazon Web Services (AWS). Ничего сложного в нём тоже нет. Про нюансы с номером телефона и резервированием средств на карте уже сказано выше. В конце вам позвонят по указанному номеру, и потребуется ввести четырёхзначный PIN-код, который будет показан на экране, с клавиатуры телефона. По завершении в почтовый ящик упадёт несколько писем с подтверждением регистрации и активации аккаунта AWS.

Возвращаемся в консоль EC2. Теперь она станет выглядеть как на скриншоте ниже. Обратите внимание, что мы должны находиться на вкладке EC2 и в регионе US East. Нажимаем Launch Instance и приступаем непосредственно к его созданию.

На первом этапе нам предлагается выбрать Amazon Machine Image (AMI), этакий виртуальный образ диска с ОС. В принципе, можно остановиться на любом подходящем образе с Linux объёмом не более десяти отведённых нам гигабайт. В качестве примера будем использовать образ с Ubuntu 10.04.2 LTS. Его
можно найти, вбив в поиск ID: ami-3e02f257. Затем нажимаем Select и переходим к следующему этапу.

Выбираем в Instance Type пункт Micro (t1.micro). В Number of Instances оставляем единицу.

На следующем этапе ничего не трогаем и оставляем значения по умолчанию. Ставим галочку напротив Termination Protection.

Затем нам предлагают проставить теги для нашего виртуального сервера. Напротив Name вводим любое понравившееся имя сервера.

Наступает ответственный момент — генерация приватных ключей для доступа к серверу. Вбиваем имя для нашего ключа (любое) и жмём Create & Download your Pair Key. Браузер предложит сохранить файл с расширением .pem. Отказываться не стоит. На всякий случай неплохо бы сразу же сделать копию этого файла и сохранить в другом месте. Если по каким-то причинам ключ не загрузился, то придётся всё отменить (Cancel справа вверху) и повторить все предыдущие шаги. Без ключа дальнейшие действия теряют всякий смысл.

На этом этапе ничего не трогаем и просто жмём Continue.

Напоследок проверяем, всё ли мы правильно выбрали и настроили, затем жмём Finish. Теперь потребуется пара минут для запуска сервера.

Пришла пора дать свежесозданному серверу доступ в Сеть. Для этого в левом меню выбираем пункт Elastic IPs, жмём на кнопку Allocate New Address и соглашаемся с выделением нам нового IP-адреса. Затем кликаем по Associate Address, в списке выбираем наш сервер (он там единственный) и снова соглашаемся. В итоге должно получиться что-то вроде этого:

Теперь переходим в раздел Security Groups, а в списке выбираем default group. Переходим на вкладку Inbound. Перед нами появляется окно управления брандмауэром. Выбираем в списке Create a new rule пункт SSH (все нужные поля заполнятся сами) и жмём Add rule. Затем в том же списке выбираем Custom TCP rule. В поле Port Range вводим 1723, Source оставляем таким же (0.0.0.0/0) и опять нажимаем Add rule. Наконец, жмём Apply Rule Changes. Всё, на этом базовая настройка виртуального сервера закончена.

#Настройка DynDNS

DynDNS нужен для того, чтобы при смене выдаваемого IP-адреса не пришлось лишний раз лезть в консоль AWS. Короче, для удобства. Итак, логинимся на сайте DynDNS и попадаем в консоль управления аккаунтом. Здесь кликаем по Add Host Services.

В поле Hostname вбиваем любое подходящее доменное имя (в нашем примере это amazec2), а в списке справа выбираем любой домен. В Service Type указываем Host with IP Address и кликаем чуть ниже по ссылке Your current location’s IP Address is xx.xx.xx.xx. Внизу странички будет кнопка Add To Cart. Жмём на неё.

Затем выбираем Proceed to checkout и Activate Services.

#Настройка PuTTY

Первым делом надо переконвертировать ключ из формата pem в ppk. Для этого запускаем PuTTYgen. В меню Conversions кликаем на Import key и выбираем наш pem-ключ, который был скачан ранее. Внизу окна надо выбрать SSH-1 (RSA), нажать Save Private Key и сохранить полученный ключ в формате ppk.

Теперь потребуется вернуться в консоль AWS и выбрать в меню слева пункт Instances, а затем справа вверху нажать кнопку Refresh. Кликаем по нашему серверу и снизу в информационной панели находим пункт Public DNS. Выделяем адрес и копируем его в буфер обмена.

Запускаем PuTTY и в поле Host Name вставляем скопированный адрес. Затем переходим в меню слева в Connection → SSH → Auth и указываем в Private key file путь до нашего ключа в формате ppk. А в Window → Translation выбираем кодировку UTF-8.

Наконец, жмём заветную кнопку Open. В диалоговом окне кликаем на Yes. И вот перед нами открылась удалённая консоль нашего сервера. Вводим в качества логина ubuntu и нажимаем Enter.

Следующая страница →
 
Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Материалы по теме
⇣ Комментарии