

• AWS Systems Manager CloudWatch Dasbor tidak akan lagi tersedia setelah 30 April 2026. Pelanggan dapat terus menggunakan CloudWatch konsol Amazon untuk melihat, membuat, dan mengelola dasbor Amazon CloudWatch mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat dokumentasi CloudWatch Dasbor [ Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Penggunaan Koki InSpec profil dengan Kepatuhan Manajer Sistem
<a name="integration-chef-inspec"></a>

AWS Systems Manager terintegrasi dengan [Chef InSpec](https://www.chef.io/products/chef-inspec). Chef InSpecadalah kerangka pengujian sumber terbuka yang memungkinkan Anda membuat profil yang dapat dibaca manusia untuk disimpan di GitHub atau Amazon Simple Storage Service (Amazon S3). Kemudian Anda dapat menggunakan Manajer Sistem untuk menjalankan pemindaian kepatuhan dan melihat node yang sesuai dan tidak sesuai. *Profil* adalah persyaratan keamanan, kepatuhan, atau kebijakan untuk lingkungan komputasi Anda. Misalnya, Anda dapat membuat profil yang melakukan pemeriksaan berikut saat Anda memindai node dengan Kepatuhan, alat di AWS Systems Manager:
+ Periksa apakah port tertentu terbuka atau tertutup.
+ Periksa apakah aplikasi tertentu sedang berjalan.
+ Periksa apakah paket tertentu telah terinstal.
+ Periksa kunci Windows Registry untuk properti tertentu.

Anda dapat membuat InSpec profil * hanya * untuk instans Amazon Elastic Compute Cloud (Amazon EC2) yang dikelola dengan System Manager. On-premises server atau mesin virtual (VM) tidak didukung. Chef InSpecProfil sampel berikut memeriksa apakah port 22 terbuka.

```
control 'Scan Port' do
impact 10.0
title 'Server: Configure the service port'
desc 'Always specify which port the SSH server should listen to.
Prevent unexpected settings.'
describe sshd_config do
its('Port') { should eq('22') }
end
end
```

InSpec mencakup kumpulan sumber daya yang membantu Anda menulis cek dan kontrol audit dengan cepat. InSpec menggunakan [ InSpec Domain-specific Language (DSL) ](https://docs.chef.io/inspec/7.0/reference/glossary/#dsl) untuk menulis kontrol ini di Ruby. Anda juga dapat menggunakan profil yang dibuat oleh komunitas InSpec pengguna yang besar. Misalnya, [ proyek ](https://github.com/dev-sec/chef-os-hardening) DevSec chef-os-menyer GitHub takan lusinan profil untuk membantu Anda mengamankan node Anda. Anda dapat membuat dan menyimpan profil di GitHub atau Amazon S3. 

## Cara kerjanya
<a name="integration-chef-inspec-how"></a>

Berikut adalah cara kerja proses menggunakan InSpec profil dengan Kepatuhan:

1. Identifikasi InSpec profil yang telah ditentukan sebelumnya yang ingin Anda gunakan, atau buat profil Anda sendiri. Anda dapat menggunakan profil yang telah [https://github.com/search?p=1&q=topic%3Ainspec+org%3Adev-sec&type=Repositories](https://github.com/search?p=1&q=topic%3Ainspec+org%3Adev-sec&type=Repositories) ditentukan GitHub sebelumnya untuk memulai. Untuk informasi tentang cara membuat InSpec profil Anda sendiri, lihat Chef InSpec Profil [ Koki](https://www.inspec.io/docs/reference/profiles/).

1. Simpan profil di GitHub repositori publik atau pribadi, atau dalam bucket S3.

1. Jalankan Kepatuhan dengan InSpec profil Anda dengan menggunakan dokumen Manajer Sistem (dokumen SSM)`AWS-RunInspecChecks`. Anda dapat memulai pemindaian Kepatuhan dengan menggunakanRun Command, untuk pemindaian sesuai permintaan, atau Anda dapat menjadwalkan pemindaian Kepatuhan reguler dengan menggunakanState Manager, alat di AWS Systems Manager.

1. Mengidentifikasi node yang tidak sesuai dengan menggunakan API Kepatuhan atau konsol Kepatuhan.

**catatan**  
Perhatikan informasi berikut.  
Chefmenggunakan klien pada node Anda untuk memproses profil. Anda tidak perlu menginstal klien. Ketika Systems Manager menjalankan dokumen SSM `AWS-RunInspecChecks`, sistem memeriksa apakah klien terinstal. Jika tidak, Manajer Sistem menginstal Chef klien selama pemindaian, dan kemudian menghapus instalasi klien setelah pemindaian selesai.
Menjalankan dokumen SSM`AWS-RunInspecChecks`, seperti yang dijelaskan dalam topik ini, menetapkan entri kepatuhan tipe `Custom:Inspec` untuk setiap node yang ditargetkan. Untuk menetapkan jenis kepatuhan ini, dokumen memanggil operasi [ PutComplianceItems ](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutComplianceItems.html) API.

## Menjalankan pemindaian InSpec kepatuhan
<a name="integration-chef-inspec-running"></a>

Bagian ini mencakup informasi tentang cara menjalankan pemindaian InSpec kepatuhan dengan menggunakan konsol Manajer Sistem dan AWS Command Line Interface (AWS CLI). Prosedur konsol menunjukkan cara mengkonfigurasi State Manager untuk menjalankan pemindaian. AWS CLI Prosedur ini menunjukkan cara mengkonfigurasi Run Command untuk menjalankan pemindaian.

### Menjalankan pemindaian InSpec kepatuhan dengan State Manager (konsol)
<a name="integration-chef-inspec-running-console"></a>

**Untuk menjalankan pemindaian InSpec kepatuhan dengan State Manager dengan menggunakan AWS Systems Manager konsol**

1. Buka AWS Systems Manager konsol di [ https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Di panel navigasi, pilih **State Manager**.

1. Pilih **Buat asosiasi**.

1. Di bagian **Berikan detail asosiasi**, masukkan nama.

1. Di daftar **Dokumen**, pilih **`AWS-RunInspecChecks`**.

1. Di daftar **Versi dokumen**, pilih **Terbaru pada waktu aktif**.

1. Di ** bagian ** Parameter, dalam ** daftar ** Jenis Sumber, pilih salah satu ** GitHub ** atau ** S3**.

   Jika Anda memilih ** GitHub**, masukkan jalur ke InSpec profil baik di GitHub repositori publik atau pribadi di ** bidang Info ** Sumber. Berikut adalah contoh jalur ke profil publik yang disediakan oleh tim Manajer Sistem dari lokasi berikut: [ https://github.com/awslabs/amazon-ssm/tree/master/Compliance/InSpec/PortCheck](https://github.com/awslabs/amazon-ssm/tree/master/Compliance/InSpec/PortCheck).

   ```
   {"owner":"awslabs","repository":"amazon-ssm","path":"Compliance/InSpec/PortCheck","getOptions":"branch:master"}
   ```

   Jika Anda memilih ** S3**, masukkan URL yang valid ke InSpec profil di bucket S3 di ** bidang Info ** Sumber. 

   Untuk informasi selengkapnya tentang cara System Manager terintegrasi dengan GitHub dan Amazon S3, lihat[Menjalankan skrip dari GitHub](integration-remote-scripts.md). 

1. Di ** bagian ** Target, pilih node terkelola tempat Anda ingin menjalankan operasi ini dengan menentukan tag, memilih instance atau perangkat tepi secara manual, atau menentukan grup sumber daya.
**Tip**  
Jika node terkelola yang Anda harapkan tidak terdaftar, lihat tips pem [Memecahkan masalah ketersediaan node terkelola](fleet-manager-troubleshooting-managed-nodes.md) ecahan masalah.

1. Di bagian **Tentukan jadwal**, gunakan pilihan pembangun jadwal untuk membuat jadwal yang menentukan kapan Anda menginginkan pemindaian kepatuhan dijalankan.

1. Untuk **Pengendalian rate**:
   + Untuk **Konkurensi**, tentukan jumlah atau persentase dari simpul terkelola untuk menjalankan perintah pada saat yang sama.
**catatan**  
Jika Anda memilih target dengan menentukan tag yang diterapkan ke node terkelola atau dengan menentukan grup AWS sumber daya, dan Anda tidak yakin berapa banyak node terkelola yang ditargetkan, batasi jumlah target yang dapat menjalankan dokumen secara bersamaan dengan menentukan persentase.
   + Untuk **Ambang kesalahan**, tentukan kapan harus berhenti menjalankan perintah pada simpul terkelola lain setelah gagal pada jumlah atau persentase simpul. Misalnya, jika Anda menentukan tiga kesalahan, Systems Manager berhenti mengirim perintah ketika kesalahan keempat diterima. Node terkelola yang masih memproses perintah mungkin juga mengirim kesalahan.

1. (Opsional) Untuk **Opsi output**, untuk menyimpan output perintah ke file, pilih kotak **Tuliskan output perintah ke bucket S3**. Masukkan nama bucket dan prefiks (folder) di kotak.
**catatan**  
Izin S3 yang memberikan kemampuan untuk menulis data ke bucket S3 adalah izin profil instans (untuk instans EC2) atau peran layanan IAM (mesin yang diaktifkan hibrida) yang ditetapkan ke instance, bukan milik pengguna IAM yang melakukan tugas ini. Untuk informasi selengkapnya, lihat [ Mengonfigurasi izin instans yang diperlukan untuk Manajer Sistem ](setup-instance-permissions.md) atau [ Membuat peran layanan IAM untuk lingkungan ](hybrid-multicloud-service-role.md) hibrida. Selain itu, jika bucket S3 yang ditentukan berada di tempat yang berbeda Akun AWS, pastikan bahwa profil instance atau peran layanan IAM yang terkait dengan node terkelola memiliki izin yang diperlukan untuk menulis ke bucket tersebut.

1. Pilih **Buat Asosiasi**. Sistem membuat asosiasi dan secara otomatis menjalankan pemindaian Kepatuhan.

1. Tunggu beberapa menit sampai pemindaian selesai, lalu pilih **Kepatuhan** di panel navigasi.

1. Di Inst ** ans terkelola ** yang sesuai, cari node tempat ** kolom ** Jenis Kepatuhan berada ** Custom:Inspec**.

1. Pilih ID node untuk melihat detail status yang tidak sesuai.

### Menjalankan pemindaian InSpec kepatuhan dengan Run Command (AWS CLI)
<a name="integration-chef-inspec-running-cli"></a>

1. Instal dan konfigurasikan AWS Command Line Interface (AWS CLI), jika Anda belum melakukannya.

   Untuk informasi, lihat [ Menginstal atau memperbarui versi terbaru dari AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Jalankan salah satu perintah berikut untuk menjalankan InSpec profil dari salah satu GitHub atau Amazon S3.

   Perintah membawa parameter berikut:
   + **Jenis sumber**: atau Amazon S3 GitHub
   + **SourceInfo**: URL ke folder InSpec profil baik di dalam GitHub atau bucket S3. Folder harus berisi InSpec file dasar (\*.yml) dan semua kontrol terkait (\*.rb).

   **GitHub**

   ```
   aws ssm send-command --document-name "AWS-RunInspecChecks" --targets '[{"Key":"tag:{{tag_name}}","Values":["{{tag_value}}"]}]' --parameters '{"sourceType":["GitHub"],"sourceInfo":["{\"owner\":\"{{owner_name}}\", \"repository\":\"{{repository_name}}\", \"path\": \"{{Inspec.yml_file}}"}"]}'
   ```

   Inilah contohnya.

   ```
   aws ssm send-command --document-name "AWS-RunInspecChecks" --targets '[{"Key":"tag:testEnvironment","Values":["webServers"]}]' --parameters '{"sourceType":["GitHub"],"getOptions":"branch:master","sourceInfo":["{\"owner\":\"awslabs\", \"repository\":\"amazon-ssm\", \"path\": \"Compliance/InSpec/PortCheck\"}"]}'
   ```

   **Amazon S3**

   ```
   aws ssm send-command --document-name "AWS-RunInspecChecks" --targets '[{"Key":"tag:{{tag_name}}","Values":["{{tag_value}}"]}]' --parameters'{"sourceType":["S3"],"sourceInfo":["{\"path\":\"https://s3.{{aws-api-domain}}/{{amzn-s3-demo-bucket}}/{{Inspec.yml_file}}\"}"]}'
   ```

   Inilah contohnya.

   ```
   aws ssm send-command --document-name "AWS-RunInspecChecks" --targets '[{"Key":"tag:testEnvironment","Values":["webServers"]}]' --parameters'{"sourceType":["S3"],"sourceInfo":["{\"path\":\"https://s3.{{aws-api-domain}}/amzn-s3-demo-bucket/InSpec/PortCheck.yml\"}"]}' 
   ```

1. Jalankan perintah berikut untuk melihat ringkasan pemindaian Kepatuhan.

   ```
   aws ssm list-resource-compliance-summaries --filters Key=ComplianceType,Values=Custom:Inspec
   ```

1. Jalankan perintah berikut untuk melihat detail node yang tidak sesuai.

   ```
   aws ssm list-compliance-items --resource-ids {{node_ID}} --resource-type ManagedInstance --filters Key=DocumentName,Values=AWS-RunInspecChecks
   ```