Menentukan persyaratan keamanan VPC Anda - AWS Bimbingan Preskriptif

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

Menentukan persyaratan keamanan VPC Anda

Penting

Ini adalah praktik terbaik untuk merancang dan menguji arsitektur keamanan lalu lintas keluar VPC Anda di lingkungan pengujian. Menguji perubahan arsitektur dalam lingkungan pengembangan mengurangi risiko mendorong perilaku sistem yang tidak diinginkan secara langsung.

Sebelum membuat perubahan pada pola lalu lintas keluar jaringan Anda, penting untuk memahami pola lalu lintas yang dibutuhkan aplikasi Anda untuk beroperasi sebagaimana dimaksud. Informasi ini dapat membantu Anda mengidentifikasi pola lalu lintas mana yang diizinkan dan mana yang ditolak saat merancang ulang jaringan Anda.

Untuk menganalisis pola lalu lintas keluar VPC Anda yang ada, pertama-tama aktifkan VPC Flow Logs. Kemudian, gunakan lingkungan pengujian untuk menjalankan aplikasi Anda melalui berbagai skenario penggunaan dan menganalisis lalu lintas simulasi di log aliran.

VPC Flow Logs merekam lalu lintas IP masuk dan keluar VPC Anda. Amazon VPC kemudian mengirimkan log ke Amazon Simple Storage Service (Amazon S3) atau Amazon. CloudWatch Anda dapat melihat dan menganalisis log dengan menggunakan salah satu alat berikut:

  • (Untuk Amazon S3) Amazon Athena

  • (Untuk CloudWatch) Wawasan CloudWatch Log

Untuk informasi selengkapnya dan contoh kueri, lihat berikut ini:

Untuk detail tentang jenis informasi yang ditangkap oleh VPC Flow Logs, lihat Contoh catatan log aliran di Panduan Pengguna Amazon VPC.

Catatan

VPC Flow Logs tidak menangkap informasi lapisan aplikasi (lapisan 7), seperti nama host DNS. Jika persyaratan keamanan Anda memerlukan analisis data lapisan aplikasi, Anda dapat menerapkan AWS Network Firewalluntuk menangkap detail yang diperlukan. Untuk informasi selengkapnya, lihat bagian Membatasi lalu lintas keluar VPC menggunakan AWS Network Firewall dan nama host DNS dari panduan ini.

Praktik terbaik untuk menganalisis lalu lintas keluar VPC Anda saat menggunakan VPC Flow Logs

Saat menganalisis log aliran VPC Anda dengan menggunakan kueri Amazon Athena CloudWatch atau Logs Insights, pastikan Anda melakukan hal berikut:

  • Identifikasi dan analisis lalu lintas masuk dan keluar yang mengalir melalui antarmuka jaringan elastis yang melekat pada sumber daya yang digunakan aplikasi Anda.

  • Identifikasi dan analisis lalu lintas aplikasi yang mengalir melalui antarmuka jaringan yang dilampirkan ke gateway NAT.

  • Pastikan Anda menangkap semua lalu lintas keluar untuk antarmuka jaringan dengan menjadikan alamat sumber dalam kueri Anda sebagai alamat IP pribadi antarmuka jaringan.

  • Tulis pertanyaan Anda untuk fokus pada pola lalu lintas yang tidak terduga saja. (Misalnya, jika aplikasi Anda berkomunikasi dengan entitas pihak ketiga seperti titik akhir HTTPS API, Anda dapat membuat kueri untuk tidak menyertakan entitas tersebut.)

  • Selidiki validitas setiap port dan alamat IP tujuan. (Misalnya, port tujuan keluar 22 bisa normal untuk host bastion, atau host yang mengkloning repositori dari Git dengan menggunakan SSH.)

Catatan

Jika Anda bekerja dengan Amazon Athena untuk pertama kalinya, pastikan Anda mengonfigurasi lokasi hasil kueri. Untuk petunjuknya, lihat Menentukan lokasi hasil kueri menggunakan konsol Athena di Panduan Pengguna Amazon Athena.

Contoh kueri Amazon Athena

Contoh kueri Athena yang mengembalikan lalu lintas admin keluar dari antarmuka jaringan tertentu

Kueri Athena berikut mengembalikan 200 baris pertama lalu lintas admin keluar dari antarmuka jaringan dengan alamat IP 10.100.0.10:

SELECT * FROM "<vpc_flow_logs_table_name>" WHERE interface_id = 'eni-1234567890000000' AND srcaddr LIKE '10.100.0.10' AND dstport < 1024 LIMIT 200;

Contoh keluaran

#

1

versi

2

account_id

<account-id>

antarmuka_id

eni-123456789000000

srcaddr

10.32.0.10

dstaddr

11.22.33.44

srcport

36952

dstport

443

protokol

6

paket

25

byte

5445

mulai

1659310200

akhir

1659310225

aksi

MENERIMA

log_status

OK

tanggal

2022-07-16

Catatan

