ΠΡΠΎΠ΅ΠΊΡ OpenBSD ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° OpenIKED 7.3, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° IKEv2. ΠΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° IKEv2 Π±ΡΡ Π° Π½Π΅Π΄Π΅Π»ΠΈΠΌΠ° ΡΠ°ΡΡ ΠΎΡ IPsec ΡΡΠ΅ΠΊa Π½Π° OpenBSD, Π½ΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π±ΡΡ Π° ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈ Π² ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π΅Π½ ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΡΠ΅Π³Π° ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² Π΄ΡΡΠ³ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° OpenIKED Π΅ ΡΠ΅ΡΡΠ²Π°Π½Π° Π²ΡΠ² FreeBSD, NetBSD, macOS ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Arch, Debian, Fedora ΠΈ Ubuntu. ΠΠΎΠ΄ΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·Π° ISC.
OpenIKED ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠ°Π·Π²ΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΡΠ°ΡΡΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° IPsec. IPsec ΡΡΠ΅ΠΊΡΡ Π΅ ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½ ΠΎΡ Π΄Π²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ: ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ (IKE) ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ ΡΡΠ°ΡΠΈΠΊ (ESP). OpenIKED ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅, ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, Π΄ΠΎΠΊΠ°ΡΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΡΡ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΠΊ ESP ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² OpenIKED ΠΌΠΎΠ³Π°Ρ Π΄Π° Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΠΊΠ»ΡΡΠΎΠ²Π΅ (pre-shared), EAP MSCHAPv2 ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ X.509 ΠΈ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΊΠ»ΡΡΠΎΠ²Π΅ RSA ΠΈ ECDSA.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΡΠ½Π΅Π»ΠΈ sec, ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ Π² OpenBSD Π·Π° ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° IPsec ΡΡΠ°ΡΠΈΠΊ ΠΏΡΠ΅Π· ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ sec, Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° SPD (ΠΠ°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° IPsec) ΠΏΡΠΈ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π·Π°ΡΠΈΡΠ΅Π½ΠΈ VPN Π² ΡΠ΅ΠΆΠΈΠΌ ΡΠΎΡΠΊΠ°-ΡΠΎΡΠΊΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΡΡΠ²ΡΡΠΈ ΠΈΠΌΠ΅Π½Π° Ρ Π΅Π΄ΠΈΠ½ ΠΌΡΠ΅ΠΆΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π² Linux.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libsystemd Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° DNS ΡΡΠ΅Π· DBUS Π² Linux, Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° resolvectl.
- ΠΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Linux Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libapparmor, Π° Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Ρ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈΡΠ΅ Π½Π° AppArmor ΡΠ΅Π³Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΏΡΠ΅Π²Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° /proc, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΡΠ²Π°ΡΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠΈ ΠΏΡΠ΅Π΄ΠΈ ΠΎΡΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ°Π²Π°ΡΠ°.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΡΠ»Π½ΠΈ Π²Π΅ΡΠΈΠ³ΠΈ ΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ x509 Π² payload CERT.
- ΠΠ° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΡΡΠ΅ΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ ΡΠ»Π΅Π΄ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° fork().
- ΠΠ° OpenBSD 7.4 Π΅ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½ Π²ΡΡΡΠ΅ΡΠ½ΠΈΡΡ API ibuf.
- Π‘Π»ΠΎΠΉ Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Π΅ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ Ρ Π½ΠΎΠ²Π°ΡΠ° ΠΊΠΎΠ΄ΠΎΠ²Π° Π±Π°Π·Π° Π½Π° OpenBSD.
- ΠΠ° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΎΡΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΡΠ° Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° OpenSSL, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² ikectl.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
