[NetWork] IPSec VPN
[NetWork] IPSec VPN

Обзор IP-безопасности

IPsec > IP Security Это механизм или система безопасности сетевого уровня. Обеспечьте безопасность с помощью различных механизмов и протоколов. IPsec позволяет: <code>1. контроль доступа</code> <code>2. Конфиденциальность</code> <code>3. честность</code> <code>4. Проверка источника данных</code> <code>5. Отклонить воспроизведение сообщения</code> и другие функции безопасности Он может представить различные алгоритмы проверки, алгоритмы шифрования и механизмы управления ключами. IPSec VPN использует IPsec Туннелирование L3 VPN IPSec также имеет недостатки: сложная конфигурация, потребление большого количества вычислительных ресурсов, увеличение задержки и отсутствие поддержки многоадресной рассылки.

Режим работы IPsec

Режим работы IPsec делится на два типа [Режим передачи]: Режим передачи реализует только функции сквозной защиты. VPN-туннель не установлен

[Туннельный режим]: в туннельном режиме мы отвечаем не только за сквозную защиту, но и устанавливаем VPN-туннели.

PS: Функции IPSec не ограничиваются VPN, VPN — лишь одна из многих его функций.

протокол безопасности IPSec

Эта функция в основном используется для защиты данных [AH]

Authentication Header > Протокол проверки заголовка сообщения IP-протокол номер 51 Обеспечить проверку целостности данных и проверку источника Может обеспечить ограниченное сопротивление повторному воспроизведению Невозможно обеспечить функцию шифрования данных Через NAT невозможно проникнуть. NAT изменит IP-адрес пакета данных, а AH пересчитает проверочное значение для всего сеанса, что приведет к другому проверочному значению для данных, полученных другой стороной.

【ESP】

Инкапсуляция полезных данных безопасности, также называемая инкапсуляцией полезных данных безопасности IP-протокола номер 50, может обеспечивать гарантию конфиденциальности данных, проверку целостности данных и проверку источника, может обеспечивать определенные возможности предотвращения повторного воспроизведения, а также может поддерживать проникновение NAT, нового IP-заголовка ESP Force. Выполнить проверку. , поэтому NAT не повлияет на результат проверки после изменения заголовка данных. В реальных ситуациях в основном используется ESP.

IPSec SA

Также называемый IPSec Security Alliance, он определяет набор решений для защиты определенных потоков данных, который включает в себя протоколы защиты, алгоритмы и ключи. [Источник]: ручная настройка и согласование IKE [Управление ключами]: ручная настройка ключей Ключи согласования IKE

IKE

протокол обмена сетевыми ключами Используется для защиты передачи ключей и автоматического согласования ключей. использовать<code>Diffie-Hellman</code>Безопасное распространение ключей и проверка личности в незащищенных сетях Регулярно обновляйте SA и ключи для достижения полной безопасности. Эффективно снижает сложность ручного развертывания. Работает на UDP-порту 500.

Связь между IKE и IPSec

IKE предоставляет IPSec услуги автоматического согласования, обмена ключами и услуги установления SA. Протокол безопасности IPSec отвечает за предоставление реальных услуг безопасности.

Процесс установления туннеля IPSec

[Фаза 1] Согласование IKE SA Согласование плана защиты для второй фазы [Фаза 2] Согласование IPsec SA Согласование плана защиты передачи данных под защитой IKE SA

Рабочий процесс IPsec

> Порядок обработки исходящих пакетов

База данных политики безопасности SPD записывает, какой IPsec SA следует вызывать для защиты пакетов данных с этими адресами назначения.

  1. Сначала пакет поступает на выходной интерфейс и ищет политику IPSec.
  2. Найдите соответствующий IPsec SA в соответствии с политикой IPSec. Если он найден, будет запущена соответствующая служба безопасности. Если он не найден, будет выполнен поиск IKE SA.
  3. Найдите IKE SA. Если он найден, создайте IPSec SA под защитой IKE SA и выполните службы безопасности. Если он не найден, создайте IKE SA.
  4. После создания IKE SA создайте IPSec SA и выполняйте услуги безопасности под защитой IKE SA.

