Àwọn òtítọ́ mẹ́ta tí ó yàtọ̀ ni wọ́n dàpapọ̀ sí ìlà kan nínú ọ̀pọ̀ jùlọ ìjíròrò OpenVPN TLS: ohun tí ìkọ́ ẹ̀rọ oníbàárà rẹ lè ṣe, ohun tí profáìlì gbà láàyè àti ohun tí ẹ̀kọ́ ìpàdé náà gbà dájú ní ti gidi. Àkójọpọ̀ àwọn suite TLS 1.3 kúkúrú ń dáhùn ìdajì ìbéèrè àárín nìkan, kò sì sọ nípa ààlà ìsàlẹ̀ ẹ̀yà ìlànà náà. Tẹ̀síwájú nínú àwọn àyẹ̀wò tí ó wà nísàlẹ̀ lẹ́sẹẹsẹ, kí o sì dúró ní ibi àkọ́kọ́ tí kò dúró, nítorí gbogbo àyẹ̀wò tí ó tẹ̀lé ń rójú pé àwọn ti ṣáájú ti yanjú.

Yẹ̀wò ìkọ́ náà kí o tó ka àkójọpọ̀ èyíkéyìí

Ìtọ́nisọ́nà ìṣètò kò lè fi àtìlẹ́yìn ìlànà kún fáìlì bínárì tí kò ní í. Bẹ̀rẹ̀ pẹ̀lú bánà ẹ̀yà, tí ó dárúkọ ilé-ìkàwé crypto tí wọ́n kọ́:

openvpn --version

Ìkọ́ 2.6 tí ó so mọ́ OpenSSL gba tls-cipher àti tls-ciphersuites pẹ̀lú. Ìkọ́ pẹ̀lú mbed TLS kò ní yíyan suite TLS 1.3 rárá, ìwé ìtọ́sọ́nà 2.6 sì ń sàmì sí tls-ciphersuites gẹ́gẹ́ bí àṣàyàn OpenSSL. Bí wọ́n bá tún gbé sáfà náà pẹ̀lú backend mìíràn, profáìlì kan náà lè yí ìwà rẹ̀ padà láìyí ìlà ìṣètò kan pàápàá.

Nígbà tí o wà níbí, ṣe openvpn --show-tls kí o sì tọ́jú àbájáde. Ìyẹn ni àkójọ ohun-ìní tí ìwọ yóò fi wéye nígbà tí ó tọ́, ó sì rọrùn láti kó ó kí ẹnikẹ́ni tó bẹ̀rẹ̀ ṣíṣàtúnṣe profáìlì.

Kọ bánà àti àkójọ náà sínú tikẹ́ẹ̀tì àyípadà, kì í ṣe inú fèrèsé ìjíròrò. Nígbà tí ènìyàn méjì bá ń jiyàn bóyá ẹ̀rọ oníbàárà lè pèsè suite ní ọ̀sẹ̀ mẹ́fà, àbájáde tí wọ́n kó náà yanjú rẹ̀ ní ìlà kan.

Pa àwọn ààlà ẹ̀yà mọ́ àsopọ̀ àwọn àkójọ cipher

Nínú ìwé ìtọ́sọ́nà 2.6 ìwọ̀nyí ni ìṣàkóso mẹ́ta, kì í ṣe ọ̀kan:

  • tls-cipher ń ṣètò ìlànà cipher fún TLS 1.2 àti àwọn tí ó ti pẹ́ jù, a sì ń gbé e lọ sí àkójọ cipher OpenSSL;
  • tls-ciphersuites ń yan àwọn suite TLS 1.3;
  • tls-version-min àti tls-version-max ń dín àwọn ẹ̀yà ìlànà tí ìsopọ̀ lè lò kù.

Nítorí náà àkójọpọ̀ àwọn suite TLS 1.3 tí wọ́n gé pẹ̀lú ìṣọ́ra kò fi ohunkóhun hàn nípa bóyá ẹ̀yà àtijọ́ ṣì ní ààyè. Bí ohun tí wọ́n béèrè bá jẹ́ «TLS 1.3 nìkan», ààlà ìsàlẹ̀ ẹ̀yà ni ó gbé e, àkójọpọ̀ suite sì ń dín àwọn àṣàyàn kù ní àárín ààlà yẹn:

tls-version-min 1.3
tls-ciphersuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256

