AWS Config -säännöt ja korjaustoimet
Ota käyttöön hallinnoituja ja mukautettuja Config-sääntöjä vaatimustenvastaisten resurssien havaitsemiseksi ja käytä SSM Automation -dokumentteja automaattisiin korjaustoimiin.
AWS Config -säännöt ja korjaustoimet on ilmainen Cloud & IT Cert Prep-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Cloud & IT Cert Prep-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Cloud & IT Cert Prep-kurssilla on yhteensä 4 oppituntia.
Mikä AWS Config on
AWS Config on jatkuva määritysten tarkastuspalvelu, joka tallentaa AWS-resurssien määritystilat ajan kuluessa ja arvioi määrityksiä haluttujen sääntöjen perusteella. Toisin kuin CloudTrail, joka tallentaa, kuka teki mitä, AWS Config vastaa kysymyksiin miltä tämä resurssi näyttää juuri nyt? ja miltä se näytti minä tahansa aiempana ajankohtana?. Se vastaa myös kysymykseen noudattaako tämä määritys käytäntöäni? — siksi se on hallinnan ja vaatimustenmukaisuuden ensisijainen palvelu.
Määrityskohteet ja määrityshistoria
Kun AWS Config tallentaa resurssin, se luo määrityskohteen (CI) — tilannekuvan resurssin määritteistä, suhteista ja metatiedoista tietyllä hetkellä. Aina resurssin muuttuessa tallennetaan uusi CI. AWS Config ylläpitää jokaisesta resurssista täydellistä määrityshistoriaa, jonka avulla voitte nähdä, miten suojausryhmä kehittyi kuukausien aikana ja tarkalleen, milloin sääntö lisättiin tai poistettiin. CI:t toimitetaan S3-säilöön ja valinnaisesti CloudWatch Eventsiin.
# Get the full configuration history for an EC2 security group
aws configservice get-resource-config-history \
--resource-type AWS::EC2::SecurityGroup \
--resource-id sg-0abc1234def567890 \
--limit 10 \
--query 'configurationItems[].{Time:configurationItemCaptureTime,Status:configurationItemStatus}'AWS Configin käyttöönotto
Aloittaaksenne AWS Configin käytön luotte määritysten tallentimen (määritätte tallennettavat resurssityypit) ja toimituskanavan (määritätte S3-säilön ja valinnaisen SNS-aiheen muutosilmoituksia varten). Voitte tallentaa kaikki tuetut resurssityypit tai tietyn osajoukon. Määritysaggregaattorin avulla voitte yhdistää useiden tilien ja alueiden Config-tiedot yhteen näkymään koko organisaation vaatimustenmukaisuusraportointia varten.
# Enable AWS Config recording for all resource types
aws configservice put-configuration-recorder \
--configuration-recorder \
name=default,roleARN=arn:aws:iam::111122223333:role/AWSConfigRole \
--recording-group allSupported=true,includeGlobalResourceTypes=true
# Set up delivery channel
aws configservice put-delivery-channel \
--delivery-channel \
name=default,s3BucketName=my-config-bucket-111122223333,snsTopicARN=arn:aws:sns:us-east-1:111122223333:ConfigChanges
aws configservice start-configuration-recorder --configuration-recorder-name defaultAWS Config -säännöt: hallinnoidut säännöt
Config-säännöt määrittävät resurssien halutun määritystilan. AWS:n hallinnoidut Config-säännöt ovat AWS:n valmiita sääntöjä yleisiä vaatimustenmukaisuustarkistuksia varten — esimerkiksi s3-bucket-public-read-prohibited tarkistaa, etteivät S3-säilöt ole julkisesti luettavissa, ec2-instance-no-public-ip tarkistaa, ettei EC2-instansseilla ole julkisia IP-osoitteita, ja iam-password-policy varmistaa, että tilin salasanakäytäntö täyttää monimutkaisuusvaatimukset. Hallinnoituja sääntöjä on saatavilla yli 300.
# Add the managed rule to check S3 buckets are not publicly readable
aws configservice put-config-rule \
--config-rule '{
"ConfigRuleName": "s3-bucket-public-read-prohibited",
"Source": {
"Owner": "AWS",
"SourceIdentifier": "S3_BUCKET_PUBLIC_READ_PROHIBITED"
},
"Scope": {
"ComplianceResourceTypes": ["AWS::S3::Bucket"]
}
}'
# View compliance status of all rules
aws configservice describe-compliance-by-config-rule \
--query 'ComplianceByConfigRules[].{Rule:ConfigRuleName,Compliance:Compliance.ComplianceType}'Mukautetut Config-säännöt Lambdalla
Jos mikään AWS:n hallinnoitu sääntö ei kata vaatimustanne, voitte kirjoittaa mukautetun Config-säännön AWS Lambda -funktiolla. Lambda vastaanottaa määrityskohteet tapahtuman hyötykuormana, ja sen on palautettava arvo COMPLIANT tai NON_COMPLIANT. Mukautetuilla säännöillä voidaan valvoa organisaatiokohtaisia nimeämiskäytäntöjä, pakollisia tageja, hyväksyttyjä AMI-tunnuksia tai mitä tahansa vaatimustenmukaisuustiimin tarvitsemaa logiikkaa. Säännöt voidaan arvioida muutoksen yhteydessä (resurssin muuttuessa), määräajoin (1, 3, 6, 12 tai 24 tunnin välein) tai molemmilla tavoilla.
# Register a custom Lambda-backed Config rule
aws configservice put-config-rule \
--config-rule '{
"ConfigRuleName": "required-tags-enforcer",
"Source": {
"Owner": "CUSTOM_LAMBDA",
"SourceIdentifier": "arn:aws:lambda:us-east-1:111122223333:function:RequiredTagsChecker",
"SourceDetails": [{
"EventSource": "aws.config",
"MessageType": "ConfigurationItemChangeNotification"
}]
},
"Scope": {
"ComplianceResourceTypes": ["AWS::EC2::Instance","AWS::S3::Bucket"]
}
}'Ennakoivat säännöt CloudFormation Guardilla
Config tukee myös ennakoivia sääntöjä, joissa käytetään AWS CloudFormation Guardia — käytäntö koodina -kieltä. Ennakoivat säännöt arvioivat resurssit ennen niiden luomista CloudFormationin, AWS CDK:n tai Terraform Cloudin kautta. Näin vaatimustenvastaiset määritykset havaitaan käyttöönoton aikana eikä vasta niiden ollessa tuotannossa. Tämä siirtää vaatimustenmukaisuuden tarkistamisen infrastruktuuriputkessa aiemmaksi. Ennakoiva arviointi on uudempi ominaisuus, johon SAA-C03-kokeessa voidaan viitata shift-left-hallinnan yhteydessä.
Automaattinen korjaaminen SSM:llä
Config-säännöt voidaan yhdistää automaattisiin korjaustoimiin, jolloin vaatimustenvastaiset resurssit korjataan ilman ihmisen toimenpiteitä. Korjaustoimet ovat AWS Systems Managerin (SSM) Automation-dokumentteja. Jos S3-säilöstä tulee esimerkiksi vaatimustenvastainen, koska joku on sallinut julkisen käytön, Config voi suorittaa automaattisesti AWS-DisableS3BucketPublicReadWrite SSM -dokumentin, joka ottaa säilön julkisen käytön eston uudelleen käyttöön. Korjaus voi olla automaattinen (välitön) tai manuaalinen (pyydettäessä käynnistettävä).
# Add automatic remediation to a Config rule
aws configservice put-remediation-configurations \
--remediation-configurations '[
{
"ConfigRuleName": "s3-bucket-public-read-prohibited",
"TargetType": "SSM_DOCUMENT",
"TargetId": "AWS-DisableS3BucketPublicReadWrite",
"Parameters": {
"S3BucketName": {"ResourceValue": {"Value": "RESOURCE_ID"}},
"AutomationAssumeRole": {"StaticValue": {"Values": ["arn:aws:iam::111122223333:role/ConfigRemediationRole"]}}
},
"Automatic": true,
"MaximumAutomaticAttempts": 3,
"RetryAttemptSeconds": 60
}
]'Määritysaikajana ja resurssien väliset suhteet
AWS Configin konsolin resurssiaikajana näyttää resurssin kaikki määritysmuutokset aikajanana — voitte selata taaksepäin mihin tahansa ajankohtaan ja nähdä tarkasti, miltä resurssi näytti kyseisellä hetkellä, mukaan lukien sen suhteet muihin resursseihin (esimerkiksi mitkä suojausryhmät siihen oli liitetty ja mikä IAM-rooli siihen liittyi). Kun napsautatte suhdetta, siirrytte kyseisen liittyvän resurssin aikajanalle. Tämä tekee Configista korvaamattoman työkalun perimmäisen syyn analysointiin: voitte selvittää tarkasti, mikä muutos aiheutti tuotantoympäristön rikkoutumisen.
# Get current compliance status for all EC2 instances
aws configservice get-compliance-details-by-resource \
--resource-type AWS::EC2::Instance \
--resource-id i-0123456789abcdef0 \
--query 'EvaluationResults[].{Rule:EvaluationResultIdentifier.EvaluationResultQualifier.ConfigRuleName,Compliance:ComplianceType}'Configin tietojen yhdistäminen tileiltä
määritysten koostaja kerää Config-tietoja useista AWS-tileistä ja alueilta yhteen tiliin keskitettyä vaatimustenmukaisuuden raportointia varten. AWS-organisaatiossa voitte luoda koostajan hallintatilille, jolloin kaikki jäsenktilit sisällytetään automaattisesti ilman erillistä valtuutusta. Koostajat tukevat kyselyitä Advanced Queries -toiminnolla — SQL:n kaltaisella käyttöliittymällä, jonka avulla voitte löytää kaikki organisaation vaatimustenvastaiset resurssit sekunneissa.
# Query all non-compliant resources across an organisation using Advanced Query
aws configservice select-aggregate-resource-config \
--configuration-aggregator-name OrgAggregator \
--expression "SELECT resourceId, resourceType, accountId, awsRegion
WHERE complianceType = 'NON_COMPLIANT'
AND resourceType = 'AWS::S3::Bucket'"
--query 'Results'Korjaaminen suuressa mittakaavassa
Kun vaatimustenvastaisia resursseja on tuhansia, Configin korjauspoikkeuksilla voitte vapauttaa tietyt resurssit tarkastuksista määritetyksi ajaksi ja antaa niille dokumentoidun syyn — näin vältätte oikeutettujen poikkeustapausten virheelliset korjaukset. Laajamittaista siivousta varten voitte käynnistää manuaalisen korjauksen eränä konsolista tai käyttää Systems Manager State Manager -assosiaatioita haluttujen määritysten soveltamiseen EC2-instanssiryhmiin aikataulun mukaisesti yhdistämällä Configin tunnistuksen SSM:n valvontaan.
# Add a remediation exception for a specific resource
aws configservice put-remediation-exceptions \
--config-rule-name s3-bucket-public-read-prohibited \
--resource-keys ResourceType=AWS::S3::Bucket,ResourceId=my-public-website-bucket \
--message 'Static website hosting requires public access' \
--expiration-time 2025-01-01T00:00:00ZAWS Configin ja CloudTrailin vertailu
Yleinen SAA-C03-kysymys koskee Configin ja CloudTrailin erottamista toisistaan. CloudTrail vastaa kysymyksiin: kuka teki mitä, milloin ja mistä (ohjelmointirajapintakutsujen tarkastusloki). AWS Config vastaa kysymyksiin: miltä resurssi näyttää nyt ja miltä se on näyttänyt ajan mittaan (määritystilan historia ja vaatimustenmukaisuus). Palvelut täydentävät toisiaan — CloudTrail kertoo, että joku kutsui ModifySecurityGroup-toimintoa kello 15, kun taas Config näyttää suojausryhmän tilan ennen muutosta ja sen jälkeen. Käyttäkää niitä yhdessä kattavaa tietoturvan hallintaa varten.
Pikatesti
Testatkaa ymmärrystänne tämän oppitunnin AWS Solutions Architect (SAA-C03) -käsitteistä.
Oppitunnin kertaus
Tässä oppitunnissa opitte, että AWS Config tallentaa määritystilan ajan mittaan ja arvioi resursseja vaatimustenmukaisuussääntöjä vasten, hallinnoidut ja mukautetut säännöt tarkistavat satoja resurssien määritteitä automaattisesti tai pyynnöstä ja SSM Automation -korjaus voi korjata vaatimustenvastaiset resurssit automaattisesti ilman ihmisen toimenpiteitä. Seuraavaksi tutustumme Conformance Packsiin ja Organisation Trailiin yritystason hallintaa varten.
Opi Cloud & IT Cert Prep tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 150
- Oppitunnit
- 600
Usein kysytyt kysymykset
Onko oppitunti ”AWS Config -säännöt ja korjaustoimet” ilmainen?
Kyllä – oppitunnin ”AWS Config -säännöt ja korjaustoimet” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Cloud & IT Cert Prep-kurssin, päivitä CoddyKit PROhon. Cloud & IT Cert Prep-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”AWS Config -säännöt ja korjaustoimet”?
Ota käyttöön hallinnoituja ja mukautettuja Config-sääntöjä vaatimustenvastaisten resurssien havaitsemiseksi ja käytä SSM Automation -dokumentteja automaattisiin korjaustoimiin. Harjoittelet Cloud & IT Cert Prep-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Cloud & IT Cert Prep-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Cloud & IT Cert Prep-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”AWS Config -säännöt ja korjaustoimet”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Cloud & IT Cert Prep-oppitunnilla?
Kyllä. Jokainen Cloud & IT Cert Prep-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- CloudTrail-polut ja tapahtumahistoria
- CloudTrail Insights ja lokitiedostojen eheys
- AWS Config -säännöt ja korjaustoimet
- Conformance Packit ja organisaation polut