> Порядок обработки входящих пакетов

  1. После того, как пакет данных поступит на входящий интерфейс, проверьте, защищены ли данные IPSec.
  2. Если защищено, найдите соответствующий IPSec SA.
  3. Если он не найден, то он будет передан непосредственно на верхний уровень для обработки.
  4. Найдите IPSec SA
  5. Если не найден, отбросьте пакет
  6. Если обнаружено, используйте IPSec SA для декапсуляции и получения исходных данных.

Одноэтапный режим IKE

> основной режим Main Mode

Принять шестиходовой механизм рукопожатия, более безопасный и надежный. Потому что идентификационная информация шифруется при пятом и шестом рукопожатиях. привести косновной режим Только через публичную сетьIPАдрес идентифицирует другую сторону,Обе стороны должны иметь фиксированные общедоступные IP-адреса.,Обе стороны идентифицируют друг друга через общедоступные IP-адреса.

> жестокий режим Aggressive Mode

Используя трехстороннее рукопожатие, быстрее Информация о личности передается в ходе рукопожатий 1 и 2, жестокий режим Только шифрование На одном конце третьего рукопожатия не обязательно должен быть фиксированный общедоступный IP-адрес. Обе стороны используют полное доменное имя для идентификации другого конца. Переговоры должны быть активно инициированы в конце с незафиксированным IP-адресом.

Двухэтапная модель IPSec

> Быстрый режим

Всего будет согласовано два IPSec. SA <code>исходящий IPSec SA</code> <code>входящий IPSec SA</code>

Проникновение NAT

Решение проблемы конфликта между NAT и IPSec Поскольку ESP/AH представляет собой только трехуровневую инкапсуляцию без четырехуровневого заголовка, его невозможно преобразовать с помощью NAT. Проникновение NAT заключается в инкапсуляции порта четырехуровневого заголовка UDP4500 перед заголовком ESP. .

IPsec VPN-порт

UDP 500 для определения того, что проникновение NAT не используется. UDP 4500 для определения того, что проникновение NAT используется.

Режим развертывания IPSec VPN

Всего существует два режима развертывания.

> Развертывание руки

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

> Развертывание одной руки

Это также означает, что при развертывании VPN в интрасети необходимо настроить сопоставление портов на выходном устройстве общедоступной сети с устройством VPN, чтобы снизить потребление ресурсов и нагрузку на производительность выходного устройства общедоступной сети.

Конфигурация IPSec VPN

> Процесс настройки активного режима

  • ===Одноступенчатая конфигурация===
  • Сначала создайте интересующий поток, настройте адреса источника и назначения ACL и сопоставьте частные адреса обоих концов.
  • Создайте IKE Proposal (предложение), настройте метод шифрования IKE, алгоритм проверки и метод проверки.
  • Создайте секретный ключ конфигурации и используйте адрес общедоступной сети для идентификации другой стороны.
  • Создайте профиль IKE, вызовите предложение и связку ключей, созданные ранее, и укажите общедоступный IP-адрес узла.
  • ===Конфигурация второго этапа===
  • Создайте набор преобразования IPSec, настройте режим работы IPSec, протокол инкапсуляции, алгоритмы аутентификации и шифрования.
  • Создайте политику IPSec для вызова ранее созданного потока интересов, профиля IKE и набора преобразований IPsec.
  • Наконец, задайте политику IPsec для порта общедоступной сети.

[Одноэтапная конфигурация]