Párí yẹn ń ṣe iṣẹ́ méjì. Pípa ọ̀kan nínú àwọn ìlà rẹ́ ń jẹ́ kí èkejì fi agbara mu díẹ̀ sí i ju bí o ṣe rò lọ, ìyẹn sì ni ìkùnà tí gbogbo àyẹ̀wò yìí wà fún láti mú.

Ìkànnì dátà ni ìṣàkóso kẹrin. data-ciphers ń bá sọ̀rọ̀ nípa cipher alátẹ̀gbẹ́ nínú ònà, àbájáde rẹ̀ kò sì sọ ohunkóhun nípa ẹ̀yà TLS ti ìkànnì ìṣàkóso. Rírí AES-256-GCM nínú àkópọ̀ ìpàdé kì í ṣe ẹ̀rí nípa TLS 1.3 ní ọ̀nà èyíkéyìí.

Ka show-tls gẹ́gẹ́ bí àkójọ ohun-ìní àdúgbò

--show-tls ń ṣe àkójọ àwọn suite tí ilé-ìkàwé crypto tí fáìlì bínárì yìí so mọ́ ń ṣe àtìlẹ́yìn fún, ní ọ̀nà ààyò. Kì í ṣe ìròyìn láti ẹnubodè. Ìwé ìtọ́sọ́nà sọ ní kedere pé àkójọ náà wá láti ilé-ìkàwé àdúgbò, ìyẹn túmọ̀ sí pé kọ̀mpútà àgbékọ́kiri pẹ̀lú OpenSSL 3.x àti róútà pẹ̀lú ìkọ́ àtijọ́ yóò tẹ àwọn àkójọ tí ó yàtọ̀ nígbà tí wọ́n ń bá sáfà kan náà sọ̀rọ̀.

EvidenceWhat it actually describes
--show-tls outputCapabilities of this client build and its library
Profile directivesWhat this attempt is allowed to offer
Session log lineWhat this one negotiation selected

Sá à pé ẹ̀rọ oníbàárà ń ṣe àtìlẹ́yìn fún suite A, B àti C, tí ìpàdé kan sì yan B. Ìyẹn kò fi ohunkóhun múlẹ̀ nípa bóyá sáfà náà gbà A tàbí C láàyè, tàbí bóyá B ni àṣàyàn kan ṣoṣo tí wọ́n gbà láàyè. Pa àwọn ìlà mẹ́ta mọ́ lọ́tọ̀, àwọn kókó TLS tí ó dàrú púpọ̀ yóò sì yanjú fúnra wọn.

Ó tún tọ́ sí láti pa àkójọ náà mọ́. Nígbà tí ìpàdé bá kùnà, fífi àkójọ ilé-ìkàwé wé àkójọ profáìlì yóò sọ fún ọ bóyá ẹ̀rọ oníbàárà ní àǹfààní láti pèsè ohun tí sáfà fẹ́. Ó tún fi hàn bóyá àyípadà backend ti yọ TLS_CHACHA20_POLY1305_SHA256 kúrò ní ìdìpọ̀ tí àwọn oníbàárà àtijọ́ gbẹ́kẹ̀ lé lẹ́ẹ̀kọ̀ọ̀kan — irú ìpadàsẹ́yìn tí ó ń farahàn gẹ́gẹ́ bí àwọn olùlò díẹ̀ tí kò lè sopọ̀ nígbà tí gbogbo ẹlòmíràn kò ṣàkíyèsí ohunkóhun.

Béèrè lọ́wọ́ ẹnubodè ohun tí ó lè dáhùn

Bí ìwọ bá ń ṣàkóso iṣẹ́ náà, yẹ̀wò ìṣètò tí ó wúlò ti ẹ̀dá tí ń ṣiṣẹ́ dípò fáìlì kan lórí díìsìkì. OpenVPN lè ti bẹ̀rẹ̀ pẹ̀lú ọ̀nà --config mìíràn, ó lè ń fa àwọn àfikún, ó sì lè máà ti tún bẹ̀rẹ̀ láti ìgbà àtúnṣe. Ìlànà daemon tí ń ṣiṣẹ́ ni ohun tí àwọn oníbàárà ń bá pàdé.

