Kọ̀mpútà àgbáyé ti olùdàgbàsókè dé ibi RDS aládàáni nípasẹ̀ VPN àwọn òṣìṣẹ́, ṣùgbọ́n ohun-èlò on EC2 kò lè sopọ̀ rárá. Èyí kì í ṣe ìmúṣẹ tí ó bàjẹ́. Kọ̀mpútà náà ní ọ̀nà abẹ́lẹ̀ tí ẹ̀dá EC2 kò jogún rí, àti «aládàáni» nínú RDS túmọ̀ sí pé kò ní ibi ìparí gbangba, kì í ṣe pé àwọn olùṣàmúlò VPN ènìyàn nìkan ni a gbà láàyè láti pè. Ohun-èlò náà nílò ipa-ọ̀nà tí a fọwọ́ sí tirẹ̀, ìbáṣepọ̀ rẹ̀ pẹ̀lú ẹgbẹ́ ààbò àti ìdánimọ̀ rẹ̀ nínú ibi-ìpamọ́, àti ìtòlẹ́sẹẹsẹ tí o fi yan àwọn mẹ́ta wọ̀nyí ń gba ọ̀pọ̀lọpọ̀ àkókò àyẹ̀wò là. Pinnu ipa-ọ̀nà kọ́kọ́, lẹ́yìn náà àwọn ìgbàsílẹ̀, lẹ́yìn náà ṣàyẹ̀wò láti inú àyíká tí a ti fi sílẹ̀ dípò láti orí tábìlì rẹ.

VPN kọ̀mpútà kì í ṣe ipa-ọ̀nà ohun-èlò

Ohunkóhun tí VPN àwọn òṣìṣẹ́ ń ṣe fún ènìyàn, kò ṣe nnkan fún ẹ̀dá kan àyàfi tí ẹ̀dá yẹn bá jẹ́ apá kedere ti ipa-ọ̀nà nẹ́tíwọ́kì kanna. Ẹ̀dá EC2 nínú ẹ̀ka-nẹ́tíwọ́kì aládàáni dé RDS nípasẹ̀ ìtọ́nisọ́nà VPC, àwọn ẹgbẹ́ ààbò àti ACL nẹ́tíwọ́kì. Kò jogún ọ̀nà abẹ́lẹ̀ ènìyàn, ìpàdé ènìyàn tàbí àwọn ẹ̀rí ènìyàn, kò sì gbọ́dọ̀: ìsopọ̀ ohun-èlò láìsí àbójútó àti àwọn òṣìṣẹ́ wíwọlé látọ̀ọ́kè gbọ́dọ̀ ṣiṣẹ́ lọ́nà ọ̀tọ̀ọ̀tọ̀.

Òmìnira yẹn jẹ́ ànímọ́ kan. Nígbà tí VPN bá lọ silẹ̀, ohun-èlò náà ń bá iṣẹ́ lọ. Nígbà tí ohun-èlò bá hu ìwà tí kò tọ́, kò sí ẹni tí ó pàdánù ànfààní wíwọlé látọ̀ọ́kè. Àwọn àpẹẹrẹ tí ó dàpọ̀ méjèèjì sínú ipa-ọ̀nà kan ni a sábà máa ń ṣàwárí ní àkókò ìṣẹ̀lẹ̀, ní àkókò tí ó burú jùlọ.

Ìpinnu 1: VPC kanna, ipa-ọ̀nà tààrà

Nígbà tí ohun-èlò àti ibi-ìpamọ́ wà nínú VPC kanna pẹ̀lú ìtọ́nisọ́nà tààrà àti láìsí ẹ̀rọ àyẹ̀wò kan ní àárín wọn, ipa-ọ̀nà rọrùn àti ìtọ́kasí ẹgbẹ́ ààbò ni irinṣẹ́ tí ó lágbára jùlọ tí ó wà. Fún ohun-èlò ní ẹgbẹ́ tirẹ̀, lẹ́yìn náà gba ebute ibi-ìpamọ́ láàyè láti inú ẹgbẹ́ yẹn dípò láti inú ìwọ̀n àdírẹ́sì:

aws ec2 authorize-security-group-ingress --group-id sg-0db123   --protocol tcp --port 5432 --source-group sg-0app456

aws rds describe-db-instances --db-instance-identifier prod-db   --query 'DBInstances[0].{Endpoint:Endpoint.Address,Port:Endpoint.Port,Public:PubliclyAccessible,Groups:VpcSecurityGroups}'

Ebute náà jẹ́ àpẹẹrẹ lasan àti pé ó gbọ́dọ̀ bá ẹ̀rọ mu. Ìtọ́kasí ẹgbẹ́ ń fọwọ́ sí ìrìnàjò láti inú àwọn ẹ̀dá ohun-èlò; kò ṣe àdàkọ àwọn òfin wọn kò sì dá ìwọlé ibi-ìpamọ́. Àwọn ìṣòro méjì ọ̀tọ̀ọ̀tọ̀, àwọn ojútùú méjì ọ̀tọ̀ọ̀tọ̀.

Lẹ́yìn náà ṣàyẹ̀wò ìyókù ipa-ọ̀nà dípò dúró ní òfin tí o ṣẹ̀ṣẹ̀ fi kún. Ìlànà ìjáde ohun-èlò, gbogbo àwọn ẹgbẹ́ tí a so mọ́ ibi-ìpamọ́, àwọn tábìlì ìtọ́nisọ́nà ẹ̀ka-nẹ́tíwọ́kì àti ACL nẹ́tíwọ́kì èyíkéyìí gbọ́dọ̀ bá ara wọn mu. Àwọn òfin ẹgbẹ́ ààbò ní ipò, nígbà tí ACL nẹ́tíwọ́kì àkànṣe gbọ́dọ̀ gba ìbéèrè àti ìrìnàjò ìpadà láàyè nínú àwọn òfin ọ̀tọ̀ọ̀tọ̀, pẹ̀lú àwọn ebute ìgbà díẹ̀. Òfin ibi-ìpamọ́ tuntun tí ó kéré kò tún fagilé ìgbàsílẹ̀ gbòòrò àtijọ́ tí a ti so mọ́.

Ìpinnu 2: VPC mìíràn tàbí àkọsílẹ̀ mìíràn

Bí ohun-èlò bá wà ní VPC mìíràn, àwọn oní-nẹ́tíwọ́kì yan ìsopọ̀ aládàáni tí a ń ṣètìlẹ́yìn fún: peering, àpẹẹrẹ ìrékọjá tàbí ètò VPC tí a pín. Nígbà náà àwọn ọ̀nà méjèèjì ti ìtọ́nisọ́nà gbọ́dọ̀ wà, ìyọ̀nuda orúkọ gbọ́dọ̀ ṣiṣẹ́ fún ibi ìparí RDS, àti orísun tí ìlànà ibi-ìpamọ́ ń gbéyẹ̀wò gbọ́dọ̀ bá ohun tí ó ń débọ̀ mu. Àwọn orúkọ àkọsílẹ̀ tí ó bá ara wọn mu tàbí ìbáṣepọ̀ ìsanwó tí a jápọ̀ kò pèsè èyíkéyìí nínú àwọn wọ̀nyí.

Ìtọ́kasí ẹgbẹ́ ààbò ni apá tí ó ń yàtọ̀. Ó ń ṣiṣẹ́ nínú àwọn àpẹẹrẹ ìsopọ̀ aládàáni mélòókan, ṣùgbọ́n ó dáwọ́ ṣíṣẹ́ ní àkókò tí ẹ̀rọ àárín bá tún orísun kọ tàbí ó parí ìsopọ̀, nítorí ibi-ìpamọ́ yóò nígbà náà rí ẹ̀rọ àárín dípò ẹgbẹ́ ohun-èlò rẹ. Àwọn àpẹẹrẹ VPC ti RDS ya ànfààní wíwọlé nínú VPC kanna sọ́tọ̀ kúrò nínú àwọn ètò mìíràn, ó sì yẹ kí o ṣàyẹ̀wò ìtòpọ̀ rẹ pàtó lòdì sí wọn kí o tó ro pé irú òfin kan ń kọjá.

Má ṣe yanjú ipa-ọ̀nà tí ó ṣàkù nípa ṣíṣe ibi-ìpamọ́ ní ànfààní gbangba. Ìyẹn jẹ́ ìpinnu ìfihàn mìíràn pẹ̀lú oní tirẹ̀ mìíràn, a sì sábà máa ń dábàá rẹ̀ nípasẹ̀ ẹni tí ó jìnnà jùlọ sí àbájáde.

Ìpinnu 3: irú ìdánimọ̀ tí ibi-ìpamọ́ ń gbà

Ànfààní wíwọlé nẹ́tíwọ́kì àti ìjẹ́rìí ibi-ìpamọ́ jẹ́ àwọn ìpele ọ̀tọ̀ọ̀tọ̀, àti dídà wọ́n pọ̀ ń dá àwọn àṣìṣe tí ó ń tannijẹ jùlọ. Ipa ẹ̀dá náà jẹ́ ìdánimọ̀ AWS fún pípe àwọn API AWS. Kì í ṣe olùṣàmúlò ibi-ìpamọ́. Ìjẹ́rìí ibi-ìpamọ́ IAM jẹ́ ẹ̀yà tí a ṣètìlẹ́yìn fún níbi tí ẹ̀rọ àti ìṣètò bá gbà á, ó sì ṣì jẹ́ ìyàwòrán sí olùṣàmúlò ibi-ìpamọ́, kì í ṣe àrọ́wọ́tó rẹ̀.

Lo orúkọ ibi ìparí RDS nínú ìṣètò ohun-èlò dípò àdírẹ́sì tí a mú láti inú ìwádìí kan. Ìyípadà Multi-AZ ń yí àdírẹ́sì tí ó wà lẹ́yìn orúkọ yẹn, ohun-èlò tí a fi mọ́ IP yóò kùnà ní àkókò gan-an tí a bá nílò rẹ̀. Fi ìjẹ́rìí TLS ẹ̀rọ náà sílẹ̀ ní ṣíṣí dípò pípa á kí àṣìṣe lè parẹ́, nítorí ìkùnà ìjẹ́rìí sọ nnkan fún ọ nípa ibi ìparí tí o dé.

Lẹ́yìn náà fún àkọsílẹ̀ ibi-ìpamọ́ ní kéré jùlọ tí ohun-èlò nílò, nínú ètò tí ó ń lò ní tòótọ́. Iṣẹ́ yẹn ń dín, a lè ṣàyẹ̀wò rẹ̀, ìyẹn sì ni apá tí àyẹ̀wò ìṣẹ̀lẹ̀ yóò béèrè nípa rẹ̀.

Ṣàyẹ̀wò láti inú àyíká tí a ti fi sílẹ̀

Dánwò láti inú ẹ̀dá tàbí láti iṣẹ́ tí ó ń ṣiṣẹ́ pẹ̀lú ẹgbẹ́, ẹ̀ka-nẹ́tíwọ́kì àti ipa kanna. Àwọn ìkùnà mẹ́rin ń hàn bíi kanna láti kọ̀mpútà, a sì lè yà wọ́n sọ́tọ̀ níbẹ̀: orúkọ tí kò yanjú, ìsopọ̀ tí àkókò rẹ̀ ń parí, ìkùnà ìjẹ́rìí TLS àti ìwọlé ibi-ìpamọ́ tí a kọ̀. Ọ̀kọ̀ọ̀kan ń tọ́ka sí ààlà mìíràn, àti yíyí ìfihàn ibi-ìpamọ́ padà kí o tó mọ èwo tí o ní jẹ́ àràmọ̀.

psql "host=prod-db.abc123.eu-west-1.rds.amazonaws.com port=5432 dbname=app sslmode=verify-full" -c 'select 1'

Bí ìsopọ̀ bá yọrí rere láti inú ẹ̀dá àti bí ó bá kùnà láti orí tábìlì rẹ, ipa-ọ̀nà ohun-èlò dára àti ànfààní rẹ ni ó gbọ́dọ̀ túnṣe. Bí ó bá kùnà láti ibi méjèèjì, bẹ̀rẹ̀ pẹ̀lú àwọn àyẹ̀wò ẹgbẹ́ àti ipa-ọ̀nà lókè dípò àwọn ẹ̀rí. Ìfiwéra kan ṣoṣo yẹn ń dènà ọ̀pọ̀lọpọ̀ ìdàrúdàpọ̀ tí àwọn tíkẹ́ẹ̀tì wọ̀nyí ń dá.

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