<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Ipsec on Twistedminds</title><link>https://twistedminds.ru/tags/ipsec/</link><description>Recent content in Ipsec on Twistedminds</description><generator>Hugo</generator><language>en</language><lastBuildDate>Thu, 16 Aug 2012 16:04:37 +0000</lastBuildDate><atom:link href="https://twistedminds.ru/tags/ipsec/index.xml" rel="self" type="application/rss+xml"/><item><title>GRE over IPSeс</title><link>https://twistedminds.ru/2012/08/setting-up-gre-over-ipsec/</link><pubDate>Thu, 16 Aug 2012 16:04:37 +0000</pubDate><guid>https://twistedminds.ru/2012/08/setting-up-gre-over-ipsec/</guid><description>&lt;p&gt;Настоятельно рекомендую ознакомится с &lt;a href="https://twistedminds.ru/2012/08/tunnels/" title="туннели теория" &gt;предыдущей статьей&lt;/a&gt;, посвященной теории.&lt;/p&gt;
&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/08/xzibit-about-gre-over-ipsec.jpg" alt="xzibit about gre over ipsec" title="xzibit about gre over ipsec"&gt;&lt;h5 id="настройка-gre-туннеля"&gt;
 Настройка GRE туннеля
 &lt;a class="heading-link" href="#%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-gre-%d1%82%d1%83%d0%bd%d0%bd%d0%b5%d0%bb%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h5&gt;
&lt;p&gt;Нет ничего проще, чем настроить GRE туннель:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;
Rx(config)# interface tunnel #_number
Rx(config-if)# tunnel source [ source_router_IP_addr | source_router_interface ]
Rx(config-if)# tunnel destination [ dst_router_IP_addr | dst_router_fqdn ]
Rx(config-if)# keepalive [seconds [ retries ]]
Rx(config-if)# tunnel mode mode
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;tunnel interface&lt;/strong&gt; – создает туннельный интерфейс, в процессе создания туннель автоматически переходит в состояния UP, no shutdown подавать на нем не нужно;
&lt;strong&gt;tunnel source&lt;/strong&gt; – указывает на адрес, который должен будет использован маршрутизатором в IP заголовке GRE пакета;
&lt;strong&gt;tunnel destination&lt;/strong&gt; – указывает, где GRE туннель должен быть терминирован;
Обратите внимание, что source и destionation адреса – это адреса loopback или физических интерфейсов непосредственно маршрутизатора, а не адреса самого туннельного интерфейса.
&lt;strong&gt;tunnel mode&lt;/strong&gt; – по умолчанию GRE point-to-point. О GRE multipoint мы поговори буквально в следующий раз, когда речь пойдет про DMVPN.
&lt;strong&gt;keepalive&lt;/strong&gt; – по умолчанию выключен, если при включение команде не будут переданы параметры, то keepalive будет отправляться каждые 10 секунд, а после 3-х безуспешных сообщений будет принято решение о недоступности пути.&lt;/p&gt;</description></item><item><title>Туннели – кто они такие и с какого района?</title><link>https://twistedminds.ru/2012/08/tunnels/</link><pubDate>Thu, 16 Aug 2012 15:42:09 +0000</pubDate><guid>https://twistedminds.ru/2012/08/tunnels/</guid><description>&lt;p&gt;С каждым разом статьи становятся все больше, а почерк размашистей :) В этот раз я решил разделить тему настройки GRE Туннелей, а так же их защиту с помощью IPSec на две части – теоретическую и практическую. Если вы пришли сюда из поисковых систем и сразу собираетесь бросаться в омут с головой, то можете непосредственно &lt;a href="https://twistedminds.ru/2012/08/setting-up-gre-over-ipsec/" title="GRE over IPSec" &gt;перейти к настройке GRE over IPSec с применением IPSec профилей и crypto map&lt;/a&gt;.&lt;/p&gt;
&lt;h5 id="туннели"&gt;
 Туннели
 &lt;a class="heading-link" href="#%d1%82%d1%83%d0%bd%d0%bd%d0%b5%d0%bb%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h5&gt;
