IPsec
IPSec-ийн тухай товч танилцуулга
IPSec нь маш өргөн тархсан туннел холболтын протокол юм.
Internet Engineering Task Force (IETF) 1995 оноос 3 – р түвшний нууцлалын стандарт болгож хөгжүүлсэн. IPSec нь олон төрлийн шифрлэлийн механизм, хэрэглэгчийн хандалтын хяналтын протокол болон хамгаалалтын шийдэлтэй. IPv4 нь IPsec дэмжлэгийг санал болгодог гэхдээ энэ нь зайлшгүй биш. IPv6 хэрэгжилтэнд нь IPSec дэмжилт нь сонголт биш харин шаардлага. IPsec-ийн бүрэлдэхүүнд нь мэдээлэл аюулгүй байдлын харилцаа холбоо болон түлхүүр солилцоог хангахдаа криптографын протоколын багцыг ашиглана.
Түүх
[засварлах | кодоор засварлах]1993 оны 12 сард, Програм хангамжын IP encryption протоколыг Columbia University and AT&T Bell Labs by John Ioannidis болон бусад хүмүүс судалгаа шинжилгээ хийсэн. Итгэмжлэгдсэн мэдээллийн систем дэх whitehouse.gov захиаг (1993 оны зургадугаар сарын 1-нээс 1995 оны нэгдүгээр сарын 20) зохион Клинтоны захиргааны санхүүжилтээр дээр тулгуурлан, Вэй Xu, IP аюулгүй байдлын тухай 1994 оны судалгаа долдугаар сард эхэлэн, IP протоколыг сайжруулж, BSDI тавцан дээр IPSec бүтээгдэхүүн боловсруулсан ба түргэн Sun OS, HP UX, бусад UNIX системүүд дээр өргөтгөсөн. Энэ бүхэн амжилтын болсны дараа, Wie-д DES болон 3DES-ийг тооцох нь удаан гүйцэтгэлийн өөр сорилт тулгарч байсан. Угсралтын програм хангамжийн шифрлэлт нь Intel 80386 архитектур дээр T1 хурд нь дэмжих боломжгүй байсан. Германаас Crypto карт экспортлон ба Вэй нь автомат төхөөрөмжийн драйвер боловсруулсан. Өнөөдөр үүнийг plug-and-play гэж нэрлэдэг. Тоног төхөөрөмжийн Crypto нь тусгасан юм. Нэвтрүүлэх нь T1-ээс илүү их хурдтай болсоны дараа, Вэй Xu эцэст нь арилжааны бүтээгдэхүүний практик дээр Gauntlet галт ханын нэг хэсэг болгон гаргасан юм. 1994 оны арванхоёрдугаар сард Энэ нь зүүн болон АНУ-ын баруун эрэг орчмын улс орнуудын хооронд ямар нэг алсын сайтын аюулгүй байдлыг хангахаар үйлдвэрлэлд анх удаа байршуулж байсан. Өөр нэг IP (ESP) нь DARPA-ийн ивээн тэтгэсэн судалгааны төслийн хүрээнд тэнгисийн цэргийн судалгааны лабораторид судалж байсан ба нээлттэй IETF-ийн Sipp ажлын хэсэг гаргасан. Sipp нь аюулгүй байдлын сунгах ингэснээр 1993 оны арванхоёрдугаар сард боловсруулсан. Энэ нь ESP Протоколыг ISO Сүлжээний-Layer Security Протокол (NLSP) олсон байна гэхээсээ илүү анх АНУ-ын хэлтсийн Батлан хамгаалах SP3D протоколоос олсон байна. SP3D протоколыг NIST-ээс тодорхойлон нийтэлсэн Харин АНУ-ын Батлан хамгаалах газрын Secure Data Network System-ийн төслөөр боловсруулсан байна. Аюулгүй байдлын Танин Толгой (AH)-оог өмнөх IETF-ийн стандартуудын Энгийн сүлжээний менежмент Протокол (SNMP) хувилбар 2 танилтанд зориулсан ажиллахаар хэсэгчлэн гаргаж авсан байна. 1995 онд IETF нь IPsec ажлын хэсэг Secure Data Network System (SDN) төслийн NSA гэрээний дагуу боловсруулж байсан протокол нь нээлттэй чөлөөтэй байсан ба шалгах хувилбарыг бий болгож эхэлсэн. SDNS төсөл нь аюулгүй байдлын протокол Давхарга 3 (SP3) тодорхойлж байсанч NIST нийтэлсэн мөн ISO Сүлжээний Layer Security Протокол (NLSP) үндэс суурь байсан юм. SP3 гол удирдлагын түлхүүр удирдах протоколыг (KMP) IPsec хороондын үндсэн суурийг хангаж өгсөн. IPsec нь албан ёсоор янз бүрийн бүрэлдэхүүн болон өргөтгөлүүдтэйгээр Интернэт Инженерийн комисс (IETF) нь стандартчилсан байдаг.
Аюулгүй байдлын архитектур
[засварлах | кодоор засварлах]IPsec цуглуулга нээлттэй стандарт юм. IPsec янз бүрийн чиг үүргийг дараах протоколуудыг ашигладаг
- Authentication Header (AH) - танилт болон өгөгдлийн бүрэн бүтэн байдал заана.
- Encapsulating Security Payload (ESP)- танилт , мэдээлэл бүрэн бүтэн байдал, болон нууцлалыг хангадаг.
- IKE (internet key exchange) гэсэн протоколуудыг өөртөө агуулсан байдаг.
IPv6 сүлжээнд AH толгой болон ESP толгойг өргөтгөл толгой гэж тодорхойлсон. Нэмэлтээр IPsec нь протокол хэлэлцээ хийхдээ гурав дахь протоколыг ашигладаг. Үүнийг Интернэт түлхүүр солилцох (IKE) гэж нэрлэдэг. Энэ протокол хэрэгсэл нь төгсгөлийн цэгүүдийн хооронд аюулгүй байдлын үзүүлэлтийн хэлэлцээр болон тодорхойлох анхан шатны ажиллагаагаар хангадаг. Үүнээс гадна энэ нь ямар ч үед аюулгүй байдлын харилцааг ханган мэдээллийг хянаж байдаг.
Authentication Header (AH)
[засварлах | кодоор засварлах]Authentication Толгой (AH) IPsec протокол цуглуулгын гишүүн юм. AH IP пакетийн бүрэн бүтэн байдал болон өгөгдлийн гаралтыг таньж баталгаажуулдаг. Цаашилбал, энэ нь нэмэлт window техникийг ашиглан replay халдлагаас хамгаална.
- IPv4 нь AH IP ачааг болон mutable салбараас бусад IP Datagram бүх толгойн талбаруудыг хамгаална. IPv4 толгой талбар DSCP / TOS, ECN, Flags, хэсэг Офсет, TTL ба header checksum байна.
- IPv6-д AH IPv6 суурь толгой ихэнхийг хамгаалдаг . IPv6 толгой нь хамгаалах mutable талбаруудыг дараах үйл ажиллагаа орохгүй: DSCP, ECN, урсгал Шошго болон Hop limit.
AH IP протокол нь 51 гэсэн тоог ашиглан IP орой дээр шууд ажиллана.
AH header format
- Next header-payload дараагийн ттолгой ямар байсныг заана.
- Payload length- өгөгдлийн уртыг заана.
- Reversed- Одоогоор ашиглагддаггүй талбар.
- Security parameters index- Энэ нь тухайн багцын тусгаарлалтаас гаргах нууцлалын мэдээллийг агуулна.
- Sequence number-Багцын дарааллыг заана.
- Authentication data-Энэ нь өгөгдлийг нууцалсан код байна.
Encapsulating Security Payload (ESP)
[засварлах | кодоор засварлах]Аюулгүй байдлын Ачаа капсул (ESP) IPsec протокол цуглуулгын гишүүн юм. IPsec энэ нь гаралтыг баталгаажуулалт, бүрэн бүтэн байдал, пакетуудын нууцлал хамгаалалт болж өгдөг. ESP мөн зөвхөн шифрлэлт болон нэвтрэлт танилт тохиргоонуудыг дэмждэг. Authentication Header (AH) ялгаатай нь, ESP тээврийн горимд бүх IP пакетийн хувьд бүрэн бүтэн байдалыг таньдаггүй байна. ESP IP протокол нь 50 тоог ашиглан IP орой дээр шууд ажиллана.
ESP header format
- Security Prameters Index (32bits) -Аюулгүй байдлын холбоог тодорхойлно
- Sequence Number (32 bits): дарааллын утгыг тоолно.
- Payload Data А transport түвшний сегмент (тээврийн горим), эсвэл IP пакетийн (туннель горим)-ийн шифрлэлтийн хамгаална.
- Authentication Data (variable -ESP пакетын таних өгөгдлийн талбар дээр тооцоологдох бүрэн бүтэн байдлыг шалгах утгыг агуулдаг нь хувьсах урттай талбар
- AH (authentication header) – энэ нь ESP шиг өгөгдлийг нууцлалтай болон хамгаалалттай дамжуулахад зориулсан протокол бөгөөд энэ нь RFC2402 тодорхойлогдсон.
Security association
[засварлах | кодоор засварлах]IP аюулгүй байдлын архитектур IP руу аюулгүй байдлын үйл ажиллагааг бий болгох үндэс нь аюулгүй байдлын холбооны үзэл баримтлалыг ашигладаг. Аюулгүй байдлын холбоо нь ердөө л шифрлэх, нэг чиглэлд тодорхой урсгалыг таниулан ашиглаж байгаа алгоритмын болон параметрийн (жишээ нь түлхүүр зэрэг) сагс юм. Тиймээс хэвийн хоёр чиглэлтэй урсгалыг онд урсгал аюулгүй байдлын холбоод хос баталгаажсан байдаг. Аюулгүй байдлын холбоод Internet Security холбоо, түлхүүр удирдах протоколыг (ISAKMP) ашигладаг. ISAKMP нууц үгээ хуваалцахдаа гараар тохиргоог хийдэг. Internet Key Exchange (IKE and IKEv2), Kerberized Internet Negotiation of Keys (KINK), IPSECKEY DNS зэргийг ашигладаг. Нууцлалыг шийдэх зорилгоор ямар хамгаалах ашиглах нь Ipsec нь аюулгүй байдлын үзүүлэлт индекс (SPI) ашигладаг. Аюулгүй байдлын холбоо мэдээллийн санд индекс (SADB)-д пакет толгой дахь очих хаягийн хамтад нь пакетийн хувьд аюулгүй байдлын холбоо тогтоодог. Үүнтэй төстэй журам нь орж ирж байгаа пакетийн хувьд хийдэг ба хаана IPsec аюулгүй байдлын нэгдлийн сангаас шифрлэлтийг буцаах үйлдэл нь, баталгаажуулах түлхүүр цуглуулдаг. Multicast нь, аюулгүй байдлын холбоо бүлэгт заасан байна, бүлгийн бүх эрх хүлээн авагч даяар хувилагддаг.
Modes of operation
[засварлах | кодоор засварлах]IPsec протокол нь ажиллахдаа 2 төрлийн горимд ажиллаж болдог.IPsec нь сүлжээний хонгилоор горимд түүнчлэн хост-тулд-хост тээврийн горимд хэрэгжүүлж болно.
Transport mode
[засварлах | кодоор засварлах]- Эх пакетын зөвхөн ачаа буюу Data хэсгийг нууцалж дамжуулдаг
- Ихэвчлэн host-to-host архитектурт ашиглана
- TCP/UDP header+ payload
Tunnel mode
[засварлах | кодоор засварлах]- Пакет дээр шинэ хаягийн толгой мэдээллийг нэмнэ
- эх пакетыг бүхэлд нь нууцалж дамжуулна
- Ихэвчлэн gateway-to-gateway архитектурт ашиглана
- IP header + TCP/UDP header+ payload
Криптограф алгоритмууд
[засварлах | кодоор засварлах]IPsec нь ашиглахаар тодорхойлсон криптограф алгоритмуудыг дурдвал:
Data Encryption Standard (DES)
[засварлах | кодоор засварлах]Өргөнөөр ашиглагддаг. 1976 онд батлан хамгаалах яамнаас гаргасан . Өгөгдлийн блок – 64 бит Түлхүүр – 56 бит . Feistel Network-д суурилсан. Шифрлэх тайлах алгоритм нь ижил Эх текст ба түлхүүрийг бага зэрэг өөрчлөхөд шифр текст асар их өөрчлөгддөг. Эх текстийн 1 битийг өөрчлөхөд шифр текстийн 34 бит дунджаар өөрчлөгддөг.Түлхүүрийн 1 битийг өөрчлөхөд шифр текстийн 35 бит дунджаар өөрчлөгддөг.
Triple DES ANSI standard x9.52 –г хэрэглэж байгаа бөгөөд өгөгдөл 3 удаагийн дамжлагаар нууцлагддаг байна. Энэ түлхүүр нь тодорхой хугацаанд дахин дахин өөрчлөгддөг болохоор түлхүүрийг тайлсан ч хэсэгхэн хугацаанд л хэрэглэх боломжтой.
Advanced Encryption Standart-AES
[засварлах | кодоор засварлах]Үүсэл: 1997 онд NIST нийтэд эхлэлийг нь тавьж Америкийн засгийн газрын хэрэглээнд баталгаат криптосистем болгон хөгжүүлсэн. Бүтэц: Блок-128бит түлхүүр -128, 192, 256 бит Криптоанализ: боломжит довтолгоонууд нь тооцооллын хувьд биелээгүй. AES-128 хувьд математик графын онол хэрэглэн 2126 нарийвчлалтай тооцооллоор түлхүүрийг олох боломжтой.
Хеш функц(нэг чигт функц)
[засварлах | кодоор засварлах]Шифрлэсэн мэдээнээс анхны мэдээллийг сэргээж авах боломжгүй байхаар математикийн тэгшитгэл ашиглан шифрлэгддэг.Янз бүрийн урттай мэдээний оролтууд нь ижил бэхлэгдсэн урттай шифрлэсэн гаралтуудыг гаргадаг Бэхлэгдсэн урттай Хешийн утга нь анхны мэдээний урт болон агуулгыг эргүүлэн олж авах боломжгүй байхаар анхны мэдээн дээр суурилагдан тооцоологдсон байдаг. Баталгаатай байдал: Нэг чигтэй байдал буюу Хеш утгаас хуулбар анхны мэдээг гаргаж авах болон байгуулахад хүнд байдаг.
Message Digest algorithm-MD
[засварлах | кодоор засварлах]Дурын урттай мэдээг 128 бит урттай хеш утга гаргадаг.MD-2: смарт карт гэх мэт хэмжээ хязгаарлагдсан системд загварчлагдсан, 8-битийн машинд зориулсан хамгийн удаан ажиллагаатай . MD-4: Rivest MD2-той ижилээр хөгжүүлсэн, програм хангамжид үйлдлийг хурдасгахад загварчилсан. 32-бит машинд зориулагдсан хамгийн хурдан ажиллагаатай. Гэвч энэ нь эвдэгдсэн хэш функц. MD-5: Rivest хөгжүүлсэн, жинхэнэ мэдээллийг үйлдвэрлэхээр илүү арга заль хэрэглэсэн учраас MD4-ээс 33 хувь удаан. 1996 онд Германы криптографч Hans Dobbertin түүний хэд хэдэн сул талуудыг том тоон дээр үзүүлсэн. Өгөгдлийн бүрэн бүтэн байдлыг хангадаг.
IPSec ажиллагааны зарчим
[засварлах | кодоор засварлах]IKE (Internet Key exchange) IPsec протоколд шаардлагатай түлхүүрүүдыг үүсгэхэд, солилцоход хэрэглэгдэнэ. IKE нь peer-үүдийн хооронд IKE policy-ийг солилцох болон түүнийг ашиглах боломжийг peer-үүдэд олгодог
IPsec нь өгөгдлийн нууцлалыг хангадаг. Хоёр болон түүнээс дээш төхөөрөмжүүд холбогдохдоо дараах дамжлагаар нэгний мэднэ.
ISAKMP (Internet Security холбоо, менежментийн гол протокол) нь интернетийн орчинд аюулгүй байдлын нэгдлүүдийг (SA) болон криптограф түлхүүрүүдийг бий болгохоор ( RFC 2408 ) тогтоосон протокол юм. IKE Phase 1 IKE-р үе шат 1 нь хоёр горимоор нэгээр ажилладаг, үндсэн горим, эсвэл хурдан горим. энэ горимууд нь өөр өөр үйл ажиллагаа явуулдаг.
Main Mode
[засварлах | кодоор засварлах]IKE үе шат 1-ийн үндсэн горимын үйл ажиллагаа нь 6 багцыг хоёр тал солилцож ажиллана.
1.Эхний пакет нь IPsec туннелийн алсын цэгрүү үүсгэгчээс илгээсх бөгөөд энэ пакет нь ISAKMP бодлогыг агуулсан байна. 2.Хоёр дахь пакет нь алсын цэгээс үүсгэгч рүү илгээсэн байна. Энэ пакетад үүсгэгчээс илгээсэн ISAKMP бодлоготой яг ижил мэдээлэл байна 3. Гурав дахь пакет үүсгэгчээс алсын цэгрүү илгээсэн байна. Энэ пакет нь key exchange ачаа болон Nonce ачааг агуулсан байна.Тухайн пакетийн зорилго нь DH нууц түлхүүрийн мэдээллийг бий болгох юм. 4. Дөрөв дэх пакет алсын цэгээс үүсгэгч рүү илгээсэн байна . 5. Тав дахь пакет буцаж таних болон хэш payloads нь үүсгэгчээс алсын цэгрүү илгээсэн байдаг. identity payload нь төхөөрөмжийн IP болон хэш payload түлхүүрийн хослол байна. 6. Зургаа дахь пакет алсын цэгээс үүсгэгч рүү илгээнэ. Тухайн хэш payloads байгаа солилцоог шалгана.
Quick mode
[засварлах | кодоор засварлах]IKE 2-р шат 1-р шатны хойш гарсан, бас хурдан горим гэж нэрлэдэг бөгөөд энэ үйл явц нь зөвхөн 3 пакетуудыг дамжуулдаг. 1. Алсын төхөөрөмж уруу санаачлагчид нь энэ анхны пакет дотор агуулагдаж байгаа, 1-ээр үе шатны тохиролцсон hashes / түлхүүрүүд байдаг. IPsec-ийг IE Параметр: Битүү (ESP болон AH), HMAC, DH-бүлэг, горим (туннель, эсвэл тээврийн) 2. Хоёр дахь пакет IPsec параметрүүдийг тохируулан алсын цэгийн хариу байдаг. 3. Сүүлчийн пакет өөр төхөөрөмж байгаа эсэхийг шалгана.
Тохиргооны хэсэг
[засварлах | кодоор засварлах]IPv6 дээр IKE Policy болон a Preshared Key үүсгэх
[засварлах | кодоор засварлах]Алхам 1 | Router(config)# crypto isakmp policy 10 | IKE бодлогыг тодорхойлдог
ба ISAKMP бодлого тохируулгын горимд шилждэг. |
Алхам 2 | Router(config-isakmp-policy)# authentication pre-share | IKE бодлогын хүрээнд танилтын аргыг заана. |
Алхам 3 | Router(config-isakmp-policy)# hash md5 | IKE бодлогын хүрээнд хэш алгоритм тодорхойлно |
Алхам 4 | Router(config-isakmp-policy)# group 2 | IKE бодлогын хүрээнд Diffie-Hellman бүлэг танигч заана. |
IPsec Transform Set болон IPsec Profile тохиргоо
[засварлах | кодоор засварлах]Алхам 1 | Router(config)# crypto ipsec transform-set myset0 ah-sha-hmac esp-3des | Багцыг хувиргах тодорхойлдог. |
Алхам 2 | Router(config)# crypto ipsec profile profile0 | Рөүтэрийн хооронд IPsec-ийг шифрлэхэд ашиглаж байгаа IPsec-ийн үзүүлэлтүүдийг тодорхойлно. |
Алхам 3 | Router (config-crypto-transform)# set-transform-set myset0 | Багц хувиргах тодорхойлохдоо crypto map оруулгыг ашиглаж болно. |
IPv6 дээр ISAKMP Profile тодорхойлох
[засварлах | кодоор засварлах]Алхам 1 | Router(config)# crypto isakmp profile profile1 | Шинээр profile үүсгэж байна. |
Алхам 2 | Router(config-isakmp-profile)# self-identity address ipv6 | Локал IKE алсын нөгөө талдаа өөрийгөө тодорхойлох зорилгоор хэрэглэхийг тодорхойлсон. |
Алхам 3 | Router(config-isakmp-profile)# match identity address ipv6 3FFE:2002::A8BB:CCFF:FE01:2C02/128 | ISAKMP профайл нь алсын нөгөө талдаа ижилхэн байгааг тааруулна. |
IPv6 IPsec VTI тохируулах
[засварлах | кодоор засварлах]Алхам 1 | Router(config)# ipv6 unicast-routing | IPv6 Unicast замчлалыг идэвхжүүлнэ. |
Алхам 2 | Router(config)# interface tunnel 0 | туннель интерфэйс болон тоог тодорхойлох ба интерфэйс тохиргоо горимруу ордог. |
Алхам 3 | Router(config-if)# ipv6 address 3FFE:C000:0:7::/64 eui-64 | туннель интерфэйсд IPv6 хаягийг олгодог |
Алхам 4 | Router(config-if)# ipv6 enable | Энэ туннель интерфэйс дээр IPv6-г идэвхжүүлнэ. |
Алхам 5 | Router(config-if)# tunnel source ethernet0 | туннель интерфэйсийн хувьд эх үүсвэр нь хаяг тогтоодог. |
Алхам 6 | Router(config-if)# tunnel destination 2001:DB8:1111:2222::1 | туннель интерфэйсийн хувьд очих хаягыг заана. |
Алхам 7 | Router(config-if)# tunnel mode ipsec ipv6 | Туннель интерфэйс хайрцаглалт горимд тогтоодог. |
Алхам 8 | Router(config-if)# tunnel protection ipsec profile profile1 | IPsec нь хувийн туннель интерфэйсийг нэгтгэх. IPv6 хуваалцсан түлхүүр үг дэмждэггүй. |
IPsec Tunnel Mode тохируулан шалгах
[засварлах | кодоор засварлах]Алхам 1 | Router# show adjacency detail | Cisco express forwarding adjacency хүснэгтэд эсвэл layer-3 switching hardware-ийн adjacency хүснэгтийн тухай мэдээллийг харуулна. |
Алхам 2 | Router# show crypto engine connection active | crypto engines зориулсан тохиргооны мэдээлэл нэгтгэн харуулна. |
Алхам 3 | Router# show crypto ipsec sa ipv6 | IPv6-г одоогийн SA ашиглаж байгаа тохиргоог харуулна. |
Алхам 4 | Router# show crypto isakmp policy | IKE бодлогын бүх параметрүүдийг харуулна. |
Алхам 5 | Router# show crypto isakmp profile | Рөүтэр дээр заасан бүх ISAKMP профайл жагсаадаг. |
Алхам 6 | Router# show ipv6 access-list | Одоо байгаа бүх IPv6 хандалтын жагсаалтууд агуулгыг харуулна. |
IPv6 дээр тохируулсан IPsec-ийн тохиргоог шалгах
[засварлах | кодоор засварлах]Алхам 1 | Router# debug crypto ipsec | IPsec нь сүлжээний үйл явдлыг харуулна. |
Алхам 2 | Router# debug crypto engine packet | IPv6 пакетуудын агуулгыг харуулна |