1. Giới thiệu và Tổng quan
DNS Armor, do Infoblox cung cấp, là một dịch vụ được quản lý toàn diện, cung cấp chế độ bảo mật ở lớp DNS cho các tải công việc trên Google Cloud. Công cụ phát hiện mối đe doạ nâng cao của DNS Armor được thiết kế để phát hiện hoạt động độc hại ở giai đoạn sớm nhất trong chuỗi tấn công (cụ thể là truy vấn DNS) mà không làm tăng độ phức tạp trong hoạt động hoặc hiệu suất.
Lớp học lập trình này cung cấp hướng dẫn từng bước để định cấu hình và kiểm thử dịch vụ DNS Armor. Bạn sẽ thiết lập cơ sở hạ tầng mạng cần thiết, tạo trình phát hiện mối đe doạ, kiểm thử dịch vụ bằng cách mô phỏng các mối đe doạ DNS và cuối cùng, trực quan hoá cũng như phân tích nhật ký mối đe doạ bằng trang tổng quan tuỳ chỉnh của Cloud Monitoring.
Sản phẩm bạn sẽ tạo ra
Trong lớp học lập trình này, bạn sẽ cung cấp các tài nguyên sau:
- Một mạng VPC (
network-a) có các mạng con và máy ảo được cung cấp ở các khu vựcus-east4vàus-central1. - Một trình phát hiện mối đe doạ nâng cao của DNS Armor được định cấu hình để kiểm tra các truy vấn DNS.
- Các chỉ số dựa trên nhật ký dựa trên nhật ký mối đe doạ DNS.
- Một trang tổng quan tuỳ chỉnh để trực quan hoá nhật ký mối đe doạ DNS.

