Ẹgbẹ́ DH àpapọ̀, àwọn àṣírí tuntun: kí ni ìdí tí ìkọlù fi ń pọ́n
Àwọn àṣírí ìpàdé tuntun kò tún ẹgbẹ́ pápá òdòdó aláìlera ṣe. Lílo ẹgbẹ́ kan lẹ́ẹ̀kan sí í ń pín ìpele ìkọlù tó gbéwọ́n jù lórí gbogbo pàṣípàrọ̀ tó ń ṣe ìdúnàádúrà rẹ̀.
Àwọn ìpín ẹgbẹ́ jẹ́ ti gbogbo ènìyàn nípasẹ̀ àpẹẹrẹ, àti pé ìgbékalẹ̀ gbangba yẹn gan-an ni ó mú kí ó rọrùn láti fojú kéré wọn. Nínú Diffie-Hellman lórí pápá òdòdó, a ń pín mọ́dúlù àti olùpilẹ̀ṣẹ̀, ṣùgbọ́n àwọn ìlànà ìkọ̀kọ̀ àti àwọn kọ́kọ́rọ́ ìpàdé tó jáde láti inú wọn kò ní í ṣe pẹ̀lú. Ìpele tó gbéwọ́n jù ti ìkọlù ẹ̀rọ̀ àwọ̀n pápá nọ́mbà sinmi lórí ẹgbẹ́, kì í ṣe lórí pàṣípàrọ̀ kan, nítorí náà ẹgbẹ́ aláìlera kan tí a ń lò ní gbogbo ibi di ojúṣe àpapọ̀. Pípè àwọn ìpín ní ti gbangba tọ́, kò sì kan ọ̀rọ̀ náà, nítorí náà owó tí a ń lò lẹ́ẹ̀kan sí í ni owó ìkọlù ẹgbẹ́ yẹn gan-an.
Ìlàjì gbangba kì í ṣe ìlàjì aláìlera, ibẹ̀ sì ni ìdẹkùn wà
Àríyànjiyàn ìlàjì tí ó wọ́pọ̀ sọ pé a ti tẹ̀ àwọn ìpín jáde nínú ìlànà kan, nítorí náà olùkọlù ti mọ̀ wọ́n tẹ́lẹ̀, pípamọ́ wọn kò sì ní yí ohunkóhun padà. Àwọn ọ̀rọ̀ méjèèjì tọ́, kò sì sí ọ̀kan tó ń tẹ̀le èkejì. Ẹgbẹ́ àkọ́kọ́ tí a ń fi ránṣẹ́ jẹ́ ti gbangba, ẹgbẹ́ ìkọ̀kọ̀ tí o dá ní ọ̀sẹ̀ tó kọjá pẹ̀lú ń hàn sí ẹnikẹ́ni tó bá parí ìfọwọ́báwọ́. Ìkọ̀kọ̀ kò jẹ́ ìṣàkóso rí; agbára àti ìjẹ́rìí ni ìṣàkóso.
Ohun tó ń yí padà ni iye ibi tí wọ́n ń pín àìlera kan náà. Àjọ kan tó ń dá ẹgbẹ́ 2048 bíìtì tirẹ̀ ń san owó ìkọlù tirẹ̀, nígbà tí ìpín àkọ́kọ́ gbèdé tí àwọn mílíọ̀nù yàn ń pín owó kan lórí gbogbo wọn. Ní ti ọ̀rọ̀ yẹn, ẹgbẹ́ àìṣẹ̀ẹ́dẹ́gbẹ́ kì í dágbára jáde gẹ́gẹ́ bí ó ti dára jù. Ẹgbẹ́ àìṣẹ̀ẹ́dẹ́gbẹ́ tó kéré jù ni àṣírí àpapọ̀ tó kéré pẹ̀lú ojú tí ó dín kù.
Ìjẹ́rìí ṣe pàtàkì bí ìwọ̀n. Alábàṣiṣẹ́ tó ń fi mọ́dúlù pẹ̀lú àwọn ìpínrọ̀ kékeré ránṣẹ́, tàbí èyí tí kò ní ìrísí tí ìlànà ń retí, lè mú kí ìsọfúnni nípa ìlànà ìkọ̀kọ̀ jáde kódà nígbà tí gígùn bíìtì dà bí ó yẹ. Àwọn ilé-ìkàwé tó ń kọ̀ àwọn ìpín aláìtóótọ́ ní ẹnu ọ̀nà ń ṣe iṣẹ́ gidi, ìdí ni pé ṣíṣe àyẹ̀wò ìpín pẹ̀lú ọwọ́ jẹ́ ibi búburú láti fi dín ìsapá kù.
Kí ni ìṣirò àkọ́kọ́ ń fún olùkọlù ní ti gidi
Ẹ̀rọ̀ àwọ̀n pápá nọ́mbà ní ìpele tó sinmi lórí nọ́mbà àkọ́kọ́ nìkan, ìjáde rẹ̀ sì ṣeé lò lẹ́ẹ̀kan sí í lòdì sí gbogbo pàṣípàrọ̀ tó ń lo nọ́mbà àkọ́kọ́ yẹn. Ìyẹn ni gbogbo ìlànà tó wà lẹ́yìn àníyàn ìtàn: a ń san apá tó gbéwọ́n lẹ́ẹ̀kan, owó ààlà ìpàdé kọ̀ọ̀kan tó tẹ̀le sì ń dín kù. Àwọn ìlànà tuntun ṣì ń dáàbò bo pàṣípàrọ̀ kọ̀ọ̀kan lọ́wọ́ olùwòye tí kò ṣe ohunkóhun, ní àsìkò tí ẹgbẹ́ bá tóbi tó láti jẹ́ kí ìyọ̀nà jẹ́ aláìṣeéṣe. Àwọn ọ̀rọ̀ méjèèjì bá ara wọn mu, ọ̀pọ̀ àríyànjiyàn lórí kókó yìí sì ń wá láti inú yíyan ọ̀kan àti fífi èkejì sílẹ̀.
Ìwé Logjam ti ọdún 2015 fi ìrẹ̀wẹ̀sẹ̀ sí Diffie-Hellman 512 bíìtì ìpele ìkójáde hàn ó sì ṣe àfojúsùn iye owó tí ìkọlù àwọn ẹgbẹ́ ńlá tí a ń lò lọ́nà gbòòrò pẹ̀lú àwọn ohun èlò pàtàkì yóò ná. Àfihàn náà jẹ́ kedere, àwọn àfojúsùn jẹ́ àfojúsùn, kò sì sí ọ̀kan tí ó jẹ́ ẹ̀rí pé a ti yọ ìpàdé VPN kan pàtó kúrò.
Fi ìwé náà ṣe àṣojú fún ìlànà àti fún ìrẹ̀wẹ̀sẹ̀ tí a fi hàn, kì í ṣe gẹ́gẹ́ bí ìwọ̀n ìgbékalẹ̀ rẹ. Àwọn ìṣirò àtijọ́ nípa iye olùsìn tí wọ́n pín ẹgbẹ́ àkọ́kọ́ ń ṣàpèjúwe íńtánẹ́ẹ̀tì ọdún yẹn, kì í ṣe nẹ́tíwọ́kì tí o lè yẹ̀wò lónìí. Ohun tó já fáàbù tí ó wúlò ni ìbéèrè náà: ṣé àwọn ẹ̀rọ rẹ ṣì ń ṣe ìdúnàádúrà lórí ẹgbẹ́ tó kéré tàbí tí a jẹ́rìí rẹ̀ lọ́nà aláìlera?
Ìṣètò àkọ́kọ́ kì í ṣe aláìlera
RFC 7919 ń ṣàlàyé àwọn ẹgbẹ́ pápá òdòdó tí a ní orúkọ kí ẹ̀gbẹ́ méjèèjì lè gbà lórí ẹgbẹ́ nípasẹ̀ ìdánimọ̀ kí wọ́n sì lo ìlànà tó bá ara mu. Jíjẹ́ aláìṣeédéédéé jẹ́ àǹfààní, nítorí pé ó ń yọ àìdánilójú ìdúnàádúrà kúrò, ó sì ń jẹ́ kí ìmúṣẹ lè kọ̀ àwọn ìwọ̀n tí a kò ì tíì gbà. Ẹgbẹ́ onírúkọ kì í ṣe aláìlera àyàfi nígbà tí ìwọ̀n rẹ̀ bá wà nísàlẹ̀ ìlànà tí o sọ pé o ń tẹ̀le, kì í ṣe nítorí pé ó farahàn nínú ìwé kan. Ìmọ̀ràn kan náà kan àwọn ẹgbẹ́ ìtẹ̀gùn elliptical, tí wọ́n ní ìṣètò àti àwọn ọ̀nà ìkùnà tó yàtọ̀.
Pa àwọn ìṣètò mọ́ lọ́tọ̀ nígbà tí o bá ń ronú nípa wọn. Ìparí lórí Diffie-Hellman lórí pápá òdòdó kò sọ ohunkóhun nípa X25519, ìparí lórí ẹgbẹ́ MODP 1024 bíìtì kò sì sọ ohunkóhun nípa ẹgbẹ́ 3072 bíìtì. Ìlànà agbára jẹ́ fún ìlànà kọ̀ọ̀kan, fún ìwọ̀n kọ̀ọ̀kan àti fún ẹ̀dá ìlànà kọ̀ọ̀kan, ìdí ni pé gbólóhùn cryptography tó lágbára kì í ṣe ọ̀rọ̀ tí a lè yẹ̀wò.
Ìjẹ́rìí ìdánimọ̀ ni ìlàjì kejì, kò sì rọ́pò rẹ̀. Ẹgbẹ́ tó lágbára láìsí ìjẹ́rìí alábàṣiṣẹ́ ń fi olùkọlù sí àárín, kíkún kò sì lè gbà ìpàṣípàrọ̀ 768 bíìtì là. Wò wọ́n gẹ́gẹ́ bí ìlà méjì tó dúró lórí ara wọn, lẹ́yìn náà jẹ́rìí pé a ń ṣe ìdúnàádúrà lórí àwọn méjèèjì ní ti gidi.
Ka ẹgbẹ́ tí a ṣe ìdúnàádúrà lórí lórí ìsopọ̀ gidi
Ka ẹgbẹ́ tí a ṣe ìdúnàádúrà lórí láti inú ẹ̀rọ, kì í ṣe láti inú àpẹẹrẹ ìṣètò. Àwọn àpẹẹrẹ ń ṣàpèjúwe èrò, iye tó ń fà mọ́ra ni èyí tí ẹ̀gbẹ́ méjèèjì gbà nígbà ìfọwọ́báwọ́ tó gbẹ̀yìn. Ní ìparí IPsec, ìjáde ipò sábà máa ń tẹ àbá tí a yàn, pẹ̀lú ẹgbẹ́ MODP.
Gbà ìlà yẹn ṣáájú àti lẹ́yìn ìyípadà ìlànà, kí o sì pa méjèèjì mọ́ nínú àkọsílẹ̀ ìyípadà. Ìfiwé ni ẹ̀rí.
ipsec statusall | grep -Ei "proposal|ESP|IKE"
openssl dhparam -in /etc/vpn/dh3072.pem -check -nooutTí ipò bá ṣì ń fi ẹgbẹ́ àtijọ́ hàn lẹ́yìn ìyípadà, ìsopọ̀ kò ṣe ìdúnàádúrà lẹ́ẹ̀kan sí í, àti àtúnṣe ìṣètò kò jẹ́rìí ohunkóhun. Tún alábàṣiṣẹ́ bẹ̀rẹ̀ tàbí pa ìsopọ̀ ààbò rẹ́, lẹ́yìn náà ka ipò lẹ́ẹ̀kan sí í. Ìlànà tí a ń fi sílò lórí àwọn ìsopọ̀ tuntun nìkan yóò fi àwọn ọ̀nà abẹ́lẹ̀ tó pẹ́ sórí àwọn ìpín àtijọ́ ní àsìkò tí wọ́n bá wà lórí ẹsẹ̀.
Yẹ̀wò ẹgbẹ́ àti ìdánimọ̀ alábàṣiṣẹ́ lọ́tọ̀
Ya ohun tí ẹgbẹ́ ń dáàbò bo kúrò nínú ẹni tó wà ní ìparí kejì. Ṣàkọsílẹ̀ ọ̀nà pàṣípàrọ̀ kọ́kọ́rọ́, ìwọ̀n ẹgbẹ́ àti ọ̀nà ìjẹ́rìí gẹ́gẹ́ bí pápá mẹ́ta, nítorí wọ́n ń kùnà lọ́tọ̀. Ọ̀nà abẹ́lẹ̀ tó ṣe ìdúnàádúrà lórí ẹgbẹ́ 3072 bíìtì ṣùgbọ́n tó ń gba èyíkéyìí ìwé-ẹ̀rí kì í ṣe ewu kan náà pẹ̀lú èyí tó ń gbé alábàṣiṣẹ́ dúró àti tó ń lo ẹgbẹ́ 2048 bíìtì.
Kọ àwọn ìlànà ìgbàlá sílẹ̀ kí àyẹ̀wò tó bẹ̀rẹ̀, kí ìyọrísí lè jẹ́ ìfiwé kì í ṣe èrò. Ìwọ̀n ẹgbẹ́ tó kéré jù fún ẹ̀dá ìlànà kọ̀ọ̀kan, àkọsílẹ̀ ìyọ̀nda fún àwọn ẹgbẹ́ onírúkọ àti ìjẹ́rìí alábàṣiṣẹ́ tí ó jẹ́ dandan tó láti jẹ́ kí ìpinnu di ẹ̀rọ. Àìdánilójú nínú àkọsílẹ̀ yẹn ni ó ń yí àyẹ̀wò padà sí àríyànjiyàn, a kò sì ń tún àwọn àríyànjiyàn ṣe. Nígbà náà ìjáde ni àkọsílẹ̀ àwọn ìparí tí wọ́n kùnà ìlànà tí a sọ.
ipsec statusall | grep -Ei "peer|auth|cert"
openssl s_client -connect vpn.acme.example:443 -brief -cipher 'DHE-RSA-AES256-GCM-SHA384'Pa àyíká mọ́ nípasẹ̀ kíka àwọn iye tí a ṣe ìdúnàádúrà lórí lẹ́ẹ̀kan sí í lẹ́yìn àtúnṣe. Fáìlì ìṣètò tó bá ìlànà mu kì í ṣe ẹ̀rí pé ọ̀nà abẹ́lẹ̀ ti gbà á. Ìjáde ipò àti ìfọwọ́báwọ́ tuntun kan ni ẹ̀rí, gbígbá wọn jọ sì ń gbà àkókò tó dín kù ju ìpàdé lórí bóyá wọ́n pọn dandan.