IPsec ESP: эмнени ташыйт жана анын агып жатканын кантип далилдөө керек
ESP туннелдик режимде ички IP пакетин ороп, өз ассоциациясын SPI аркылуу аныктайт. Абалды окуңуз, андан кийин бир агымдын эсептегичтерди кыймылдаткандыгын байкаңыз.
ESP IPsec VPN ичинде трафикти ташыйт, жана анын runbook бир эрежеден башталат: саясатты өзгөртүүдөн мурун коопсуздук ассоциациясын окуңуз. ESPнин түшүндүрүлбөгөн жүрүм-турумунун көбү дал келбеген селекторго, окуунун ордуна божомолдонгон режимге же бир агым жөнөтүлүп жатканда эч ким текшербеген эсептегичке барып такалат. Төмөнкү үч кадам эмнени эмне ташып жатканын аныктайт, бир агым аны колдонорун далилдейт жана эске тутууга көз каранды эмес кайтарууну калтырат. Ар бир кадам жазып коюуга татыктуу бир байкоо берет.
Талааларды окуудан мурун билиңиз
ESP корголгон маалыматтардын алдына аталышын, артына куйругун коёт. Аталыш кабыл алуучу кайсы ассоциацияны колдонушу керектигин аныктаган коопсуздук параметрлеринин индексин, кайталанууну аныктоо үчүн ырааттуулук номерин, ал эми куйрукта шифр үчүн пайдалуу жүктү тегиз кармаган толуктоону ташыйт. Куйруктагы кийинки аталыш талаасы корголгон мазмун эмне экенин айтат, ошентип кабыл алуучу эмнени дешифрлеп алганын билет.
Режим ошол коргоонун ичинде эмне турганын өзгөртөт. Туннелдик режимде корголгон материал толук ички IP пакет, ал эми жаңы тышкы аталыш аны эки четки чекиттин ортосунда ташыйт. Транспорттук режимде коргоо бар пакеттин үстүңкү катмарынын жүгүн ороп, ачуу үчүн экинчи IP аталышы жок. Кайсы режим колдонулуп жатканы конфигурациянын фактысы, чечмелөө маселеси эмес. Аны диаграммадан божомолдобой, абал жазуусунан окуңуз.
Эки режимдин экөө тең пакетти жеткирүүгө тийиш болгон тышкы даректөөнү жашырбайт. Бул дизайндын касиети, кемчилик эмес, ошондуктан ортодогу байкоочу жүк көмүскө болсо да кайсы эки дарек сүйлөшүп жатканын дагы эле көрө алат.
Биринчи кадам: абалды, андан кийин саясатты окуңуз
Абал жазуулары ачкычтарды жана эсептегичтерди кармайт; саясат жазуулары аларды ким колдонсо болорун чечкен селекторлорду кармайт. Linuxте экөө тең пакеттерди кармабастан көрүнөт, жана ушул тартипте окуу эки суроону өзүнчө кармайт.
ip xfrm state
ip xfrm policy
Абал чыгарылышында ассоциациянын булагын жана багыттоосун, режимин жана капсулоо UDP портторун көрсөтөрүн текшериңиз. Бул порттор NAT аркылуу өтүү колдонулуп жатканын билдирет, бул ортодогу брандмауэр эмнеге уруксат бериши керектигин өзгөртөт, бирок четки чекиттерде кайсы селекторлор же ачкычтар колдонуларын эмес.
Андан кийин саясаттагы селекторлорду окуңуз. Сынап жаткан трафиктен кууш префиксти атаган селектор иштеп жаткан туннелдин агымды этибарга албай жаткандай көрүнүшүнүн эң кеңири тараган себеби, ал эми туура эмес протокол үчүн селектор ошол эле үнсүздүктү берет.
| Field | Where it appears | What it decides |
|---|---|---|
| Security parameter index | ESP header, and the receiving state entry | Which association and keys the receiver applies |
| Sequence number | ESP header | Replay detection for that association |
| Next header | ESP trailer | What the decapsulated payload contains |
| Inner IP header | Inside tunnel-mode payload only | The original source and destination the endpoints act on |
| Traffic selectors | Policy, not the packet | Which local traffic is allowed to use the association |
Өндүрүүчүлөрдүн куралдары ошол эле маалыматты ыңгайлуураак формада басып чыгарат. ipsec statusall strongSwanда ал бала ассоциацияларды, алардын селекторлорун жана байт эсептегичтерин тизмелейт, бул кайсы баланы кароону билсеңиз, чийки xfrm чыгарылышын окуудан көп учурда тезирээк.
Экинчи кадам: бир агым эсептегичтерди кыймылдатканын далилдеңиз
Эсептегичтер аларды эмне кыймылдатышы керектигин билгенде гана маанилүү, ошондуктан селектор сөзсүз камтыган булак менен багыттоону тандап, бир зыянсыз сурам жөнөтүңүз. Андан кийин ошол эле жазууну кайра окуп, салыштырыңыз.
ip -s xfrm state
tcpdump -ni any esp
Эки окуу ар башка окуяны айтат. Чыгуучу тарапта өсүп, кирүүчү тарапта эч качан өспөгөн пакеттер ачкыч маселесине эмес, кайра багыттоо же кайтуу жолу маселесине көрсөтөт, анткени пакет капсулаланып кеткен. Эч бир эсептегич кыймылдабаса, трафик саясатка эч качан дал келген эмес, ал эми селектор – кароо керек болгон жер.
Ошол эле кадамдагы кармоо зымдагы капсулоону ырастайт, анын ичинде тышкы пакеттер ESP же UDPге капсулаланган ESP экенин да. Ал ошондой эле агымды чындап ташыган даректерди көрсөтөт, ал эми алар кээде сиз окуп жаткан конфигурациядагылардан өзгөчө болот.
Үчүнчү кадам: бир нерсени өзгөртүп, кайтарууну сактаңыз
Бир нерсени оңдоодон мурун ассоциациянын булагын, багыттоосун, режимин, селекторлорун жана эсептегичтерин жазып алыңыз. Эгер өзгөртүү абалды начарлатса, дал ошол жазуу божомолдон иштеген конфигурацияны кайра куруунун ордуна мурунку абалды калыбына келтирүүгө мүмкүндүк берет. Бул жазуу жазууга бир мүнөт алып, кийин бир саатты үнөмдөйт. Ал ошондой эле өзгөртүүнү жасаган адамдан кийин калган жалгыз артефакт.
Бир селекторду же бир параметрди өзгөртүп, аны кайра жүктөп, экинчи кадамды ошол эле агымга кайталаңыз. Ассоциацияны жок кылуу аны колдонгон ар бир агымды кыйратат, ошондуктан максаттуу оңдоо жана баланы кайра жүктөө эмне болорун көрүү үчүн абалды тазалоодон дээрлик ар дайым жакшы.
Селекторду оңдоонун кайтарылышы – мурунку саясатты калыбына келтирип, аны кайра жүктөө, эгер селектор жергиликтүү эмес, сүйлөшүлүп аныкталса, өнөктөшкө дал келүүчү өзгөртүү керек болушу мүмкүн деген эскертүү менен. Бул көз карандылыкты ал жаңы кезинде жазып коюңуз, анткени жарым калыбына келтирилген жуп эки акыркы абалдын кайсынысынан да ойлонууга кыйын.
Акырында, камроону ак ниет менен кармаңыз. Агып жаткан ESP ассоциациясы эки шлюз сегментти коргоп, жеткирип жатканын далилдейт жана анын үстүндөгү колдонмо өз колдонуучуларын аутентификациялайбы, сактаганын шифрлайбы дегенге эч нерсе айтпайт. Булар өзүнчө далилдери бар өзүнчө көзөмөлдөр, ал эми runbook кийинки адам аны жазуулардан кайталай алганда гана бүтөт.