Kiến thức bạn sẽ học được
- Cách cung cấp các tài nguyên mạng cần thiết, bao gồm cả VPC và máy ảo.
- Cách triển khai một trình phát hiện mối đe doạ nâng cao và loại trừ các mạng cụ thể.
- Cách xác thực cấu hình phát hiện mối đe doạ bằng tập lệnh mô phỏng mối đe doạ.
- Cách trực quan hoá nhật ký mối đe doạ DNS bằng chỉ số dựa trên nhật ký và trang tổng quan tuỳ chỉnh.
Bạn cần có
- Một dự án trên Google Cloud.
- Quyền truy cập vào công cụ dòng lệnh
gcloud.
2. Điều kiện tiên quyết
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Xác minh rằng dự án trên đám mây của Google Cloud của bạn đáp ứng các điều kiện ràng buộc cần thiết của Chính sách tổ chức.
- Xác nhận rằng tài khoản người dùng của bạn có các vai trò và quyền IAM bắt buộc.
- Bật các Cloud API của Google cần thiết cho lớp học lập trình này.
- Chỉ định vai trò
roles/logging.viewerIAM cho Tài khoản dịch vụ Compute Engine.
Các ràng buộc về chính sách của tổ chức
Để hoàn tất thành công lớp học lập trình này, vui lòng xác minh các ràng buộc về Chính sách của tổ chức được áp dụng cho dự án của bạn. Một số chính sách có thể cản trở việc cung cấp các tài nguyên cần thiết. Các ràng buộc sau đây có thể ảnh hưởng đến cấu hình của lớp học lập trình này:
constraints/gcp.resourceLocations: Hạn chế các khu vực mà bạn có thể tạo tài nguyên; lớp học lập trình yêu cầuus-east4vàus-central1.constraints/compute.vmExternalIpAccess: Ngăn việc tạo máy ảo có địa chỉ IP công khai. Điều này có thể gây trở ngại cho quá trình thiết lập nếu bạn không tuân theo cách sử dụng cờ--no-addresscủa lớp học lập trình.constraints/compute.shieldedVm: Buộc tạo các VM được bảo vệ mà các lệnh tạo VM của codelab không chỉ định, có thể gây ra lỗi.constraints/gcp.restrictServiceUsage: Giới hạn những Cloud APIs của Google Cloud có thể được bật và có thể chặn lớp học lập trình nếu không cho phépcompute.googleapis.com,networksecurity.googleapis.com,logging.googleapis.comvàmonitoring.googleapis.com.
Vai trò và quyền trong IAM
Để hoàn tất thành công lớp học lập trình này, vui lòng xác minh các vai trò và quyền IAM được cấp cho người dùng của bạn. Bạn cần có các quyền và vai trò IAM sau đây để hoàn tất Lớp học lập trình này.
- Quản trị viên sử dụng dịch vụ (
roles/serviceusage.serviceUsageAdmin): Để bật các Cloud API của Google cần thiết cho lớp học lập trình. - Quản trị viên mạng điện toán (
roles/compute.networkAdmin): Để tạo và quản lý mạng VPC, mạng con và NAT trên đám mây. - Quản trị viên bảo mật điện toán (
roles/compute.securityAdmin): Để định cấu hình các quy tắc tường lửa cho quyền truy cập SSH vào máy ảo. - Quản trị viên thực thể Compute Engine (v1) (
roles/compute.instanceAdmin.v1): Để tạo và quản lý các máy ảo cần thiết cho phòng thí nghiệm. - Người dùng đường hầm được bảo mật bằng IAP (
roles/iap.tunnelResourceAccessor): Để kết nối với các máy ảo bằng SSH thông qua Identity-Aware Proxy (IAP). - Quản trị viên bảo mật mạng (
roles/networksecurity.admin): Có thể tạo và quản lý trình phát hiện mối đe doạ DNS Armor. - Trình xem nhật ký (
roles/logging.viewer): Để xem và phân tích nhật ký mối đe doạ trong Logs Explorer.
Cloud APIs của Google
Vui lòng đảm bảo rằng các Cloud APIs bắt buộc của Google đã được bật trong dự án của bạn.
1. Bật các API cần thiết, chạy các lệnh gcloud sau đây trong Cloud Shell.
gcloud services enable compute.googleapis.com \
networksecurity.googleapis.com \
logging.googleapis.com \
monitoring.googleapis.com
2. Xác minh rằng các API đã được Bật, hãy chạy các lệnh gcloud sau trong Cloud Shell.
gcloud services list --enabled
Tài khoản dịch vụ Compute Engine
Tập lệnh mô phỏng mối đe doạ cần có quyền đọc và báo cáo về nhật ký mối đe doạ được tạo từ Cloud Logging. Vì tập lệnh sẽ được thực thi từ một VM sử dụng Tài khoản dịch vụ Compute Engine mặc định, nên bạn phải chỉ định vai trò roles/logging.viewer IAM cho tài khoản dịch vụ này.
1. Thiết lập các biến môi trường, chạy các lệnh sau trong Cloud Shell.
export PROJECT_ID=$(gcloud config get-value project)
export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projectNumber)')
2. Cấp vai trò người xem nhật ký cho SA Compute Engine. Chạy các lệnh gcloud sau đây trong Cloud Shell
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member="serviceAccount:${PROJECT_NUMBER}-compute@developer.gserviceaccount.com" \
--role="roles/logging.viewer"
3. Cung cấp tài nguyên mạng và tài nguyên điện toán
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Tạo mạng VPC
network-abằng các mạng con tuỳ chỉnh. - Định cấu hình Cloud Router và Cloud NAT để truyền dữ liệu ra khỏi Internet trong
network-a. - Tạo quy tắc tường lửa để cho phép truy cập SSH vào các máy ảo từ dải IP của IAP cho
network-a. - Cung cấp máy ảo Linux trong
network-amà không có địa chỉ IP công khai.
Tạo VPC và mạng con
1. Tạo network-a và các mạng con của mạng này trong các khu vực us-east4 và us-central1. Chạy các lệnh gcloud sau đây trong Cloud Shell.
gcloud compute networks create network-a --subnet-mode=custom
gcloud compute networks subnets create subnet-a-use4 \
--network=network-a \
--range=10.10.0.0/24 \
--region=us-east4
gcloud compute networks subnets create subnet-a-usc1 \
--network=network-a \
--range=10.10.1.0/24 \
--region=us-central1
Định cấu hình lưu lượng truy cập Internet đi ra
1. Tạo Cloud Router và Cloud NAT cho network-a để cho phép lưu lượng truy cập Internet cho các VM không có IP công khai.
gcloud compute routers create router-a-use4 \
--network=network-a \
--region=us-east4
gcloud compute routers nats create nat-a-use4 \
--router=router-a-use4 \
--auto-allocate-nat-external-ips \
--nat-all-subnet-ip-ranges \
--region=us-east4
gcloud compute routers create router-a-usc1 \
--network=network-a \
--region=us-central1
gcloud compute routers nats create nat-a-usc1 \
--router=router-a-usc1 \
--auto-allocate-nat-external-ips \
--nat-all-subnet-ip-ranges \
--region=us-central1
Định cấu hình quy tắc tường lửa
1. Tạo quy tắc tường lửa cho network-a để cho phép truy cập SSH từ dải IP của IAP. Chạy các lệnh gcloud sau đây trong Cloud Shell.
gcloud compute firewall-rules create allow-ssh-iap-a \
--network=network-a \
--allow=tcp:22 \
--source-ranges=35.235.240.0/20
Tạo máy ảo
1. Tạo máy ảo Linux trong network-a.
gcloud compute instances create vm-a-use4 \
--zone=us-east4-c \
--network=network-a \
--subnet=subnet-a-use4 \
--no-address \
--scopes=cloud-platform
gcloud compute instances create vm-a-usc1 \
--zone=us-central1-a \
--network=network-a \
--subnet=subnet-a-usc1 \
--no-address \
--scopes=cloud-platform
4. Tạo Trình phát hiện mối đe doạ DNS
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Tạo trình phát hiện mối đe doạ.
- Liệt kê trình phát hiện mối đe doạ.
Sau khi cung cấp VPC, mạng con và máy ảo, bước tiếp theo là tạo trình phát hiện mối đe doạ DNS.
1. Tạo trình phát hiện mối đe doạ bằng lệnh gcloud beta network-security dns-threat-detectors create.
gcloud beta network-security dns-threat-detectors create my-dns-threat-detector \
--location=global \
--provider=infoblox
2. Liệt kê trình phát hiện mối đe doạ để xác nhận việc tạo.
gcloud beta network-security dns-threat-detectors list --location=global
5. Tạo các chỉ số dựa trên nhật ký
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Tìm hiểu về mục nhập nhật ký.
- Tạo tệp
config.yaml. - Tạo chỉ số dựa trên nhật ký.
1. Tìm hiểu về mục nhập nhật ký. Bạn có thể xem bảng gồm tất cả các trường trong nhật ký DNS Armor trong tài liệu về nhật ký mối đe doạ. Phần này tập trung vào các trường cụ thể sẽ được dùng để tạo chỉ số dựa trên nhật ký.
Các trường sau đây sẽ được dùng để tạo chỉ số dựa trên nhật ký:
- vmInstanceId: Tên thực thể VM của Compute Engine, chỉ áp dụng cho các truy vấn do VM của Compute Engine khởi tạo.
- queryName: Tên truy vấn DNS.
- severity: Mức độ nghiêm trọng (Cao, Trung bình, Thấp hoặc Thông tin) liên quan đến mối đe doạ được phát hiện. Để biết thêm thông tin, hãy xem Định nghĩa cấp độ nghiêm trọng của Infoblox.
- location: Vùng Google Cloud nơi phản hồi được phân phát.
- threat: Tên của mối đe doạ bị phát hiện.
- threatId: Giá trị nhận dạng mối đe doạ riêng biệt.
2. Tạo tệp config.yaml. Trước tiên, hãy tạo một tệp config.yaml trống bằng lệnh touch.
touch config.yaml
3. Điền thông tin vào tệp config.yaml. Tệp này xác định cách tạo chỉ số dựa trên nhật ký cho nhật ký mối đe doạ của DNS Armor. Tệp này chỉ định những mục nhật ký cần lọc, nhãn cần trích xuất từ những mục đó và các thuộc tính của chính chỉ số.
Mở tệp config.yaml bằng trình chỉnh sửa văn bản mà bạn chọn rồi dán nội dung sau.
filter: |
resource.type="networksecurity.googleapis.com/DnsThreatDetector"
jsonPayload.dnsQuery.projectNumber="PROJECT_NUMBER"
labelExtractors:
InstanceId: EXTRACT(jsonPayload.dnsQuery.vmInstanceId)
QueryName: EXTRACT(jsonPayload.dnsQuery.queryName)
Severity: EXTRACT(jsonPayload.threatInfo.severity)
region: EXTRACT(jsonPayload.dnsQuery.location)
threat: EXTRACT(jsonPayload.threatInfo.threat)
threatId: EXTRACT(jsonPayload.threatInfo.threatId)
metricDescriptor:
labels:
- key: InstanceId
- key: threat
- key: Severity
- key: threatId
- key: region
- key: QueryName
metricKind: DELTA
unit: '1'
valueType: INT64
4. Cập nhật Số dự án. Sử dụng lệnh sed sau đây để thay thế trình giữ chỗ PROJECT_NUMBER bằng giá trị từ biến môi trường của bạn.
sed -i "s/PROJECT_NUMBER/$PROJECT_NUMBER/g" config.yaml
5. Tạo chỉ số dựa trên nhật ký. Cuối cùng, hãy chạy lệnh gcloud sau trong Cloud Shell để tạo chỉ số.
gcloud logging metrics create dns-armor-log-based-metric --config-from-file=config.yaml
6. Tạo Trang tổng quan tuỳ chỉnh
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Tạo tệp
dashboard.json. - Tạo trang tổng quan tuỳ chỉnh
1. Tạo tệp dashboard.json. Trước tiên, hãy tạo một tệp dashboard.json trống bằng lệnh touch.
touch dashboard.json
2. Điền thông tin vào tệp dashboard.json. Tệp dashboard.json định cấu hình trang tổng quan giám sát tuỳ chỉnh, xác định các tiện ích, thuộc tính hiển thị và cách các chỉ số dựa trên nhật ký được trực quan hoá, tổng hợp và lọc.
Mở tệp dashboard.json bằng trình chỉnh sửa văn bản mà bạn chọn rồi dán nội dung sau.
{
"displayName": "DNS Armor - Custom Dashboard",
"dashboardFilters": [],
"description": "",
"labels": {},
"mosaicLayout": {
"columns": 48,
"tiles": [
{
"height": 20,
"width": 24,
"widget": {
"title": "Threat Logs",
"id": "",
"xyChart": {
"chartOptions": {
"displayHorizontal": false,
"mode": "COLOR",
"showLegend": false
},
"dataSets": [
{
"breakdowns": [],
"dimensions": [],
"legendTemplate": "",
"measures": [],
"minAlignmentPeriod": "60s",
"plotType": "STACKED_BAR",
"targetAxis": "Y1",
"timeSeriesQuery": {
"outputFullDuration": false,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\""
},
"unitOverride": ""
}
}
],
"thresholds": [],
"yAxis": {
"label": "",
"scale": "LINEAR"
}
}
}
},
{
"xPos": 24,
"height": 20,
"width": 24,
"widget": {
"title": "Threat Logs per region",
"id": "",
"xyChart": {
"chartOptions": {
"displayHorizontal": false,
"mode": "COLOR",
"showLegend": false
},
"dataSets": [
{
"breakdowns": [],
"dimensions": [],
"legendTemplate": "",
"measures": [],
"minAlignmentPeriod": "60s",
"plotType": "STACKED_BAR",
"targetAxis": "Y1",
"timeSeriesQuery": {
"outputFullDuration": false,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"region\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\""
},
"unitOverride": ""
}
}
],
"thresholds": [],
"yAxis": {
"label": "",
"scale": "LINEAR"
}
}
}
},
{
"yPos": 20,
"height": 20,
"width": 24,
"widget": {
"title": "Group by Threat",
"id": "",
"pieChart": {
"chartType": "DONUT",
"dataSets": [
{
"breakdowns": [],
"dimensions": [],
"measures": [],
"minAlignmentPeriod": "60s",
"sliceNameTemplate": "",
"timeSeriesQuery": {
"outputFullDuration": true,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"threat\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\""
},
"unitOverride": ""
}
}
],
"showLabels": false,
"showTotal": false,
"sliceAggregatedThreshold": 0
}
}
},
{
"yPos": 20,
"xPos": 24,
"height": 20,
"width": 24,
"widget": {
"title": "Top List - ThreatID",
"timeSeriesTable": {
"columnSettings": [
{
"column": "threatId",
"visible": true
},
{
"column": "threat",
"visible": true
},
{
"column": "project_id",
"visible": false
},
{
"column": "value",
"visible": true
}
],
"dataSets": [
{
"minAlignmentPeriod": "60s",
"timeSeriesQuery": {
"outputFullDuration": true,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"threatId\"",
"metric.label.\"threat\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\"",
"pickTimeSeriesFilter": {
"direction": "TOP",
"numTimeSeries": 30,
"rankingMethod": "METHOD_MEAN"
}
}
}
}
],
"metricVisualization": "BAR"
}
}
},
{
"yPos": 40,
"height": 20,
"width": 24,
"widget": {
"title": "Group by Severity",
"id": "",
"pieChart": {
"chartType": "DONUT",
"dataSets": [
{
"breakdowns": [],
"dimensions": [],
"measures": [],
"minAlignmentPeriod": "60s",
"sliceNameTemplate": "",
"timeSeriesQuery": {
"outputFullDuration": true,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"Severity\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\""
},
"unitOverride": ""
}
}
],
"showLabels": false,
"showTotal": false,
"sliceAggregatedThreshold": 0
}
}
},
{
"yPos": 40,
"xPos": 24,
"height": 20,
"width": 24,
"widget": {
"title": "Top List - Source",
"id": "",
"timeSeriesTable": {
"columnSettings": [
{
"column": "InstanceId",
"visible": true
},
{
"column": "region",
"visible": true
},
{
"column": "project_id",
"visible": true
},
{
"column": "value",
"visible": true
}
],
"dataSets": [
{
"minAlignmentPeriod": "60s",
"tableTemplate": "",
"timeSeriesQuery": {
"outputFullDuration": true,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"InstanceId\"",
"metric.label.\"region\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\"",
"pickTimeSeriesFilter": {
"direction": "TOP",
"numTimeSeries": 30,
"rankingMethod": "METHOD_MEAN"
}
},
"unitOverride": ""
}
}
],
"displayColumnType": false,
"metricVisualization": "BAR"
}
}
},
{
"yPos": 60,
"height": 20,
"width": 48,
"widget": {
"title": "Group by Domains",
"id": "",
"xyChart": {
"chartOptions": {
"displayHorizontal": false,
"mode": "COLOR",
"showLegend": false
},
"dataSets": [
{
"breakdowns": [],
"dimensions": [],
"legendTemplate": "",
"measures": [],
"minAlignmentPeriod": "60s",
"plotType": "STACKED_BAR",
"targetAxis": "Y1",
"timeSeriesQuery": {
"outputFullDuration": false,
"timeSeriesFilter": {
"aggregation": {
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.\"QueryName\""
],
"perSeriesAligner": "ALIGN_SUM"
},
"filter": "metric.type=\"logging.googleapis.com/user/dns-armor-log-based-metric\" resource.type=\"networksecurity.googleapis.com/DnsThreatDetector\""
},
"unitOverride": ""
}
}
],
"thresholds": [],
"yAxis": {
"label": "",
"scale": "LINEAR"
}
}
}
}
]
}
}
2. Tạo trang tổng quan tuỳ chỉnh. Chạy các lệnh gcloud sau đây trong Cloud Shell.
gcloud monitoring dashboards create --config-from-file=dashboard.json
7. Tạo các truy vấn DNS độc hại được mô phỏng
Trong phần này, bạn sẽ thực hiện các nhiệm vụ sau:
- Kết nối SSH vào các máy ảo.
- Cài đặt Git trên các máy ảo.
- Sao chép kho lưu trữ trình mô phỏng phát hiện mối đe doạ Infoblox.
- Chạy tập lệnh và phân tích kết quả được tạo.
Xác thực chế độ thiết lập bằng cách tạo các truy vấn DNS độc hại được mô phỏng từ các VM.
1. SSH vào vm-a-use4. Chạy các lệnh gcloud sau đây trong Cloud Shell.
gcloud compute ssh vm-a-use4 --zone=us-east4-c
2. Cài đặt Git trên máy ảo.
sudo apt-get install git -y
3. Sao chép kho lưu trữ trình mô phỏng phát hiện mối đe doạ của Infoblox.
git clone https://github.com/infobloxopen/ib-threat-detection-simulator
4. Thay đổi thư mục thành thư mục của trình mô phỏng.
cd ib-threat-detection-simulator/threat_detection_simulator/
5. Chạy tập lệnh và phân tích kết quả được tạo.
Chạy tập lệnh.
chmod +x run.sh
Chạy tập lệnh.
./run.sh info basic
6. Đầu ra mẫu
Hình ảnh sau đây cho thấy một phần đầu ra của tập lệnh như trên một VM trong network-a. Đầu ra này trình bày chi tiết tỷ lệ phát hiện cho các loại mối đe doạ DNS mà kịch bản kiểm tra mô phỏng.