Язык кода:javascript
копировать
/*&#x4E3B;&#x52A8;&#x6A21;&#x5F0F;&#x914D;&#x7F6E;&#x6D41;&#x7A0B;*/
/*&#x4E00;&#x9636;&#x6BB5;&#x914D;&#x7F6E;*/
acl advance [id] 
/*&#x521B;&#x5EFA;&#x9AD8;&#x7EA7;ACL*/
rule 1 permit source [ip-address] [wild-mask] destination [ip-address] [wild-mask]
/*&#x5339;&#x914D;&#x6E90;&#x5730;&#x5740;&#x4E3A;address&#x3001;&#x76EE;&#x7684;&#x5730;&#x5740;&#x4E3A;address&#x7684;&#x6570;&#x636E;&#x5305;*/
/*&#x8FD9;&#x91CC;&#x4E0D;&#x9700;&#x8981;&#x914D;&#x7F6E;permit any &#x534E;&#x4E09;&#x5728;&#x7528;&#x4E8E;&#x5305;&#x8FC7;&#x6EE4;&#x7684;&#x60C5;&#x51B5;&#x4E0B;&#x7B56;&#x7565;&#x9ED8;&#x8BA4;&#x662F;permit*/
/*&#x8FD9;&#x4E00;&#x4E2A;&#x6B65;&#x9AA4;&#x5C31;&#x662F;&#x5728;&#x521B;&#x5EFA;&#x6211;&#x4EEC;&#x7684;&#x611F;&#x5174;&#x8DA3;&#x6D41;*/
[Router] ike proposal [number]
/*&#x521B;&#x5EFA;&#x6211;&#x4EEC;&#x7684;IKE Proposal &#x5B89;&#x5168;&#x63D0;&#x8BAE;*/
[Router-ike-proposal-[id]] encryption-algorithm [3des-cbc / aes-cbc-128 / aes-cbc-192 / aes-cbc-256 / des-cbc]
/*&#x8BBE;&#x7F6E;IKE&#x5B89;&#x5168;&#x63D0;&#x8BAE;&#x4E2D;&#x6240;&#x4F7F;&#x7528;&#x7684;&#x52A0;&#x5BC6;&#x7B97;&#x6CD5;*/
[Router-ike-proposal-[id]]authentication-method [dsa-signature / pre-share / rsa-signature]
/*&#x8BBE;&#x7F6E;IKE&#x5B89;&#x5168;&#x63D0;&#x8BAE;&#x4E2D;&#x6240;&#x4F7F;&#x7528;&#x7684;&#x9A8C;&#x8BC1;&#x65B9;&#x6CD5;*/
[Router-ike-proposal-[id]] authentication-algrithm [md5 / sha]
/*&#x914D;&#x7F6E;IKE&#x5B89;&#x5168;&#x63D0;&#x8BAE;&#x4E2D;&#x6240;&#x4F7F;&#x7528;&#x7684;&#x9A8C;&#x8BC1;&#x7B97;&#x6CD5;*/
[Router-ike-proposal-[id]] dh [group-id]
/*&#x521B;&#x5EFA;IKE&#x9636;&#x6BB5;1&#x5BC6;&#x94A5;&#x534F;&#x5546;&#x65F6;&#x641C;&#x4F7F;&#x7528;&#x7684;DH&#x4EA4;&#x6362;&#x7EC4;&#x3010;&#x53EF;&#x7565;&#x3011;*/
[Router-ike-proposal-[id]] sa duration [seconds]
/*&#x914D;&#x7F6E;IKE&#x5B89;&#x5168;&#x63D0;&#x8BAE;&#x7684;SA&#x751F;&#x5B58;&#x5468;&#x671F;&#x3010;&#x53EF;&#x7565;&#x3011;*/
[Router] ike keychain [name]
/*&#x521B;&#x5EFA;IKE keychain*/
[Router-ike-keychain-[name]]pre-shared-key [address [ip-address] / hostname [hostname] key [cipher / simple [password]]]
/*&#x914D;&#x7F6E;KIE keychain&#x7684;&#x9884;&#x5171;&#x4EAB;&#x5BC6;&#x94A5;&#xFF0C;&#x662F;&#x516C;&#x7F51;&#x5730;&#x5740;&#xFF08;ip-address&#xFF09;&#x6A21;&#x5F0F;&#x8FD8;&#x662F;&#x4E3B;&#x673A;&#x540D;&#xFF08;hostname&#xFF09;&#x6A21;&#x5F0F;*/
[Router-ike-keychain-[name]]match local address [interface range / ip-address] vpn-instance [vpn-name]
/*&#x914D;&#x7F6E;IKE keychain&#x7684;&#x4F7F;&#x7528;&#x8303;&#x56F4;&#x3010;&#x53EF;&#x7565;&#x3011;*/
[Router] ike identiy [address [ip-address] dh / fqdn [fqdn-name] user-fqdn [user-fqdn-name]]
/*&#x914D;&#x7F6E;&#x672C;&#x7AEF;&#x7684;&#x8EAB;&#x4EFD;&#x4FE1;&#x606F;*/
[Router] ike profile [name]
/*&#x521B;&#x5EFA;&#x4E00;&#x4E2A;IKE  Profile &#x6863;&#x6848;*/
[Router-profile-[name]]exchange-mode [aggressive / main]
/*&#x914D;&#x7F6E;IKE&#x7B2C;&#x4E00;&#x9636;&#x6BB5;&#x7684;&#x534F;&#x5546;&#x6A21;&#x5F0F;*/
[Router-profile-[name]]keychain [keychain-name]
/*&#x914D;&#x7F6E;IKE&#x8C03;&#x7528;&#x524D;&#x9762;&#x914D;&#x7F6E;&#x7684;keychain&#x9884;&#x5171;&#x4EAB;&#x5BC6;&#x94A5;*/
[Router-profile-[name]]proposal [proposal-number]
/*&#x914D;&#x7F6E;IKE&#x8C03;&#x7528;&#x524D;&#x9762;&#x914D;&#x7F6E;&#x7684;proposal&#x63D0;&#x8BAE;&#xFF0C;&#x91CC;&#x9762;&#x5305;&#x542B;&#x4E86;&#x6211;&#x4EEC;&#x7684;&#x52A0;&#x5BC6;&#x65B9;&#x5F0F;&#x3001;&#x9A8C;&#x8BC1;&#x65B9;&#x6CD5;&#x3001;&#x9A8C;&#x8BC1;&#x7B97;&#x6CD5;*/
[Router-profile-[name]] local-identity [address [ip-address] / dn [dn-name] / fqdn [fqdn-name] / user-fqdn [user-fqdn]  ]
/*&#x914D;&#x7F6E;IKE&#x7684;&#x672C;&#x5730;&#x8EAB;&#x4EFD;&#x4FE1;&#x606F;&#xFF0C;&#x662F;&#x4F7F;&#x7528;&#x516C;&#x7F51;&#x5730;&#x5740;[address]&#x6216;&#x8005;&#x4F7F;&#x7528;&#x4E3B;&#x673A;&#x540D;[dn/fqdn/user-fqdn]&#x6765;&#x6807;&#x8BC6;&#x5BF9;&#x7AEF;&#x4E3B;&#x673A;*/
[Rouer-ike-profile-[name]]match remote 
certificate [policy-name]
identity [address [ip-address] mask [mask] 
range [start-address - end-address] 
vpn-instance [vpn-name] 
fqdn [fqdn-name] 
user-fqdn [user-fqdn] 
/*&#x914D;&#x7F6E;IKE&#x5339;&#x914D;&#x5BF9;&#x7AEF;&#x8EAB;&#x4EFD;&#x7684;&#x89C4;&#x5219;&#xFF0C;&#x662F;&#x5339;&#x914D;identiy &#x8FD8;&#x662F;&#x5339;&#x914D;certificate*&#x662F;&#x7528;fqdn&#x6765;&#x5339;&#x914D;&#x8FD8;&#x662F;&#x7528;user-fqdn&#x6765;&#x5339;&#x914D;/
[Router-ike-profile-[name]]priority [name]
/*&#x914D;&#x7F6E;IKE Profile&#x7684;&#x4F18;&#x5148;&#x7EA7;*/

[Конфигурация второго этапа]

Язык кода:javascript
копировать
/*&#x4E3B;&#x52A8;&#x6A21;&#x5F0F;&#x914D;&#x7F6E;&#x6D41;&#x7A0B;*/
/*&#x4E8C;&#x9636;&#x6BB5;&#x914D;&#x7F6E;*/
[Router]ipsec transform-ser [name]
/*&#x521B;&#x5EFA;&#x4E00;&#x4E2A;&#x5B89;&#x5168;&#x63D0;&#x8BAE;*/
[Router-ipsec-transform-set-[naem]] protocol [ah / ah-esp / esp] 
/*&#x914D;&#x7F6E;ipsec&#x7684;&#x5B89;&#x5168;&#x534F;&#x8BAE;*/
[Router-ipsec-transform-set-[name]] encapsulation-mode [transport / trunnel]
/*&#x8BBE;&#x7F6E;ipsec&#x7684;&#x5DE5;&#x4F5C;&#x6A21;&#x5F0F;&#xFF0C;&#x662F;&#x8F6C;&#x53D1;&#xFF08;transport&#xFF09;&#x6A21;&#x5F0F;&#x8FD8;&#x662F;&#x96A7;&#x9053;&#xFF08;tunnel&#xFF09;&#x6A21;&#x5F0F;*/
[Router-ipsec-transform-set-[name]] esp encryption-algorithm [3des-cbc / aes-cbc-128 / aes-cbc-192 / aes-cbc-256 / des-cbc / null]
/*&#x914D;&#x7F6E;&#x8F6C;&#x6362;&#x96C6;&#xFF0C;&#x91C7;&#x7528;esp&#x5B89;&#x5168;&#x534F;&#x8BAE;&#xFF0C;&#x8BBE;&#x7F6E;esp&#x534F;&#x8BAE;&#x91C7;&#x7528;&#x7684;&#x52A0;&#x5BC6;&#x7B97;&#x6CD5;&#x662F;&#x4EC0;&#x4E48;*/
[Router-ipsec-transform-set-[name]] esp authentication-algorithm [md5 / sha1]
/*&#x914D;&#x7F6E;ESP&#x534F;&#x8BAE;&#x91C7;&#x7528;&#x7684;&#x9A8C;&#x8BC1;&#x7B97;&#x6CD5;&#x662F;md5&#x8FD8;&#x662F;sha1*/
[Router-ipsec-transform-set-[name]] ah authentication-algorithm [md5 / sha1]
/*&#x91C7;&#x7528;ah&#x5B89;&#x5168;&#x534F;&#x8BAE;&#xFF0C;&#x914D;&#x7F6E;ah&#x5B89;&#x5168;&#x534F;&#x8BAE;&#x91C7;&#x7528;&#x7684;&#x9A8C;&#x8BC1;&#x7B97;&#x6CD5;&#x662F;md5&#x8FD8;&#x662F; sha1*/
[Router] ipsec policy [seq-name] [number] manual
/*&#x521B;&#x5EFA;&#x4E00;&#x4E2A;&#x5B89;&#x5168;&#x7B56;&#x7565;&#xFF0C;&#x8C03;&#x7528;&#x6211;&#x4EEC;&#x524D;&#x9762;&#x7684;&#x611F;&#x5174;&#x8DA3;&#x6D41;&#x3001;&#x9A8C;&#x8BC1;&#x65B9;&#x6CD5;&#x3001;&#x7B97;&#x6CD5;&#x7B49;*/
[Router-ipsec-policy-manual-[name]] security acl [acl-number]
/*&#x8C03;&#x7528;&#x524D;&#x9762;&#x8BBE;&#x7F6E;&#x7684;ACL&#x7B56;&#x7565;*/
[Router-ipsec-policy-manual-[name]] transform-set [name]
/*&#x8BBE;&#x7F6E;&#x5B89;&#x5168;&#x7B56;&#x7565;&#x6240;&#x5F15;&#x7528;&#x7684;&#x5B89;&#x5168;&#x63D0;&#x8BAE;*/
[Router-ipsec-policy-manual-[name] ]ike-profile [name]
/*&#x8C03;&#x7528;&#x5148;&#x524D;&#x914D;&#x7F6E;&#x7684;ike&#x6863;&#x6848;*/
[Router-ipsec-policy-manual-[name]] remote-address [ip-address / ipv6-address]
/*&#x914D;&#x7F6E;IPsec&#x96A7;&#x9053;&#x5BF9;&#x7AEF;&#x7684;&#x5730;&#x5740;*/
[Router-interface] ipsec apply policy [name]
/*&#x6700;&#x540E;&#x5728;&#x63A5;&#x53E3;&#x4E0A;&#x4E0B;&#x53D1;ipsec&#x7B56;&#x7565;*/
boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose