Kọ̀ǹpútà àgbékalẹ̀ onílé kan ń kùnà ní àkókò nígbà tí ó so mọ́ ibi ìparí RDS àdáni, nígbà tí àwọn ẹ̀rí ìwọlé kan náà ń ṣiṣẹ́ láti orí ẹ̀rọ bastion. Kò sí ohunkóhun tí ó ṣubú. Ọ̀nà láàrín kọ̀ǹpútà yẹn àti àkójọ náà ń ṣe àìní ọ̀kan nínú mẹ́ta: orúkọ tí ó ń yanjú, ipa-ọ̀nà tí ó ń gbé ìrìnàjò, tàbí ìlànà nínú ẹgbẹ́ ààbò tí ó gba orísun tí àkójọ náà rí gan-an. Wá ìmọ̀ èyí tí ó ṣe àìní kí o tó yí àwọn méjì yòókù padà.

Ka ìkùnà ní ìpele tí ó tọ́

Àkókò kùnà kì í ṣe àṣìṣe kan. Orúkọ tí kò yanjú máa ń kùnà kí pákẹ́ẹ̀tì tó kúrò nínú ẹ̀rọ. Adírẹ́sì tí kò ní ipa-ọ̀nà máa ń fi pákẹ́ẹ̀tì lọ sínú ihò dúdú. Pọ́ọ̀tì tí a ṣe àyẹ̀wò máa ń dá ìdúró tí ó dà bí ẹ̀rọ tí kò tọ́. Ṣe àwọn ìgbésẹ̀ lẹ́sẹẹsẹ kí o sì dúró ní ìgbésẹ̀ àkọ́kọ́ tí ó kùnà.

dig +short db.internal.example
nc -vz db.internal.example 5432

Bí orúkọ náà bá dá adírẹ́sì gbogbogbò padà, tàbí kò dá ohunkóhun padà, ihò náà kì í ṣe ìṣòro báyìí.

Bí orúkọ náà bá yanjú tí ìdánwò pọ́ọ̀tì sì ń dúró, fi adírẹ́sì tí o yanjú wé adírẹ́sì tí àkójọ náà ń sọ. Ibi ìparí tí a ń ṣàkóso lè yanjú sí adírẹ́sì àdáni nínú VPC àti sí ohunkóhun tí kò wúlò ní ìta rẹ̀, adírẹ́sì tí a dà kọ láti ìwádìí àtijọ́ yóò sì tọ́ka sí ẹ̀rọ tí kò dáhùn mọ́.

Ya ihò kúrò nínú ipa-ọ̀nà

Sísopọ̀ VPN aṣojú àránṣẹ́ kì í ṣe ìtọ́nisọ́nà gbogbo ìpín àdáni lẹ́ẹ̀kọ̀ọ̀kan. Pọ́fáìlì ń gbé àwọn ipa-ọ̀nà tí iṣẹ́ náà ń tì, aṣojú àránṣẹ́ sì lè fi kìkì díẹ̀ nínú wọn sórí ẹ̀rọ. Wo àwọn ìpín tí aṣojú àránṣẹ́ fi kún gan-an àti bóyá adírẹ́sì àkójọ náà wà nínú ọ̀kan nínú wọn.

ip route get 10.20.40.15
ip addr show tun0

Ipa-ọ̀nà tí ó tọ́ka sí ojú ihò náà ṣe pàtàkì; kò tó, nítorí ẹgbẹ́ kejì ṣì gbọ́dọ̀ gba ìrìnàjò náà.

Àwọn pọ́fáìlì ihò pín ni orísun tí ó wọ́pọ̀ fún àìṣeéyẹrìí ìdajì yìí. Wọ́n ń ṣiṣẹ́ fún ohun èlò tí a ṣe pọ́fáìlì náà fún, wọ́n sì ń fi ìpín àkójọ náà sí ìta ihò, èyí tí ó ń mú àkókò kùnà kan náà tí odi iná yóò mú.

Fi ẹgbẹ́ ààbò mọ́ orísun gidi

Ẹgbẹ́ ààbò RDS ń gba orísun, kì í gba ènìyàn. Ní ìbámu pẹ̀lú ìtòlẹ́sẹẹsẹ náà, orísun náà lè jẹ́ àkópọ̀ aṣojú àránṣẹ́ VPN, adírẹ́sì àdáni bastion, tàbí adírẹ́sì NAT tí a ń túmọ̀ ìrìnàjò sí. Ka ìlànà náà àti orísun gidi pákẹ́ẹ̀tì náà papọ̀.

aws ec2 describe-security-groups --group-ids sg-0123456789abcdef0 \
  --query 'SecurityGroups[].IpPermissions'

Ìlànà fún adírẹ́sì ilé kọ̀ǹpútà kan ṣoṣo jẹ́ ìṣòro ìtọ́jú, kì í ṣe àpẹẹrẹ ìwọlé.

Nígbà tí VPN aṣojú àránṣẹ́ tàbí ẹnubodè NAT bá wà ní ọ̀nà, àkójọ náà lè rí adírẹ́sì olùtúmọ̀ dípò adírẹ́sì ihò olùgbékalẹ̀. Ìdí niyìí tí ìlànà tí a dà kọ láti ìtòlẹ́sẹẹsẹ bastion tí ń ṣiṣẹ́ fi lè kùnà fún kọ̀ǹpútà kan: ọ̀nà méjèèjì wá láti orísun ọ̀tọ̀ọ̀tọ̀ bí ó tilẹ̀ jẹ́ pé àwọn méjèèjì dà bí ti inú.

Yàn ọ̀nà tóóró ju ọ̀nà gbòòrò

Nígbà tí olùgbékalẹ̀ kan nílò àkójọ kan, gbígbé lọ ní ìbámu pẹ̀lú ìpàdé sábà máa ń wà ní owó tí ó kéré jù láti ṣàkóso ju ihò ẹ̀rọ ẹ̀wọ̀n kíkún. Aṣojú àránṣẹ́ onílé ń so mọ́ pọ́ọ̀tì tí a gbé lọ, ẹ̀yà tí ó wà ní ọ̀nà jínjìn sì ń ṣe ìsopọ̀ àkójọ náà láti inú ẹ̀rọ ẹ̀wọ̀n náà.

ssh -N -L 5432:db.internal.example:5432 bastion.internal.example

Pa ìmúdájú TLS mọ́ láìkan nínú àpẹẹrẹ yẹn. Aṣojú àránṣẹ́ yẹ kí ó ṣì ṣàyẹ̀wò ẹ̀rí ìmúdájú olùpín fún orúkọ tí ó ń retí; pọ́ọ̀tì tí a gbé lọ ní ilé kì í ṣe ìdí láti pa ìmúdájú mọ́, pípa mọ́ sì ń fi ìṣòro ìdánimọ̀ tí ó yẹ kí a mú hàn.

Yíyan láàrín ihò kíkún àti gbígbé lọ tóóró jẹ́ ìpinnu nípa ìwọ̀n, kì í ṣe nípa eré ààbò.

Fi ọ̀nà tí a lè tún ṣe sílẹ̀

Ṣàkọsílẹ̀ orúkọ ibi ìparí dípò adírẹ́sì tí a yanjú, ìpín orísun tí ẹgbẹ́ ààbò ń gba, àti ipa àkójọ tí olùgbékalẹ̀ ń lò. Àwọn òtítọ́ mẹ́ta wọ̀nyí ń ṣàlàyé ọ̀pọ̀lọpọ̀ ìkùnà ọjọ́ iwájú láìsí ìpè. Fi ẹ̀yà pọ́fáìlì aṣojú àránṣẹ́ kún pẹ̀lú, nítorí ìyípadà pọ́fáìlì lè yọ ipa-ọ̀nà tí ẹ̀yà àtijọ́ ń gbé kúrò.

Lẹ́yìn náà dán ìpẹ̀jọ́ òdì wò lẹ́ẹ̀kan: aṣojú àránṣẹ́ tí ó wà ní ìta orísun tí a fọwọ́ sí yẹ kí a ṣì kọ̀ ọ́.

Àkójọ àdáni tí ó ń ṣiṣẹ́ kìkì fún ẹni tí ó ṣètò rẹ̀ kì í ṣe ìwọlé àdáni; ó jẹ́ ìyàtọ̀ tí a kò kọ sílẹ̀ tí ó ń dúró de àtúnwá. Kọ ọ̀nà náà sílẹ̀, olùgbékalẹ̀ tí ó kàn yóò sì jogún ọ̀nà dípò àdììtú.

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