AWS Config-regler og utbedring
Distribuer administrerte og egendefinerte Config-regler for å oppdage ressurser som ikke oppfyller kravene, og bruk SSM Automation-dokumenter til automatisk utbedring
AWS Config-regler og utbedring er en gratis leksjon i Cloud & IT Cert Prep på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Cloud & IT Cert Prep, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva er AWS Config?
AWS Config er en tjeneste for kontinuerlig konfigurasjonsrevisjon som registrerer konfigurasjonstilstanden til AWS-ressursene Deres over tid og evaluerer konfigurasjonene mot ønskede regler. I motsetning til CloudTrail (som registrerer hvem som gjorde hva) svarer AWS Config på hvordan ser denne ressursen ut akkurat nå? og hvordan så den ut på et hvilket som helst tidspunkt tidligere?. Den svarer også på oppfyller denne konfigurasjonen policyen min? — noe som gjør den til den foretrukne tjenesten for styring og samsvar.
Konfigurasjonselementer og konfigurasjonshistorikk
Når AWS Config registrerer en ressurs, oppretter tjenesten et konfigurasjonselement (CI) — et øyeblikksbilde av ressursens attributter, relasjoner og metadata på et bestemt tidspunkt. Hver gang en ressurs endres, registreres et nytt CI. AWS Config opprettholder en fullstendig konfigurasjonshistorikk for hver ressurs, slik at De kan se hvordan en sikkerhetsgruppe har utviklet seg over flere måneder, og nøyaktig når en regel ble lagt til eller fjernet. CI-er leveres til en S3-bøtte og eventuelt til CloudWatch Events.
# 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}'Aktivere AWS Config
For å ta i bruk AWS Config oppretter De en konfigurasjonsregistrering (der De angir hvilke ressurstyper som skal registreres) og en leveringskanal (der De angir en S3-bøtte og eventuelt et SNS-emne for endringsvarsler). De kan registrere alle støttede ressurstyper eller et bestemt utvalg. En konfigurasjonsaggregator lar Dem samle Config-data fra flere kontoer og regioner i én visning for samsvarsrapportering på organisasjonsnivå.
# 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-regler: administrerte regler
Config-regler definerer ønsket konfigurasjonstilstand for ressursene Deres. AWS Managed Config-regler er ferdigbygde regler fra AWS som dekker vanlige samsvarskontroller — for eksempel kontrollerer s3-bucket-public-read-prohibited at S3-bøtter ikke er offentlig lesbare, ec2-instance-no-public-ip kontrollerer at EC2-instanser ikke har offentlige IP-adresser, og iam-password-policy verifiserer at passordpolicyen for kontoen oppfyller kravene til kompleksitet. Det finnes over 300 administrerte regler.
# 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}'Egendefinerte Config-regler med Lambda
Når ingen AWS Managed-regel dekker kravet Deres, kan De skrive en egendefinert Config-regel ved hjelp av en AWS Lambda-funksjon. Lambda mottar konfigurasjonselementer som nyttelast i en hendelse og må returnere en avgjørelse på COMPLIANT eller NON_COMPLIANT. Egendefinerte regler kan håndheve organisasjonsspesifikke navnekonvensjoner, obligatoriske tagger, godkjente AMI-ID-er eller hvilken som helst logikk samsvarsteamet Deres krever. Regler kan evalueres ved endring (når ressursen endres), periodisk (hver 1., 3., 6., 12. eller 24. time) eller på begge måter.
# 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"]
}
}'Proaktive regler med CloudFormation Guard
Config støtter også proaktive regler ved hjelp av AWS CloudFormation Guard — et policy-som-kode-språk. Proaktive regler evaluerer ressurser før de opprettes via CloudFormation, AWS CDK eller Terraform Cloud. Dermed oppdages konfigurasjoner som ikke oppfyller kravene, ved distribusjonstidspunktet i stedet for etter at de finnes i produksjon. Dette flytter samsvarskontrollen til et tidligere stadium i infrastrukturen. Proaktiv evaluering er en nyere funksjon som SAA-C03-eksamen kan vise til i scenarier om styring med «shift-left».
Automatisert utbedring med SSM
Config-regler kan kombineres med automatiske utbedringshandlinger, slik at ressurser som ikke oppfyller kravene, korrigeres uten menneskelig inngripen. Utbedringshandlingene er AWS Systems Manager- (SSM-)automatiseringsdokumenter. Hvis en S3-bøtte for eksempel blir ikke-kompatibel fordi noen har aktivert offentlig tilgang, kan Config automatisk kjøre SSM-dokumentet AWS-DisableS3BucketPublicReadWrite for å aktivere bøttens blokkering av offentlig tilgang på nytt. Utbedring kan være automatisk (umiddelbar) eller manuell (utløst ved behov).
# 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
}
]'Konfigurasjonstidslinje og ressursrelasjoner
Ressurstidslinjen for AWS Config i konsollen viser alle konfigurasjonsendringer for en ressurs som en tidslinje – De kan bla tilbake til et hvilket som helst tidspunkt og se nøyaktig hvordan ressursen så ut, inkludert relasjonene til andre ressurser (for eksempel hvilke sikkerhetsgrupper som var tilknyttet, og hvilken IAM-rolle som var knyttet til ressursen). Når De klikker på en relasjon, navigerer De til tidslinjen for den relaterte ressursen. Dette gjør Config svært verdifull for analyse av rotårsaker: De kan finne nøyaktig hvilken endring som ødela produksjonsmiljøet.
# 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}'Aggregere Config på tvers av kontoer
En konfigurasjonsaggregator samler Config-data fra flere AWS-kontoer og regioner i én enkelt konto for sentralisert samsvarsrapportering. I en AWS-organisasjon kan De opprette en aggregator i administrasjonskontoen som automatisk inkluderer alle medlemskontoer uten at det kreves individuell autorisering. Aggregatorer støtter spørringer med Advanced Queries – et SQL-lignende grensesnitt for å finne alle ressurser som ikke oppfyller kravene, på tvers av organisasjonen på få sekunder.
# 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'Utbedring i stor skala
Når De har tusenvis av ressurser som ikke oppfyller kravene, kan Configs remediation exceptions brukes til å unnta bestemte ressurser i en angitt periode med en dokumentert begrunnelse – slik unngår De feilaktig utbedring av legitime spesialtilfeller. Ved opprydding i stor skala kan De utløse manuell utbedring i bulk fra konsollen eller bruke tilknytninger til Systems Manager State Manager for å ta i bruk ønskede konfigurasjoner på flåter av EC2-instanser etter en tidsplan. Da kombineres Configs deteksjon med SSМs håndheving.
# 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:00ZSammenligning av AWS Config og CloudTrail
Et vanlig spørsmål på SAA-C03-eksamen er å skille Config fra CloudTrail. CloudTrail svarer på: hvem gjorde hva, når og fra hvor (revisjonslogg for API-kall). AWS Config svarer på: hvordan ser ressursen ut nå, og hvordan har den sett ut over tid (historikk over konfigurasjonstilstand og samsvar). De utfyller hverandre – CloudTrail forteller at noen kalte ModifySecurityGroup kl. 15, mens Config viser sikkerhetsgruppens tilstand før og etter endringen. Bruk begge sammen for komplett sikkerhetsstyring.
Kort kontroll
Test forståelsen Deres av konseptene i AWS Solutions Architect (SAA-C03) fra denne leksjonen.
Oppsummering av leksjonen
I denne leksjonen har De lært at AWS Config registrerer konfigurasjonstilstanden over tid og evaluerer ressurser mot samsvarsregler, at administrerte og egendefinerte regler kontrollerer hundrevis av ressursegenskaper med automatisk evaluering eller evaluering ved behov, og at SSM Automation-utbedring automatisk kan korrigere ressurser som ikke oppfyller kravene, uten menneskelig inngripen. Neste tema er Conformance Packs og Organisation Trails for styring i virksomhetsskala.
Lær deg Cloud & IT Cert Prep med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 150
- Leksjoner
- 600
Ofte stilte spørsmål
Er leksjonen «AWS Config-regler og utbedring» gratis?
Ja – hele teksten i «AWS Config-regler og utbedring» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Cloud & IT Cert Prep-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva lærer jeg i «AWS Config-regler og utbedring»?
Distribuer administrerte og egendefinerte Config-regler for å oppdage ressurser som ikke oppfyller kravene, og bruk SSM Automation-dokumenter til automatisk utbedring Du øver på Cloud & IT Cert Prep med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Cloud & IT Cert Prep?
Ingen tidligere erfaring er nødvendig. Cloud & IT Cert Prep på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.
Hvor lang tid tar leksjonen «AWS Config-regler og utbedring»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Cloud & IT Cert Prep-leksjonen?
Ja. Alle Cloud & IT Cert Prep-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- CloudTrail-spor og hendelseshistorikk
- CloudTrail Insights og integritet for loggfiler
- AWS Config-regler og utbedring
- Samsvarspakker og organisasjonsspor