Bí ìwọ kò bá ń ṣàkóso rẹ̀, béèrè lọ́wọ́ olùṣiṣẹ́ náà fún àwọn ohun tí a nílò lọ́wọ́ oníbàárà tí wọ́n ń ṣe àtìlẹ́yìn fún tàbí àyẹ̀wò ìtẹ́wọ́gbà tí ó ní ààlà. Ìgbìyànjú tí wọ́n kọ̀ kì í ṣe suite tí wọ́n kọ̀ lẹ́ẹ̀kọ̀ọ̀kan: ààlà ìsàlẹ̀ ẹ̀yà, àyẹ̀wò ìdánimọ̀ ẹ̀rí gẹ́gẹ́ bí remote-cert-tls, tàbí àìbáramu láàrin tls-auth àti tls-crypt lè parí pàṣípààrọ̀ náà kí yíyan suite tó di pàtàkì. Ka àṣìṣe sáfà náà kí o tó yí àkójọ ẹ̀rọ oníbàárà padà, nítorí «handshake failed» ń bo àwọn ìdí mẹ́rin tí ó yàtọ̀, ọ̀kan nìkan sì ni àìbáramu cipher.

Títọ́ka openssl s_client sí ibùdó VPN kò tún ṣe ìbéèrè náà. Ìkànnì ìṣàkóso ń ṣiṣẹ́ nínú fíréémù ti OpenVPN fúnra rẹ̀, nítorí náà aṣàwárí TLS àìṣeéṣe ń dán ìlànà mìíràn wò ní ibùdó tí ó ń retí ohun mìíràn. Ìparí èyíkéyìí tí a bá fa yọ láti inú rẹ̀ jẹ́ nípa aṣàwárí náà, kì í ṣe nípa ònà náà.

Ṣàkọsílẹ̀ àbájáde méjì kí o sì pa wọ́n mọ́ lọ́tọ̀

Ìpàdé tuntun tí wọ́n gbà láàyè ń ṣe ìlà ìkànnì ìṣàkóso kan tí ó dárúkọ ẹ̀yà ìlànà àti cipher tí wọ́n yàn, àti ìlà ìkànnì dátà ọ̀tọ̀ọ̀tọ̀ kan tí ó dárúkọ cipher ònà náà. Kó àwọn méjèèjì pẹ̀lú ẹ̀yà ẹ̀rọ oníbàárà àti orúkọ profáìlì, kí o sì ṣàkọsílẹ̀ ẹ̀dá sáfà wo ni ó dáhùn:

openvpn --config office.ovpn --verb 4 2>&1 | tee session.txt

Lẹ́yìn náà ka ìlà méjì náà láti inú fáìlì yẹn, kì í ṣe láti inú ìrántí. Párí náà ni ẹ̀rí; orúkọ suite nìkan ni ààyò, ààlà ẹ̀yà sì ni gbólóhùn ọ̀tọ̀ọ̀tọ̀ nípa ohun tí sáfà kọ̀.

Ṣe àwọn àyẹ̀wò ní ọ̀nà yìí. Fi --version jẹ́rìí ìkọ́ àti backend. Kó --show-tls kí o tó yí ohunkóhun padà. Sọ ààlà ìsàlẹ̀ ẹ̀yà tí wọ́n nílò lọ́tọ̀ sí àkójọ suite. Fi ẹni tí ó ni í jẹ́rìí ìlànà tí ó wúlò ti ẹ̀dá tí ń ṣiṣẹ́. Ṣàkíyèsí ìpàdé kan tí wọ́n gbà láàyè àti, bí ètò náà bá gbà, ìgbìyànjú kan tí wọ́n kọ̀ pẹ̀lú ẹ̀yà àtijọ́. Ṣàkọsílẹ̀ àbájáde ìkànnì ìṣàkóso àti ìkànnì dátà gẹ́gẹ́ bí àwọn àwárí ọ̀tọ̀ọ̀tọ̀.

Bí ẹ̀rọ oníbàárà tí wọ́n nílò kò bá lè dé ipò kéré jùlọ tuntun, ṣe ìpinnu ìṣíkiri tàbí ìyọkúrò yẹn ní kedere dípò fífi ọ̀nà ìtẹ́wọ́gbà tí kò ní í ṣe pẹ̀lú rẹ̀ kalẹ̀ lẹ́ẹ̀kọ̀ọ̀kan kí ìgbéjáde lè dàbí ẹni pé ó parí.

Àwọn àpilẹ̀kọ tó jọra