AMD Pensando DSS 방화벽 로그 수집
파서 버전: 1.0
이 문서에서는 Bindplane을 사용하여 AMD Pensando DSS 방화벽 로그를 Google Security Operations로 수집하는 방법을 설명합니다.
AMD Pensando 분산 서비스 스위치(DSS) 방화벽은 Aruba CX 10000 시리즈 스위치 내 AMD Pensando DPU에서 실행되는 하드웨어 가속 스테이트풀(Stateful) 방화벽입니다. 라인 속도로 마이크로세분화 및 동서 트래픽 검사를 제공합니다. 방화벽은 중앙 집중식 정책 구성, 모니터링, syslog 내보내기 기능을 제공하는 AMD Pensando 정책 및 서비스 관리자 (PSM)를 통해 관리됩니다.
시작하기 전에
다음 기본 요건이 충족되었는지 확인합니다.
- Google SecOps 인스턴스입니다.
- Windows Server 2016 이상 또는
systemd가 설치된 Linux 호스트 - 프록시 뒤에서 실행하는 경우 Bindplane 에이전트 요구사항에 따라 방화벽 포트가 열려 있는지 확인합니다.
- AMD Pensando 정책 및 서비스 관리자 (PSM) 또는 Aruba CX 10000 스위치 관리 인터페이스에 대한 권한이 있는 액세스
- Bindplane 에이전트 호스트와 Aruba CX 10000 스위치 또는 PSM 간의 네트워크 연결
Google SecOps 수집 인증 파일 가져오기
- Google SecOps 콘솔에 로그인합니다.
- SIEM 설정 > 수집 에이전트로 이동합니다.
- 데이터 수집 인증 파일을 다운로드합니다. Bindplane이 설치될 시스템에 파일을 안전하게 저장합니다.
Google SecOps 고객 ID 가져오기
- Google SecOps 콘솔에 로그인합니다.
- SIEM 설정 > 프로필로 이동합니다.
- 조직 세부정보 섹션에서 고객 ID를 복사하여 저장합니다.
Bindplane 에이전트 설치
다음 안내에 따라 Windows 또는 Linux 운영체제에 Bindplane 에이전트를 설치합니다.
Windows 설치
- 명령 프롬프트 또는 PowerShell을 관리자로 엽니다.
다음 명령어를 실행합니다.
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux 설치
- 루트 또는 sudo 권한으로 터미널을 엽니다.
다음 명령어를 실행합니다.
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
추가 설치 리소스
추가 설치 옵션은 Bindplane 에이전트 설치 가이드를 참고하세요.
syslog를 수집하여 Google SecOps로 전송하도록 Bindplane 에이전트 구성
구성 파일에 액세스합니다.
config.yaml파일을 찾습니다. 일반적으로 Linux에서는/etc/bindplane-agent/디렉터리에 있고 Windows에서는 설치 디렉터리에 있습니다.- 텍스트 편집기 (예:
nano,vi, 메모장)를 사용하여 파일을 엽니다.
다음과 같이
config.yaml파일을 수정합니다.receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: '<CUSTOMER_ID>' endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'AMD_DSS_FIREWALL' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- 인프라에 필요한 대로 포트와 IP 주소를 바꿉니다.
<CUSTOMER_ID>를 실제 고객 ID로 바꿉니다./path/to/ingestion-authentication-file.json를 인증 파일이 저장된 파일 경로로 업데이트합니다.
변경사항을 적용하려면 Bindplane 에이전트를 다시 시작하세요.
Linux에서 Bindplane 에이전트를 다시 시작하려면 다음을 실행하세요.
다음 명령어를 실행합니다.
sudo systemctl restart observiq-otel-collector서비스가 실행 중인지 확인합니다.
sudo systemctl status observiq-otel-collector로그에서 오류를 확인합니다.
sudo journalctl -u observiq-otel-collector -f
Windows에서 Bindplane 에이전트를 다시 시작하려면 다음 단계를 따르세요.
다음 옵션 중 하나를 선택합니다.
- 관리자 권한으로 명령 프롬프트 또는 PowerShell:
net stop observiq-otel-collector && net start observiq-otel-collector- 서비스 콘솔:
Win+R키를 누르고services.msc를 입력한 다음 Enter 키를 누릅니다.- observIQ OpenTelemetry Collector를 찾습니다.
- 마우스 오른쪽 버튼을 클릭하고 다시 시작을 선택합니다.
서비스가 실행 중인지 확인합니다.
sc query observiq-otel-collector로그에서 오류를 확인합니다.
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
AMD Pensando DSS 방화벽에서 syslog 전달 구성
AMD Pensando DSS 방화벽은 Pensando Policy and Services Manager (PSM) 웹 인터페이스를 통해 또는 Aruba CX 10000 스위치의 AOS-CX CLI를 통해 syslog 전달을 구성하는 두 가지 방법을 지원합니다.
Pensando PSM을 통해 syslog 내보내기 구성
- AMD Pensando Policy and Services Manager (PSM) 웹 인터페이스에 로그인합니다.
- 모니터링 > 알림 및 이벤트로 이동합니다.
- 대상 탭을 선택합니다.
- 배송지 추가를 클릭합니다.
- 다음 구성 세부정보를 제공합니다.
- 대상 유형: Syslog를 선택합니다.
- 서버 주소: Bindplane 에이전트 호스트의 IP 주소를 입력합니다 (예:
192.168.1.100). - 포트: Bindplane 에이전트
config.yaml에 구성된 포트를 입력합니다 (예:514). - 프로토콜: Bindplane 에이전트 수신기 구성과 일치하도록 UDP를 선택합니다.
- 형식: BSD (RFC 5424)를 선택합니다.
- 저장을 클릭하여 syslog 대상을 만듭니다.
- 알림 정책 탭을 선택합니다.
- 알림 정책 추가를 클릭하여 전달할 이벤트와 알림을 정의합니다.
- 원하는 이벤트 카테고리와 심각도 수준을 선택합니다.
- 대상 섹션에서 만든 syslog 대상을 선택합니다.
저장을 클릭하여 알림 정책을 활성화합니다.
Aruba CX 10000에서 AOS-CX CLI를 통해 syslog 구성
- SSH 또는 콘솔을 통해 Aruba CX 10000 스위치에 연결합니다.
구성 모드로 진입합니다.
configure terminalUDP를 사용하여 원격 syslog 서버를 구성합니다 (
<BINDPLANE_IP>를 Bindplane 에이전트 IP 주소로 대체).logging <BINDPLANE_IP> udp 514 severity info또는 TCP의 경우:
logging <BINDPLANE_IP> tcp 1470 severity info또는 TLS의 경우:
logging <BINDPLANE_IP> tls 6514 severity infosyslog 기능을 설정합니다.
logging facility local0구성을 저장합니다.
write memory구성 모드를 종료합니다.
exit
AOS-CX 로깅 명령어에 대한 자세한 내용은 AOS-CX CLI 참조를 참고하세요.
UDM 매핑 테이블
| 로그 필드 | UDM 매핑 | 로직 |
|---|---|---|
action |
read_only_udm.metadata.product_event_type |
직접 매핑 |
action |
read_only_udm.security_result.action |
작업이 '거부'인 경우 '차단'으로 설정합니다. 작업이 '허용'인 경우 'ALLOW'로 설정합니다. |
column10 |
read_only_udm.network.session_id |
직접 매핑 |
column11 |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키는 'security_policy_id'로 하드코딩됩니다. |
column12 |
read_only_udm.security_result.rule_id |
직접 매핑 |
column13 |
read_only_udm.security_result.rule_name |
직접 매핑 |
column14 |
read_only_udm.network.sent_packets |
직접 매핑 |
column15 |
read_only_udm.network.sent_bytes |
직접 매핑 |
column16 |
read_only_udm.network.received_packets |
직접 매핑 |
column17 |
read_only_udm.network.received_bytes |
직접 매핑 |
column18 |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키가 'vlan'으로 하드코딩됩니다. |
column19 |
read_only_udm.principal.asset.software.vendor_name |
직접 매핑 |
column19 |
read_only_udm.principal.asset.software.name |
직접 매핑 |
column2 |
read_only_udm.metadata.product_event_type |
직접 매핑 |
column20 |
read_only_udm.principal.asset.software.version |
직접 매핑 |
column21 |
read_only_udm.principal.asset_id |
'asset_id:'와 column21의 값을 연결합니다. |
column22 |
read_only_udm.principal.asset.attribute.labels.value |
직접 매핑 키는 'device_name'으로 하드코딩됩니다. |
column23 |
read_only_udm.principal.asset.attribute.labels.value |
직접 매핑 키는 'unit_id'로 하드코딩됩니다. |
column24 |
read_only_udm.metadata.product_version |
직접 매핑 |
column25 |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키는 'policy_name'으로 하드코딩됩니다. |
column25 |
read_only_udm.security_result.rule_type |
직접 매핑 |
column4 |
read_only_udm.principal.resource.product_object_id |
직접 매핑 |
column5 |
read_only_udm.principal.ip |
직접 매핑 |
column6 |
read_only_udm.principal.port |
직접 매핑 |
column7 |
read_only_udm.target.ip |
직접 매핑 |
column8 |
read_only_udm.target.port |
직접 매핑 |
column9 |
read_only_udm.network.ip_protocol |
숫자 프로토콜 번호를 해당 이름에 매핑합니다 (예: 6을 TCP에, 17을 UDP에 매핑). |
dip |
read_only_udm.target.ip |
직접 매핑 |
dport |
read_only_udm.target.port |
직접 매핑 |
dvc |
read_only_udm.intermediary.hostname |
dvc가 IP 주소가 아닌 경우 호스트 이름에 매핑합니다. 그렇지 않으면 IP에 매핑합니다. |
iflowbytes |
read_only_udm.network.sent_bytes |
직접 매핑 |
iflowpkts |
read_only_udm.network.sent_packets |
직접 매핑 |
msg_id |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키는 'msg_id'로 하드코딩됩니다. |
policy_name |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키는 'policy_name'으로 하드코딩됩니다. |
policy_name |
read_only_udm.security_result.rule_type |
직접 매핑 |
proc_id |
read_only_udm.target.process.pid |
직접 매핑 |
proc_name |
read_only_udm.target.application |
직접 매핑 |
protocol_number_src |
read_only_udm.network.ip_protocol |
숫자 프로토콜 번호를 해당 이름에 매핑합니다 (예: 6을 TCP에, 17을 UDP에 매핑). |
rflowbytes |
read_only_udm.network.received_bytes |
직접 매핑 |
rflowpkts |
read_only_udm.network.received_packets |
직접 매핑 |
rule_id |
read_only_udm.security_result.rule_id |
직접 매핑 |
rule_name |
read_only_udm.security_result.rule_name |
직접 매핑 |
sd |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키가 'sd'로 하드코딩됩니다. |
security_policy_id |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키는 'security_policy_id'로 하드코딩됩니다. |
session_id |
read_only_udm.network.session_id |
직접 매핑 |
session_state |
read_only_udm.metadata.product_event_type |
직접 매핑 |
sip |
read_only_udm.principal.ip |
직접 매핑 |
software_version |
read_only_udm.principal.asset.software.version |
직접 매핑 |
sport |
read_only_udm.principal.port |
직접 매핑 |
ts |
read_only_udm.metadata.event_timestamp |
로그의 타임스탬프가 파싱되어 UDM 타임스탬프 형식으로 지정됩니다. |
vlan |
read_only_udm.additional.fields.value.string_value |
직접 매핑 키가 'vlan'으로 하드코딩됩니다. |
read_only_udm.metadata.event_type |
sip와 dip가 모두 있는 경우 'NETWORK_UNCATEGORIZED'로 설정합니다. sip만 있는 경우 'STATUS_UPDATE'로 설정합니다. 그 외의 경우에는 'GENERIC_EVENT'로 설정합니다. | |
read_only_udm.metadata.log_type |
'AMD_DSS_FIREWALL'로 하드코딩됩니다. | |
read_only_udm.metadata.product_name |
'AMD_DSS_FIREWALL'로 하드코딩됩니다. | |
read_only_udm.metadata.vendor_name |
'AMD_DSS_FIREWALL'로 하드코딩됩니다. | |
read_only_udm.principal.resource.resource_type |
'VPC_NETWORK'로 하드코딩됩니다. |
변경 로그
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.