7. Quay lại Cloud Shell bằng cách thoát phiên SSH.
exit
8. Xem trang tổng quan tuỳ chỉnh
Xem Trang tổng quan
1. Nhập Bảng điều khiển vào trường tìm kiếm ở đầu bảng điều khiển Cloud, sau đó nhấp vào Bảng điều khiển trong phần kết quả hàng đầu.

2. Tìm kiếm DNS Armor - Custom Dashboard trong trường tìm kiếm, sau đó nhấp vào DNS Armor - Custom Dashboard để mở trang tổng quan.

3. Xem trang tổng quan.

Tiện ích trên Trang tổng quan
Phần này trình bày các tiện ích có trên trang tổng quan tuỳ chỉnh, cung cấp thông tin tổng quan về chức năng và dữ liệu mà các tiện ích đó thể hiện.
- Nhật ký về mối đe doạ: Biểu đồ thanh xếp chồng cho biết nhật ký về mối đe doạ được tạo cho tất cả các mạng được đưa vào trong một dự án trong một khung thời gian cụ thể.
- Nhật ký mối đe doạ theo khu vực: Biểu đồ thanh xếp chồng minh hoạ nhật ký mối đe doạ, được nhóm theo khu vực trong một khung thời gian xác định.
- Bộ lọc nhóm theo mối đe doạ: Biểu đồ hình tròn phân loại nhật ký mối đe doạ dựa trên loại mối đe doạ trong một khung thời gian nhất định.
- Danh sách hàng đầu – ThreatID: Danh sách giới thiệu 30 mã mối đe doạ hàng đầu trong một khung thời gian cụ thể.
- Nhóm theo mức độ nghiêm trọng: Biểu đồ hình tròn nhóm nhật ký mối đe doạ theo mức độ nghiêm trọng trong một khung thời gian xác định.
- Danh sách hàng đầu – Nguồn: Danh sách trình bày 30 mã nhận dạng thực thể hàng đầu (máy ảo nguồn) trong một khung thời gian cụ thể.
- Nhóm theo miền: Biểu đồ thanh xếp chồng nhóm nhật ký mối đe doạ theo tên miền có trong các truy vấn.
9. Dọn dẹp
Để tránh phát sinh các khoản phí trong tương lai, hãy xoá các tài nguyên đã tạo trong lớp học lập trình này. Hãy nhớ thoát khỏi trình bao của máy ảo và quay lại Cloud Shell khi chạy các lệnh dọn dẹp.
1. Xoá Trang tổng quan tuỳ chỉnh.
Vì mã nhận dạng trang tổng quan được tạo động khi tạo, nên trước tiên, bạn cần truy xuất tên tài nguyên bằng tên hiển thị của tài nguyên đó.
DASHBOARD_NAME=$(gcloud monitoring dashboards list --filter="displayName='DNS Armor - Custom Dashboard'" --format='value(name)')
gcloud monitoring dashboards delete $DASHBOARD_NAME --quiet
2. Xoá Chỉ số dựa trên nhật ký.
gcloud logging metrics delete dns-armor-log-based-metric --quiet
3. Xoá các VM.
gcloud compute instances delete vm-a-use4 --zone=us-east4-c --quiet
gcloud compute instances delete vm-a-usc1 --zone=us-central1-a --quiet
4. Xoá các quy tắc tường lửa.
gcloud compute firewall-rules delete allow-ssh-iap-a --quiet
5. Xoá các Cổng Cloud NAT.
gcloud compute routers nats delete nat-a-use4 --router=router-a-use4 --region=us-east4 --quiet
gcloud compute routers nats delete nat-a-usc1 --router=router-a-usc1 --region=us-central1 --quiet
6. Xoá Cloud Router.
gcloud compute routers delete router-a-use4 --region=us-east4 --quiet
gcloud compute routers delete router-a-usc1 --region=us-central1 --quiet
7. Xoá các mạng con.
gcloud compute networks subnets delete subnet-a-use4 --region=us-east4 --quiet
gcloud compute networks subnets delete subnet-a-usc1 --region=us-central1 --quiet
8. Xoá trình phát hiện mối đe doạ DNS.
gcloud beta network-security dns-threat-detectors delete my-dns-threat-detector --location=global --quiet
9. Xoá VPC.
gcloud compute networks delete network-a --quiet
10. Xin chúc mừng
Xin chúc mừng! Bạn đã định cấu hình, triển khai và trực quan hoá thành công nhật ký phát hiện mối đe doạ của DNS Armor . Bạn đã có kinh nghiệm thực tế trong việc bảo vệ môi trường Google Cloud của mình khỏi các mối đe doạ dựa trên DNS và xây dựng một giải pháp giám sát tuỳ chỉnh để nắm bắt thông tin chi tiết về bảo mật.
Trong lớp học lập trình này, bạn đã:
- Cung cấp một môi trường mạng có VPC, mạng con và máy ảo.
- Đã định cấu hình lưu lượng truy cập internet cho các máy ảo riêng tư bằng Cloud NAT.
- Triển khai một trình phát hiện mối đe doạ DNS Armor.
- Mô phỏng các mối đe doạ DNS và xác thực cấu hình phát hiện mối đe doạ.
- Tạo chỉ số tuỳ chỉnh dựa trên nhật ký từ nhật ký mối đe doạ DNS.
- Xây dựng một trang tổng quan tuỳ chỉnh của Cloud Monitoring để trực quan hoá và phân tích các mối đe doạ DNS.