Output dalam pola ini diformat untuk tujuan presentasi dan mungkin tampak berbeda pada sistem Anda.

Contoh kueri Athena yang mengembalikan alamat IP eksternal yang menerima lalu lintas terbanyak dari VPC tertentu

Kueri Athena berikut mengembalikan alamat IP eksternal dan port yang menerima lalu lintas keluar paling banyak dari VPC dengan blok CIDR yang dimulai dengan '10.32':

SELECT dstport, dstaddr, count(*) AS count FROM "<vpc_flow_logs_table_name>" WHERE dstaddr not like '10.32%' AND interface_id = 'eni-1234567890000000' GROUP BY dstport, dstaddr ORDER BY count desc LIMIT 200;

Contoh keluaran

#

Dstport

Dstaddr

menghitung

1

443

52.x.x.x

1442

2

443

63.xx

1201

3

443

102.x.x.x

887

Contoh kueri Athena yang mengembalikan lalu lintas keluar yang ditolak dari VPC tertentu

Kueri Athena berikut mengembalikan lalu lintas keluar yang ditolak dari VPC dengan blok CIDR yang dimulai dengan '10.32':

SELECT *              FROM "<vpc_flow_logs_table_name>"  WHERE srcaddr like '10.32%' AND action LIKE 'REJECT'

Contoh keluaran

#

1

versi

2

account_id

<account-id>

antarmuka_id

eni-123456789000000

srcaddr

10.32.0.10

dstaddr

11.22.33.44

srcport

36952

dstport

443

protokol

6

paket

25

byte

5445

mulai

1659310200

akhir

1659310225

aksi

MENOLAK

log_status

OK

tanggal

2022-07-16

Catatan

Output dalam pola ini diformat untuk tujuan presentasi dan mungkin tampak berbeda pada sistem Anda.

Untuk informasi selengkapnya tentang cara menafsirkan hasil kueri Athena, lihat Catatan log aliran di Panduan Pengguna Amazon VPC.

CloudWatch Contoh kueri Log Insights

CloudWatch Contoh kueri Log Insights yang mengembalikan lalu lintas admin keluar dari antarmuka jaringan tertentu

Kueri CloudWatch Logs Insights berikut menampilkan 200 hasil lalu lintas admin keluar pertama dari antarmuka jaringan dengan alamat IP 10.100.0.10:

fields @timestamp, @message | filter interfaceId = 'eni-1234567890000000' | filter srcAddr = '10.100.0.10' | filter dstPort < 1024 | limit 200

Contoh keluaran

Bidang

Nilai

@ingestionTime

1659310250813

@log

<account-id>:/aws/vpc/flowlogs

@logStream

eni-123456789000000-semua

@message

2 <account-id>eni-123456789000000 10.100.0.10 11.22.33.44 36952 443 6 25 5445 1659310200 1659310225 TERIMA OK

@timestamp

1659310200000

accountId

<account-id>

tindakan

MENERIMA

byte

5445

DStaddr

11.22.33.44

DSTport

443

end

1659310225

InterfaceID

eni-123456789000000

LogStatus

OK

paket

25

protokol

6

SrcAddr

10.100.0.10

SRCport

36952

start

1659310200

versi

2

Contoh kueri Wawasan CloudWatch Log yang menampilkan alamat IP eksternal yang menerima lalu lintas terbanyak dari VPC tertentu

Kueri CloudWatch Logs Insights berikut menampilkan alamat IP eksternal dan port yang menerima lalu lintas keluar terbanyak dari VPC dengan blok CIDR yang dimulai dengan '10.32':

filter @logstream = 'eni-1234567890000000' | stats count(*) as count by dstAddr, dstPort | filter dstAddr not like '10.32' | order by count desc | limit 200

Contoh keluaran

#

DStaddr

DSTport

menghitung

1

52.x.x.x

443

439

2

51.79.xx

63.xx

25

Contoh kueri Wawasan CloudWatch Log yang mengembalikan lalu lintas keluar yang ditolak dari VPC tertentu

Kueri Wawasan CloudWatch Log berikut menampilkan lalu lintas keluar yang ditolak dari VPC dengan blok CIDR yang dimulai dengan '10.32':

filter @logstream = 'eni-0123456789000000' | fields @timestamp, @message | filter action='REJECT'

Contoh keluaran

Bidang

Nilai

@ingestionTime

1666991000899

@log

<account-id>:/aws/vpc/flowlogs

@logStream

eni-0123456789000000-semua

@message

2 <account-id>'eni-0123456789000000' 185.x.x.x 10.10.2.222 55116 11211 17 1 43 1666990939 1666990966 TOLAK OK

@timestamp

1666990939000

accountId

<account-id>

tindakan

MENOLAK

byte

43

DStaddr

10.10.2.222

DSTport

11211

end

1666990966

InterfaceID

'eni-0123456789000000'

LogStatus

OK

paket

1

protokol

17

SrcAddr

185.x.x.x

SRCport

55116

start

1666990939

versi

2