&lt;p&gt;В интерпретации Cisco туннель – это логический интерфейс, роль которого состоит в том, чтобы инкапсулирование пакеты одного протокола (passenger protocol), с помощью второго (carrier protocol) и передать его по третьему (transport protocol). В роли протокола, который занимается инкапсуляцией могут выступать такие протоколы как GRE, IPIP. GRE (Generic Routing Encapsulation) – протокол, который в отличии от IPIP, позволяет инкапсулировать в себя другие протоколы, такие как AppleTalk, IP, IPX и другие. Лишь бы &lt;a href="http://www.ietf.org/assignments/ethernet-numbers" title="ether type" class="external-link" target="_blank" rel="noopener"&gt;ethertype&lt;/a&gt; был правильным.&lt;/p&gt;</description></item><item><title>Построение отказоустойчивых IPSec VPN</title><link>https://twistedminds.ru/2012/08/cisco-ipsec-vpns-high-availability/</link><pubDate>Tue, 14 Aug 2012 09:10:44 +0000</pubDate><guid>https://twistedminds.ru/2012/08/cisco-ipsec-vpns-high-availability/</guid><description>&lt;p&gt;&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/08/24883385.jpg" alt="advice borat" title="шутка с &amp;quot;не очень&amp;quot;"&gt;Вот я и подошел к концу освещения темы построение виртуальных частных сетей на чистом IPSec. Последняя вещь, о которой я хотел бы поговорить – это обеспечение отказоустойчивости, а именно HSRP с RRI (chassis failover) и IPSec Stateful failover (transparent failover).&lt;/p&gt;
&lt;p&gt;Предполагается что вы знакомы с семейством протоколов резервирования первого перехода (FHRP) и слышали о механизмах их работы.&lt;/p&gt;
&lt;p&gt;Хотелось бы так же отметить, что для построения отказоустойчивых VPN Cisco рекомендует смотреть на другие технологии, такие как DMVPN и GETVPN.&lt;/p&gt;</description></item><item><title>Site-to-Site IPSec VPN между Cisco и Mikrotik</title><link>https://twistedminds.ru/2012/08/s2s-ipsec-vpn-mikrotik-cisco/</link><pubDate>Thu, 02 Aug 2012 18:21:42 +0000</pubDate><guid>https://twistedminds.ru/2012/08/s2s-ipsec-vpn-mikrotik-cisco/</guid><description>&lt;p&gt;Не смотря на то, что статей в этих ваших интернетах море я все равно внесу немного энтропии и напишу еще одну.&lt;/p&gt;
&lt;p&gt;Я всегда с осторожностью отношусь к хвалебным отзывам и хайпу на форумах, особенно когда дело касается железки стоимостью 60$. Как оказалось, делаю я это совсем не зря. Mikrotik не подвел и порадовал таким набором фееричных багов, что пару раз белому мерзавцу грозила неминуемая смерть.&lt;/p&gt;
&lt;p&gt;Стабильной работы удалось добиться с следующими параметрами:&lt;/p&gt;</description></item><item><title>Cisco ISAKMP профили: S2S и Remote Access VPN на одном маршрутизаторе</title><link>https://twistedminds.ru/2012/08/cisco-isakmp-profiles/</link><pubDate>Wed, 01 Aug 2012 10:42:31 +0000</pubDate><guid>https://twistedminds.ru/2012/08/cisco-isakmp-profiles/</guid><description>&lt;p&gt;&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/07/vpn_logo_130.jpg" alt="" title="vpn"&gt;Настало время поговорить о материях, наиболее близких к реальной жизни, а именно о моменте когда нам надо обеспечить работу одновременно S2S и Remote Access VPN’ов на одной маршрутизаторе. В этой статье речь пойдет о ISAKMP профилях.&lt;/p&gt;
&lt;p&gt;Представим: у вас есть удаленная площадка за NAT и мобильные пользователи, которым надо предоставить доступ в ЛВС. Из-за того, что маршрутизатор в центральном офисе понятия не имеет какой адрес получит сосед, находящийся за NAT, нам придется использовать wild carded pre-shared key (0.0.0.0 0.0.0.0 no-xauth). Но как только мы подадим эту команду, так сразу наши remote access клиенты и превратятся в тыкву. Одним из вариантов решения проблемы могло бы стать использование цифровых сертификатов, однако согласитесь, разворачивать PKI ради двух-трех площадок есть существенный overkill.&lt;/p&gt;</description></item><item><title>Cisco Remote Access IPsec VPN (EzVPN)</title><link>https://twistedminds.ru/2012/07/cisco-remote-access-ipsec-vpns/</link><pubDate>Tue, 31 Jul 2012 08:39:53 +0000</pubDate><guid>https://twistedminds.ru/2012/07/cisco-remote-access-ipsec-vpns/</guid><description>&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/07/vpn_logo_130.jpg" alt="" title="vpn"&gt;&lt;p&gt;Меня всегда интересовало, что же такого легкого в EzVPN, что позволяет Cisco называть его так :) Настройка сервера может быть весьма и весьма развесистой, однако кардинальных отличий от Site-to-Site не так уж и много и заключаются они в так называемой ISAKMP/IKE Phase 1.5, а конкретно в механизме XAUTH.&lt;/p&gt;
&lt;p&gt;Cisco Easy VPN оперирует двумя понятиями – Cisco Easy VPN сервер и Cisco Easy VPN Remote (удаленный агент). В качестве агента могут выступать некоторые маршрутизаторы, ASA МСЭ, компьютеры с установленным Cisco VPN Client. OS X и iPhone/iPad имеют встроенные IPSec клиенты поддерживающие XAUTH (racoon).&lt;/p&gt;</description></item><item><title>Cisco Site-to-Site IPsec VPNs</title><link>https://twistedminds.ru/2012/07/cisco-site-to-site-ipsec-vpns/</link><pubDate>Mon, 23 Jul 2012 10:21:38 +0000</pubDate><guid>https://twistedminds.ru/2012/07/cisco-site-to-site-ipsec-vpns/</guid><description>&lt;p&gt;Наконец-то долгожданная практика ,)&lt;/p&gt;
&lt;p&gt;[&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/07/vpn_logo_130.jpg" alt="" title="vpn"&gt;][1]&lt;/p&gt;
&lt;p&gt;В этой статье мы рассмотрим два простых случая построения site-to-site VPN на оборудовании Cisco. В первом случае оба устройства имеют белые адреса (static crypto map), а во втором один из маршрутизаторов оказывается за NAT (dynamic crypto map). Ну и в качестве бонуса рассмотрим ситуацию совместного сожительства и static и dynamic crypto map на одном маршрутизаторе.&lt;/p&gt;
&lt;p&gt;Те, кому лень читать 1000+ слов могут перейти сразу к конфигурациям, располагающимся в самом конце статьи.&lt;/p&gt;</description></item><item><title>IPsec VPNs – теория</title><link>https://twistedminds.ru/2012/07/ipsec-vpns-theory/</link><pubDate>Fri, 20 Jul 2012 14:36:18 +0000</pubDate><guid>https://twistedminds.ru/2012/07/ipsec-vpns-theory/</guid><description>&lt;p&gt;[&lt;img src="https://twistedminds.ru/wp-content/uploads/2012/07/vpn_logo_130.jpg" alt="" title="vpn"&gt;][1]IPsec – это на самом деле целый фреймворк, который предоставляет следующие сервисы:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Конфиденциальность данных посредством их шифрования алгоритмами DES, 3DES и AES;&lt;/li&gt;
&lt;li&gt;Целостность данных и их аутентификация посредством HMAC функций MD5 и SHA-1;&lt;/li&gt;
&lt;li&gt;Защита от атак типа MitM с помощью зашифрованных порядковых номеров;&lt;/li&gt;
&lt;li&gt;Аутентификация устройств и пользователей.
Фреймворк IPsec описан в нескольких RFC. У него есть две группы стандартов:&lt;/li&gt;
&lt;li&gt;ISAKMP/IKE/Oakley/SKEME используются для создания безопасных соединений, по которым проводится изначальное согласование параметров шифрования, сигнатур, ключей;&lt;/li&gt;
&lt;li&gt;AH и ESP используются непосредственно в таких механизмах защиты данных, как обеспечение конфиденциальности (только ESP), целостность данных, подтверждение того, что данные пришли из валидного источника и защиту от mitm атак.
&lt;strong&gt;IPsec VPN:&lt;/strong&gt;
Конечные устройства или пользователи проходят пять начальных шагов для установки соединения:&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;Должно быть что-то, что инициирует процесс установки соединения. К примеру трафик до назначения, которое описано в ACL. Естественно, соединение может быть установлено чуткими нежными руками сетевых инженеров.&lt;/li&gt;
&lt;li&gt;IPsec в процессе ISAKMP/IKE Phase 1 установит безопасное управляющее соединение, которое будет использоваться для последующего обмена информацией, необходимой для установки защищенного канала передачи данных. Соединения первой фазы – служебные соединения. По этим каналам не передаются какие-либо пользовательские данные или данные приложений.&lt;/li&gt;
&lt;li&gt;Через служебный канал конечные устройства согласуют параметры, необходимые для созданиях защищенных каналов передачи данных и устанавливают их.&lt;/li&gt;
&lt;li&gt;Как только защищенный канал передачи данных создан, устройства могут начинать передачу информации. Если используются HMAC функции, источник создает fingerprint, а получатель его проверяет. Если нужно шифрование – источник, соответственно, зашифровывает информацию, получатель ее расшифровывает.&lt;/li&gt;
&lt;li&gt;И каналы передачи данных, и управляющие каналы имеют время жизни, по истечении которого соединение будет разорвано. Если вам все еще необходимо передавать информацию, то они перестроятся автоматически.
&lt;strong&gt;Security Assotiation (SA)&lt;/strong&gt; – группировка компонентов безопасности (алгоритмы шифрования, HMAC функции, время жизни соединения, DH группы, AH/ESP протоколы, различные идентификаторы, такие как SPI), которые необходимы для установки надежного канала передачи данных.
&lt;strong&gt;Процесс установки соединений для l2l:&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Происходит инициация соединения;&lt;/li&gt;
&lt;li&gt;Начало ISAKMP/IKE Phase 1 – соседи договариваются о том, как управляющее соединение будет защищено;&lt;/li&gt;
&lt;li&gt;С использованием DH алгоритма соседи обмениваться ключами, которые необходимы для алгоритмов шифрования и работы HMAC функций;&lt;/li&gt;
&lt;li&gt;Происходит аутентификация устройств;&lt;/li&gt;
&lt;li&gt;Phase 1 на этом заканчивается, начинается ISAKMP/IKE Phase 2. Соседи согласовывают параметры и ключи необходимые для защиты канала передачи данных (либо через управляющее соединение, либо с использованием алгоритма DH снова);&lt;/li&gt;
&lt;li&gt;Phase 2 заканчивается и устанавливается защищенный канал передачи данных;&lt;/li&gt;
&lt;li&gt;По истечению времени жизни, канал передачи данных должен быть перестроен.
С Remote Access VPN все несколько сложнее, так как дополнительно вам может понадобится аутентификация пользователей или необходимость применить какие-либо политики.
&lt;strong&gt;Для Remote Access VPN это будет выглядеть так&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;Происходит инициация соединения;&lt;/li&gt;
&lt;li&gt;Начало ISAKMP/IKE Phase 1 – соседи договариваются о том как управляющее соединение будет защищено;&lt;/li&gt;
&lt;li&gt;С использованием DH алгоритма соседи обмениваться ключами, которые необходимы для алгоритмов шифрования и работы HMAC функций;&lt;/li&gt;
&lt;li&gt;Происходит аутентификация устройств;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;strong&gt;Опционально:&lt;/strong&gt;&lt;/em&gt; происходит аутентификация пользователя (стандарт XAUTH).&lt;/li&gt;
&lt;li&gt;На это шаге проходит применение политик. У Cisco это называется IKE Mode Config или IKE Client Config. Процесс изменяется от производителя к производителю, но смысл остается примерно один: клиент получает внутренний IP, имя домена, DNS, WINS, политики split tunnel, политики МСЭ и другие.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;strong&gt;Опционально:&lt;/strong&gt;&lt;/em&gt; в Cisco Remote Access VPNs происходит &lt;a href="http://www.cisco.com/en/US/docs/ios/12_3t/12_3t14/feature/guide/gt_rrie.html" title="Reverse Route Injection" class="external-link" target="_blank" rel="noopener"&gt;Reverse Route Injection&lt;/a&gt; (смысл в том, что клиент рассказывает о своих маршрутах VPN терминатору).&lt;/li&gt;
&lt;li&gt;Phase 1 на этом заканчивается, начинается ISAKMP/IKE Phase 2. Соседи согласовывают параметры и ключи необходимые для защиты канала передачи данных (либо через управляющее соединение, либо с использованием алгоритма DH снова);&lt;/li&gt;
&lt;li&gt;Phase 2 заканчивается и устанавливается защищенный канал передачи данных;&lt;/li&gt;
&lt;li&gt;По истечении времени жизни канал передачи данных должен быть перестроен.
Теперь поговорим подробнее про фазы 1 и 2.&lt;/li&gt;
&lt;/ol&gt;
&lt;h6 id="isakmpike-phase-1"&gt;
 ISAKMP/IKE Phase 1
 &lt;a class="heading-link" href="#isakmpike-phase-1"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h6&gt;
&lt;p&gt;Как уже было сказано выше, в процессе первой фазы устанавливается управляющее соединение. Используется 500 udp порт (4500 в случае NAT-T). Вне зависимости от того, является ли VPN l2l или remote access во время первой фазы происходит следующее:&lt;/p&gt;</description></item><item><title>VPN: ключи, шифрование, hmac, key exchange</title><link>https://twistedminds.ru/2012/07/vpn-cont/</link><pubDate>Thu, 19 Jul 2012 06:57:13 +0000</pubDate><guid>https://twistedminds.ru/2012/07/vpn-cont/</guid><description>&lt;p&gt;До того как мы приступим непосредственно к внедрению IPsec VPN, поговорим о технологиях, на которые он будет опираться, предоставляя защиту трафику: ключи, шифрование, аутентификация пакетов, обмен ключами, методы аутентификации пользователей и устройств.&lt;/p&gt;
&lt;h6 id="ключи"&gt;
 Ключи
 &lt;a class="heading-link" href="#%d0%ba%d0%bb%d1%8e%d1%87%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h6&gt;
&lt;p&gt;Ключи используются в таких критически важных функциях VPN как: шифрование, проверка целостности пакета, аутентификация.&lt;/p&gt;
&lt;p&gt;Ключи бывают двух видов – симметричные и асимметричные.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Симметричный ключ&lt;/strong&gt;, это единый ключ, который используется для защиты информации. Алгоритм шифрования использует его и для шифрования, и для дешифрования, что делает подобные алгоритмы быстрыми, но менее криптостойкими. К таким алгоритмам относятся DES, 3DES, AES, RC4 и другие.&lt;/p&gt;</description></item><item><title>Постоянное соединение vpnc</title><link>https://twistedminds.ru/2011/10/persistent-vpnc-connection/</link><pubDate>Sun, 23 Oct 2011 13:45:18 +0000</pubDate><guid>https://twistedminds.ru/2011/10/persistent-vpnc-connection/</guid><description>&lt;p&gt;Сбыдлокодил на коленке скрипт, поддерживающий соединение с vpn-шлюзом:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;#!/bin/bash 
if 
[ &amp;amp;#8220;$(/sbin/route -n | /bin/grep &amp;amp;#8220;172.16.10.0&amp;amp;#8221; | /usr/bin/awk &amp;amp;#8220;{print \$8}&amp;amp;#8221;)&amp;amp;#8221; = &amp;amp;#8220;tun0&amp;amp;#8221; ] 
then 
echo &amp;amp;#8220;$(/bin/date &amp;amp;#8220;+%X %x&amp;amp;#8221;)&amp;amp;#8221; route exist &amp;gt;&amp;gt; /var/log/vpnc.log 
else 
echo &amp;amp;#8220;$(/bin/date &amp;amp;#8220;+%X %x&amp;amp;#8221;)&amp;amp;#8221; no route to scse &amp;amp;#8211; reconnecting &amp;gt;&amp;gt; /var/log/vpnc.log 
if [ -f /var/run/vpnc/pid ] 
then 
echo &amp;amp;#8220;$(date &amp;amp;#8220;+%X %x&amp;amp;#8221;)&amp;amp;#8221; found vpnc pid &amp;amp;#8211; deleting &amp;gt;&amp;gt; /var/log/vpnc.log 
&amp;amp;#8220;$(/bin/rm -f /var/run/vpnc/pid)&amp;amp;#8221; 
fi 
echo &amp;amp;#8220;$(date &amp;amp;#8220;+%X %x&amp;amp;#8221;)&amp;amp;#8221; establishing scse vpn tunnel &amp;gt;&amp;gt; /var/log/vpnc.log 
&amp;amp;#8220;$(/usr/sbin/vpnc /etc/vpnc/scse.conf)&amp;amp;#8221; 
fi
&lt;/code&gt;&lt;/pre&gt;</description></item></channel></rss>