VMware ESXi 로그 수집

다음에서 지원:

개요

이 파서는 VMware ESXi syslog 및 JSON 형식 로그에서 필드를 추출합니다. 다양한 ESXi 로그 형식을 공통 구조로 표준화한 후 추출된 값을 기반으로 UDM 필드를 채웁니다. 여기에는 포함 파일을 사용하여 crond, named, sshd와 같은 다양한 ESXi 서비스의 특정 케이스를 처리하는 것이 포함됩니다.

시작하기 전에

  • Google SecOps 인스턴스가 있는지 확인합니다.
  • VMWare ESX에 대한 권한이 있는지 확인합니다.
  • Windows 2012 SP2 이상 또는 systemd가 있는 Linux 호스트가 있는지 확인합니다.
  • 프록시 뒤에서 실행하는 경우 방화벽 포트가 열려 있는지 확인합니다.

Google SecOps 처리 인증 파일 가져오기

  1. Google SecOps 콘솔에 로그인합니다.
  2. SIEM 설정 > 수집 에이전트로 이동합니다.
  3. 처리 인증 파일을 다운로드합니다.

Google SecOps 고객 ID 가져오기

  1. Google SecOps 콘솔에 로그인합니다.
  2. SIEM 설정 > 프로필로 이동합니다.
  3. 조직 세부정보 섹션에서 고객 ID를 복사하여 저장합니다.

BindPlane 에이전트 설치

  1. Windows 설치의 경우 msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet 스크립트를 실행합니다.
  2. Linux 설치의 경우 sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh 스크립트를 실행합니다.
  3. 추가 설치 옵션은 이 설치 가이드에서 확인할 수 있습니다.

Syslog를 수집하고 Google SecOps로 전송하도록 BindPlane 에이전트 구성

  1. BindPlane이 설치된 머신에 액세스합니다.
  2. 다음과 같이 config.yaml 파일을 수정합니다.

    receivers:
      tcplog:
        # Replace the below port <54525> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: 
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 다음 명령어를 사용하여 BindPlane 에이전트를 다시 시작하여 변경사항을 적용합니다. sudo systemctl bindplane restart

syslog ESXi 방화벽 규칙 허용

  1. 네트워킹 > 방화벽 규칙으로 이동합니다.
  2. 이름 열에서 syslog를 찾습니다.
  3. 설정 수정을 클릭합니다.
  4. BindPlane에서 구성한 tcp 또는 udp 포트를 업데이트합니다.
  5. 저장을 클릭합니다.
  6. syslog 행을 선택한 상태로 둡니다.
  7. 작업 > 사용 설정을 선택합니다.

vSphere Client를 사용하여 VMware ESXi에서 Syslog 내보내기

  1. vSphere Client를 사용하여 ESXi 호스트에 로그인합니다.
  2. 관리 > 시스템 > 고급 설정으로 이동합니다.
  3. 목록에서 Syslog.global.logHost 키를 찾습니다.
  4. 키를 선택하고 옵션 수정을 클릭합니다.
  5. <protocol>://<destination_IP>:<port>를 입력합니다.
    • <protocol>tcp로 바꿉니다 (UDP를 사용하도록 BindPlane을 구성한 경우 udp를 입력하세요).
    • <destination_IP>를 BindPlane 에이전트의 IP 주소로 바꿉니다.
    • <port>를 이전에 BindPlane에서 설정한 포트로 바꿉니다.
  6. 저장을 클릭합니다.

선택사항: SSH를 사용하여 VMware ESXi에서 Syslog 내보내기

  1. SSH를 사용하여 ESXi 호스트에 연결합니다.
  2. esxcli system syslog config set --loghost=<protocol>://<destination_IP>:<port> 명령어를 사용합니다.
    • <protocol>tcp로 바꿉니다 (UDP를 사용하도록 BindPlane을 구성한 경우 udp를 입력하세요).
    • <destination_IP>를 BindPlane 에이전트의 IP 주소로 바꿉니다.
    • <port>를 이전에 BindPlane에서 설정한 포트로 바꿉니다.
  3. /etc/init.d/syslog restart 명령어를 입력하여 syslog 서비스를 다시 시작합니다.

UDM 매핑 표

로그 필드 UDM 매핑 논리
@fields.alias event.idm.read_only_udm.principal.cloud.project.alias JSON 로그의 @fields.alias 필드에서 직접 매핑됩니다.
@fields.company_name event.idm.read_only_udm.principal.user.company_name JSON 로그의 @fields.company_name 필드에서 직접 매핑됩니다.
@fields.facility event.idm.read_only_udm.principal.resource.type JSON 로그의 @fields.facility 필드에서 직접 매핑됩니다.
@fields.host event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname JSON 로그의 @fields.host 필드에서 직접 매핑됩니다.
@fields.privatecloud_id event.idm.read_only_udm.principal.cloud.project.id JSON 로그의 @fields.privatecloud_id 필드에서 직접 매핑됩니다.
@fields.privatecloud_name event.idm.read_only_udm.principal.cloud.project.name JSON 로그의 @fields.privatecloud_name 필드에서 직접 매핑됩니다.
@fields.procid event.idm.read_only_udm.principal.process.pid JSON 로그의 @fields.procid 필드에서 직접 매핑됩니다.
@fields.region_id event.idm.read_only_udm.principal.location.country_or_region JSON 로그의 @fields.region_id 필드에서 직접 매핑됩니다.
@fields.severity event.idm.read_only_udm.security_result.severity JSON 로그의 @fields.severity 필드에서 매핑됩니다. 값이 '정보' 또는 유사한 경우 'INFORMATIONAL'(정보)에 매핑됩니다.
@timestamp event.idm.read_only_udm.metadata.event_timestamp date 필터를 사용하여 로그의 @timestamp 필드에서 파싱되고 타임스탬프 객체로 변환됩니다.
adapter event.idm.read_only_udm.target.resource.name 원시 로그의 adapter 필드에서 직접 매핑됩니다.
action event.idm.read_only_udm.security_result.action 원시 로그의 action 필드에서 직접 매핑됩니다. '허용' 및 '차단'과 같은 값이 사용됩니다.
action event.idm.read_only_udm.security_result.action_details 원시 로그의 action 필드에서 직접 매핑됩니다. '리디렉션'과 같은 값이 사용됩니다.
administrative_domain event.idm.read_only_udm.principal.administrative_domain 원시 로그의 administrative_domain 필드에서 직접 매핑됩니다.
agent.hostname event.idm.read_only_udm.intermediary.hostname JSON 로그의 agent.hostname 필드에서 직접 매핑됩니다.
agent.id event.idm.read_only_udm.intermediary.asset.id JSON 로그의 agent.id 필드에서 직접 매핑됩니다.
agent.name event.idm.read_only_udm.intermediary.asset.name JSON 로그의 agent.name 필드에서 직접 매핑됩니다.
agent.type event.idm.read_only_udm.intermediary.asset.type JSON 로그의 agent.type 필드에서 직접 매핑됩니다.
agent.version event.idm.read_only_udm.intermediary.asset.version JSON 로그의 agent.version 필드에서 직접 매핑됩니다.
app_name event.idm.read_only_udm.principal.application 원시 로그의 app_name 필드에서 직접 매핑됩니다.
app_protocol event.idm.read_only_udm.network.application_protocol 원시 로그의 app_protocol 필드에서 직접 매핑됩니다. 값이 'http'와 일치하면(대소문자 구분 안 함) 'HTTP'에 매핑됩니다.
application event.idm.read_only_udm.principal.application JSON 로그의 program 필드에서 직접 매핑됩니다.
cmd event.idm.read_only_udm.target.process.command_line 원시 로그의 cmd 필드에서 직접 매핑됩니다.
collection_time event.idm.read_only_udm.metadata.event_timestamp collection_time 필드의 나노초가 collection_time 필드의 초에 추가되어 event_timestamp가 생성됩니다.
data event.idm.read_only_udm.metadata.description 원시 로그 메시지가 파싱되고 관련 부분이 추출되어 설명 필드가 채워집니다.
descrip event.idm.read_only_udm.metadata.description 원시 로그의 descrip 필드에서 직접 매핑됩니다.
dns.answers.data event.idm.read_only_udm.network.dns.answers.data JSON 로그의 dns.answers.data 필드에서 직접 매핑됩니다.
dns.answers.ttl event.idm.read_only_udm.network.dns.answers.ttl JSON 로그의 dns.answers.ttl 필드에서 직접 매핑됩니다.
dns.answers.type event.idm.read_only_udm.network.dns.answers.type JSON 로그의 dns.answers.type 필드에서 직접 매핑됩니다.
dns.questions.name event.idm.read_only_udm.network.dns.questions.name JSON 로그의 dns.questions.name 필드에서 직접 매핑됩니다.
dns.questions.type event.idm.read_only_udm.network.dns.questions.type JSON 로그의 dns.questions.type 필드에서 직접 매핑됩니다.
dns.response event.idm.read_only_udm.network.dns.response JSON 로그의 dns.response 필드에서 직접 매핑됩니다.
ecs.version event.idm.read_only_udm.metadata.product_version JSON 로그의 ecs.version 필드에서 직접 매핑됩니다.
event_message event.idm.read_only_udm.metadata.description JSON 로그의 event_message 필드에서 직접 매핑됩니다.
event_metadata event.idm.read_only_udm.principal.process.product_specific_process_id event_metadata 필드가 파싱되어 opID 값이 추출된 후 'opID:'가 접두사로 추가되고 UDM에 매핑됩니다.
event_type event.idm.read_only_udm.metadata.event_type JSON 로그의 event_type 필드에서 직접 매핑됩니다.
filepath event.idm.read_only_udm.target.file.full_path 원시 로그의 filepath 필드에서 직접 매핑됩니다.
fields.company_name event.idm.read_only_udm.principal.user.company_name JSON 로그의 fields.company_name 필드에서 직접 매핑됩니다.
fields.facility event.idm.read_only_udm.principal.resource.type JSON 로그의 fields.facility 필드에서 직접 매핑됩니다.
fields.host event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname JSON 로그의 fields.host 필드에서 직접 매핑됩니다.
fields.privatecloud_id event.idm.read_only_udm.principal.cloud.project.id JSON 로그의 fields.privatecloud_id 필드에서 직접 매핑됩니다.
fields.privatecloud_name event.idm.read_only_udm.principal.cloud.project.name JSON 로그의 fields.privatecloud_name 필드에서 직접 매핑됩니다.
fields.procid event.idm.read_only_udm.principal.process.pid JSON 로그의 fields.procid 필드에서 직접 매핑됩니다.
fields.region_id event.idm.read_only_udm.principal.location.country_or_region JSON 로그의 fields.region_id 필드에서 직접 매핑됩니다.
fields.severity event.idm.read_only_udm.security_result.severity JSON 로그의 fields.severity 필드에서 매핑됩니다. 값이 '정보' 또는 유사한 경우 'INFORMATIONAL'(정보)에 매핑됩니다.
host.architecture event.idm.read_only_udm.principal.asset.architecture JSON 로그의 host.architecture 필드에서 직접 매핑됩니다.
host.containerized event.idm.read_only_udm.principal.asset.containerized JSON 로그의 host.containerized 필드에서 직접 매핑됩니다.
host.hostname event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname JSON 로그의 host.hostname 필드에서 직접 매핑됩니다.
host.id event.idm.read_only_udm.principal.asset.id JSON 로그의 host.id 필드에서 직접 매핑됩니다.
host.ip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip JSON 로그의 host.ip 필드에서 직접 매핑됩니다.
host.mac event.idm.read_only_udm.principal.mac, event.idm.read_only_udm.principal.asset.mac JSON 로그의 host.mac 필드에서 직접 매핑됩니다.
host.name event.idm.read_only_udm.principal.asset.name JSON 로그의 host.name 필드에서 직접 매핑됩니다.
host.os.codename event.idm.read_only_udm.principal.asset.os.codename JSON 로그의 host.os.codename 필드에서 직접 매핑됩니다.
host.os.family event.idm.read_only_udm.principal.asset.os.family JSON 로그의 host.os.family 필드에서 직접 매핑됩니다.
host.os.kernel event.idm.read_only_udm.principal.asset.os.kernel JSON 로그의 host.os.kernel 필드에서 직접 매핑됩니다.
host.os.name event.idm.read_only_udm.principal.asset.os.name JSON 로그의 host.os.name 필드에서 직접 매핑됩니다.
host.os.platform event.idm.read_only_udm.principal.asset.os.platform JSON 로그의 host.os.platform 필드에서 직접 매핑됩니다.
host.os.version event.idm.read_only_udm.principal.asset.os.version JSON 로그의 host.os.version 필드에서 직접 매핑됩니다.
iporhost event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname 원시 로그의 iporhost 필드에서 직접 매핑됩니다.
iporhost event.idm.read_only_udm.principal.ip IP 주소인 경우 원시 로그의 iporhost 필드에서 직접 매핑됩니다.
iporhost1 event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname 원시 로그의 iporhost1 필드에서 직접 매핑됩니다.
kv_data1 event.idm.read_only_udm.principal.process.product_specific_process_id kv_data1 필드가 파싱되어 opID 또는 sub 값이 추출된 후 각각 'opID:' 또는 'sub:'이 접두사로 추가되고 UDM에 매핑됩니다.
kv_msg event.idm.read_only_udm.additional.fields kv_msg 필드는 키-값 쌍으로 파싱되어 UDM의 additional_fields 배열에 추가됩니다.
kv_msg1 event.idm.read_only_udm.additional.fields kv_msg1 필드는 키-값 쌍으로 파싱되어 UDM의 additional_fields 배열에 추가됩니다.
lbdn event.idm.read_only_udm.target.hostname 원시 로그의 lbdn 필드에서 직접 매핑됩니다.
log.source.address event.idm.read_only_udm.observer.hostname JSON 로그의 log.source.address 필드에서 직접 매핑되며 호스트 이름 부분만 사용합니다.
log_event.original event.idm.read_only_udm.metadata.description JSON 로그의 event.original 필드에서 직접 매핑됩니다.
log_level event.idm.read_only_udm.security_result.severity_details JSON 로그의 log_level 필드에서 직접 매핑됩니다.
logstash.collect.host event.idm.read_only_udm.observer.hostname JSON 로그의 logstash.collect.host 필드에서 직접 매핑됩니다.
logstash.collect.timestamp event.idm.read_only_udm.metadata.ingested_timestamp date 필터를 사용하여 로그의 logstash.collect.timestamp 필드에서 파싱되고 타임스탬프 객체로 변환됩니다.
logstash.ingest.host event.idm.read_only_udm.intermediary.hostname JSON 로그의 logstash.ingest.host 필드에서 직접 매핑됩니다.
logstash.ingest.timestamp event.idm.read_only_udm.metadata.ingested_timestamp date 필터를 사용하여 로그의 logstash.ingest.timestamp 필드에서 파싱되고 타임스탬프 객체로 변환됩니다.
logstash.process.host event.idm.read_only_udm.intermediary.hostname JSON 로그의 logstash.process.host 필드에서 직접 매핑됩니다.
logstash.process.timestamp event.idm.read_only_udm.metadata.ingested_timestamp date 필터를 사용하여 로그의 logstash.process.timestamp 필드에서 파싱되고 타임스탬프 객체로 변환됩니다.
log_type event.idm.read_only_udm.metadata.log_type 원시 로그의 log_type 필드에서 직접 매핑됩니다.
message event.idm.read_only_udm.metadata.description JSON 로그의 message 필드에서 직접 매핑됩니다.
message_to_process event.idm.read_only_udm.metadata.description 원시 로그의 message_to_process 필드에서 직접 매핑됩니다.
metadata.event_type event.idm.read_only_udm.metadata.event_type 처음에는 'GENERIC_EVENT'로 설정된 후 파싱된 service 또는 기타 로그 콘텐츠를 기반으로 덮어쓸 수 있습니다. PROCESS_LAUNCH, NETWORK_CONNECTION, USER_LOGIN 등의 값일 수 있습니다.
metadata.product_event_type event.idm.read_only_udm.metadata.product_event_type 원시 로그의 process_id 또는 prod_event_type 필드에서 직접 매핑됩니다.
metadata.product_log_id event.idm.read_only_udm.metadata.product_log_id 원시 로그의 event_id 필드에서 직접 매핑됩니다.
metadata.product_name event.idm.read_only_udm.metadata.product_name 'ESX'로 설정합니다.
metadata.product_version event.idm.read_only_udm.metadata.product_version JSON 로그의 version 필드에서 직접 매핑됩니다.
metadata.vendor_name event.idm.read_only_udm.metadata.vendor_name 'VMWARE'로 설정합니다.
msg event.idm.read_only_udm.metadata.description 원시 로그의 msg 필드에서 직접 매핑됩니다.
network.application_protocol event.idm.read_only_udm.network.application_protocol service가 '이름이 지정된' 경우 'DNS'로, 포트가 443인 경우 'HTTPS'로, app_protocol가 'http'와 일치하는 경우 'HTTP'로 설정합니다.
network.direction event.idm.read_only_udm.network.direction 원시 로그의 키워드(예: 'IN', 'OUT', '->")에서 결정됩니다. INBOUND 또는 OUTBOUND일 수 있습니다.
network.http.method event.idm.read_only_udm.network.http.method 원시 로그의 method 필드에서 직접 매핑됩니다.
network.http.parsed_user_agent event.idm.read_only_udm.network.http.parsed_user_agent convert 필터를 사용하여 useragent 필드에서 파싱됩니다.
network.http.referral_url event.idm.read_only_udm.network.http.referral_url 원시 로그의 prin_url 필드에서 직접 매핑됩니다.
network.http.response_code event.idm.read_only_udm.network.http.response_code 원시 로그의 status_code 필드에서 직접 매핑되고 정수로 변환됩니다.
network.http.user_agent event.idm.read_only_udm.network.http.user_agent 원시 로그의 useragent 필드에서 직접 매핑됩니다.
network.ip_protocol event.idm.read_only_udm.network.ip_protocol 원시 로그의 키워드(예: 'TCP', 'UDP')에서 결정됩니다.
network.received_bytes event.idm.read_only_udm.network.received_bytes 원시 로그의 rec_bytes 필드에서 직접 매핑되고 부호 없는 정수로 변환됩니다.
network.sent_bytes event.idm.read_only_udm.network.sent_bytes 원시 로그의 message_to_process 필드에서 추출됩니다.
network.session_id event.idm.read_only_udm.network.session_id 원시 로그의 session 필드에서 직접 매핑됩니다.
pid event.idm.read_only_udm.target.process.parent_process.pid 원시 로그의 pid 필드에서 직접 매핑됩니다.
pid event.idm.read_only_udm.principal.process.pid JSON 로그의 pid 필드에서 직접 매핑됩니다.
pid event.idm.read_only_udm.target.process.pid 원시 로그의 pid 필드에서 직접 매핑됩니다.
port event.idm.read_only_udm.target.port JSON 로그의 port 필드에서 직접 매핑됩니다.
principal.application event.idm.read_only_udm.principal.application 원시 로그의 app_name 또는 service 필드에서 직접 매핑됩니다.
principal.asset.hostname event.idm.read_only_udm.principal.asset.hostname 원시 로그의 principal_hostname 또는 iporhost 필드에서 직접 매핑됩니다.
principal.asset.ip event.idm.read_only_udm.principal.asset.ip 원시 로그의 syslog_ip 필드에서 직접 매핑됩니다.
principal.hostname event.idm.read_only_udm.principal.hostname 원시 로그의 principal_hostname 또는 iporhost 필드에서 직접 매핑됩니다.
principal.ip event.idm.read_only_udm.principal.ip 원시 로그의 iporhost 또는 syslog_ip 필드에서 직접 매핑됩니다.
principal.port event.idm.read_only_udm.principal.port 원시 로그의 srcport 필드에서 직접 매핑됩니다.
principal.process.command_line event.idm.read_only_udm.principal.process.command_line 원시 로그의 cmd 필드에서 직접 매핑됩니다.
principal.process.parent_process.pid event.idm.read_only_udm.principal.process.parent_process.pid 원시 로그의 parent_pid 필드에서 직접 매핑됩니다.
principal.process.pid event.idm.read_only_udm.principal.process.pid 원시 로그의 process_id 필드에서 직접 매핑됩니다.
principal.process.product_specific_process_id event.idm.read_only_udm.principal.process.product_specific_process_id 원시 로그의 message_to_process 필드에서 추출되며 일반적으로 'opID:' 접두사가 붙습니다.
principal.url event.idm.read_only_udm.principal.url 원시 로그의 prin_url 필드에서 직접 매핑됩니다.
principal.user.company_name event.idm.read_only_udm.principal.user.company_name JSON 로그의 fields.company_name 필드에서 직접 매핑됩니다.
principal.user.userid event.idm.read_only_udm.principal.user.userid 원시 로그의 USER 필드에서 직접 매핑됩니다.
priority event.idm.read_only_udm.metadata.product_event_type 원시 로그의 priority 필드에서 직접 매핑됩니다.
program event.idm.read_only_udm.principal.application JSON 로그의 program 필드에서 직접 매핑됩니다.
qname event.idm.read_only_udm.network.dns.questions.name 원시 로그의 qname 필드에서 직접 매핑됩니다.
response_data event.idm.read_only_udm.network.dns.answers.data 원시 로그의 response_data 필드에서 직접 매핑됩니다.
response_rtype event.idm.read_only_udm.network.dns.answers.type 원시 로그의 response_rtype 필드에서 직접 매핑됩니다. 숫자 DNS 레코드 유형이 추출됩니다.
response_ttl event.idm.read_only_udm.network.dns.answers.ttl 원시 로그의 response_ttl 필드에서 직접 매핑됩니다.
rtype event.idm.read_only_udm.network.dns.questions.type 원시 로그의 rtype 필드에서 직접 매핑됩니다. 숫자 DNS 레코드 유형이 추출됩니다.
security_result.action event.idm.read_only_udm.security_result.action 원시 로그의 키워드 또는 상태에서 결정됩니다. ALLOW 또는 BLOCK일 수 있습니다.
security_result.action_details event.idm.read_only_udm.security_result.action_details 원시 로그 메시지에서 추출되며 취해진 조치에 관한 추가 컨텍스트를 제공합니다.
security_result.category event.idm.read_only_udm.security_result.category 로그에서 방화벽 규칙 일치를 나타내는 경우 POLICY_VIOLATION로 설정합니다.
security_result.description event.idm.read_only_udm.security_result.description 원시 로그 메시지에서 추출되며 보안 결과에 관한 추가 컨텍스트를 제공합니다.
security_result.rule_id event.idm.read_only_udm.security_result.rule_id 원시 로그의 rule_id 필드에서 직접 매핑됩니다.
security_result.severity event.idm.read_only_udm.security_result.severity 'info', 'warning', 'error'와 같은 원시 로그의 키워드에서 결정됩니다. INFORMATIONAL, LOW, MEDIUM, HIGH일 수 있습니다.
security_result.severity_details event.idm.read_only_udm.security_result.severity_details 원시 로그의 severity 또는 log.syslog.severity.name 필드에서 직접 매핑됩니다.
security_result.summary event.idm.read_only_udm.security_result.summary 원시 로그 메시지에서 추출되며 보안 결과를 간단하게 요약하여 제공합니다.
service event.idm.read_only_udm.principal.application 원시 로그의 service 필드에서 직접 매핑됩니다.
source event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname 원시 로그의 source 필드에서 직접 매핑됩니다.
src.file.full_path event.idm.read_only_udm.src.file.full_path 원시 로그 메시지에서 추출됩니다.
src.hostname event.idm.read_only_udm.src.hostname 원시 로그의 src.hostname 필드에서 직접 매핑됩니다.
src_ip event.idm.read_only_udm.principal.ip 원시 로그의 src_ip 필드에서 직접 매핑됩니다.
src_mac_address event.idm.read_only_udm.principal.mac 원시 로그의 src_mac_address 필드에서 직접 매핑됩니다.
srcport event.idm.read_only_udm.principal.port 원시 로그의 srcport 필드에서 직접 매핑됩니다.
srcip event.idm.read_only_udm.principal.ip 원시 로그의 srcip 필드에서 직접 매핑됩니다.
subtype event.idm.read_only_udm.metadata.event_type 원시 로그의 subtype 필드에서 직접 매핑됩니다.
tags event.idm.read_only_udm.metadata.tags JSON 로그의 tags 필드에서 직접 매핑됩니다.
target.application event.idm.read_only_udm.target.application 원시 로그의 target_application 필드에서 직접 매핑됩니다.
target.file.full_path event.idm.read_only_udm.target.file.full_path 원시 로그 메시지에서 추출됩니다.
target.hostname event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname 원시 로그의 target_hostname 또는 iporhost 필드에서 직접 매핑됩니다.
target.ip event.idm.read_only_udm.target.ip 원시 로그의 target_ip 필드에서 직접 매핑됩니다.
target.mac event.idm.read_only_udm.target.mac 원시 로그의 target_mac_address 필드에서 직접 매핑됩니다.
target.port event.idm.read_only_udm.target.port 원시 로그의 target_port 필드에서 직접 매핑됩니다.
target.process.command_line event.idm.read_only_udm.target.process.command_line 원시 로그의 cmd 필드에서 직접 매핑됩니다.
target.process.parent_process.pid event.idm.read_only_udm.target.process.parent_process.pid 원시 로그의 parent_pid 필드에서 직접 매핑됩니다.
target.process.pid event.idm.read_only_udm.target.process.pid 원시 로그의 pid 필드에서 직접 매핑됩니다.
target.process.product_specific_process_id event.idm.read_only_udm.target.process.product_specific_process_id 원시 로그의 message_to_process 필드에서 추출되며 일반적으로 접두사가 'opID:'로 지정됩니다.
target.resource.name event.idm.read_only_udm.target.resource.name 원시 로그의 adapter 필드에서 직접 매핑됩니다.
target.resource.resource_type event.idm.read_only_udm.target.resource.resource_type 로그가 VM 작업을 나타내는 경우 VIRTUAL_MACHINE로 설정합니다.
target.resource.type event.idm.read_only_udm.target.resource.type 로그에서 설정 수정을 나타내는 경우 SETTING로 설정합니다.
target.user.userid event.idm.read_only_udm.target.user.userid 원시 로그의 target_username 또는 user1 필드에서 직접 매핑됩니다.
timestamp event.timestamp date 필터를 사용하여 로그의 timestamp 또는 data 필드에서 파싱되고 타임스탬프 객체로 변환됩니다.
type event.idm.read_only_udm.additional.fields 로그의 type 필드는 'LogType' 키와 함께 UDM의 additional_fields 배열에 추가됩니다.
user1 event.idm.read_only_udm.target.user.userid 원시 로그의 user1 필드에서 직접 매핑됩니다.
useragent event.idm.read_only_udm.network.http.user_agent 원시 로그의 useragent 필드에서 직접 매핑됩니다.
vmw_cluster event.idm.read_only_udm.target.resource.name 원시 로그의 vmw_cluster 필드에서 직접 매핑됩니다.
vmw_datacenter event.idm.read_only_udm.target.resource.name 원시 로그의 vmw_datacenter 필드에서 직접 매핑됩니다.
vmw_host event.idm.read_only_udm.target.ip 원시 로그의 vmw_host 필드에서 직접 매핑됩니다.
vmw_object_id event.idm.read_only_udm.target.resource.id 원시 로그의 vmw_object_id 필드에서 직접 매핑됩니다.
vmw_product event.idm.read_only_udm.target.application 원시 로그의 vmw_product 필드에서 직접 매핑됩니다.
vmw_vcenter event.idm.read_only_udm.target.cloud.availability_zone 원시 로그의 vmw_vcenter 필드에서 직접 매핑됩니다.
vmw_vcenter_id event.idm.read_only_udm.target.cloud.availability_zone.id 원시 로그의 vmw_vcenter_id 필드에서 직접 매핑됩니다.
vmw_vr_ops_appname event.idm.read_only_udm.target.application 원시 로그의 vmw_vr_ops_appname 필드에서 직접 매핑됩니다.
vmw_vr_ops_clustername event.idm.read_only_udm.target.resource.name 원시 로그의 vmw_vr_ops_clustername 필드에서 직접 매핑됩니다.
vmw_vr_ops_clusterrole event.idm.read_only_udm.target.resource.type 원시 로그의 vmw_vr_ops_clusterrole 필드에서 직접 매핑됩니다.

변경사항

2024-06-03

  • JSON 로그의 새로운 패턴에 대한 지원이 추가되었습니다.

2024-05-09

  • 'snmpd' 및 'Rhttpproxy' 로그의 새 패턴에 대한 지원이 추가되었습니다.
  • 'prod_event_type'이 'metadata.product_event_type'에 매핑되었습니다.
  • 'context'가 'additional.fields'에 매핑되었습니다.

2024-02-07

  • 버그 수정:
  • 누락되는 SYSLOG 로그를 지원하기 위해 새로운 Grok 패턴을 추가했습니다.
  • 'newVersion' 및 'filter'가 'security_result.detection_fields'에 매핑되었습니다.
  • 'description'이 'security_result.description'에 매핑되었습니다.

2023-10-10

  • gsub 함수를 사용하여 다음 JSON 키 이름을 수정했습니다.
  • 'service'를 'serv'로 변경했습니다.
  • 'event'에서 'log_event'로 변경되었습니다.
  • '@timestamp'에서 'timestamp'로 변경되었습니다.
  • '@version'에서 'version'으로 변경되었습니다.
  • 새 필드가 있는 JSON 로그를 처리하는 새 Grok 패턴을 추가했습니다.
  • '타임스탬프'를 'RFC 3339' 및 'TIMESTAMP_ISO8601' 형식과 일치시켰습니다.
  • 'host.hostname'이 'principal.hostname'에 매핑되었습니다.
  • 'host.ip'가 'principal.ip'에 매핑되었습니다.
  • 'type', 'serv.type', 'log.syslog.facility.code', 'log.syslog.facility.name', 'log.syslog.severity.code', 'log.syslog.severity.name', 'log.syslog.priority'가 'additional.fields'에 매핑되었습니다.
  • 'process.name'이 'service'에 매핑되었습니다.
  • 'version'이 'metadata.product_version'에 매핑되었습니다.
  • 'severity'가 'security_result.severity'에 매핑되었습니다.

2023-09-25

  • VMware ESXi의 새로운 유형의 SYSLOG를 처리하기 위한 새로운 Grok 패턴이 추가되었습니다.
  • 'app_name'이 'principal.application'에 매핑되었습니다.
  • 'severity'가 'security_result.severity'에 매핑되었습니다.

2023-07-17

  • 버그 수정 - 'username'이 'target.user.userid'에 매핑되었습니다.
  • 'pid'가 'principal.process.pid'에 매핑되었습니다.
  • 'description'이 'metadata.description'에 매핑되었습니다.

2023-06-12

  • 버그 수정 - 'vmauthd' 유형의 'session' 매핑이 수정되었습니다. 'network.session_id'에 매핑했습니다.

2022-09-01

  • Bug_fix - 하드코딩된 값에서 principal.namespace를 매핑 해제했습니다.

2022-08-24

  • 개선사항 - - 'yyyy-MM-ddTHH:mm:s' 형식의 날짜를 파싱하는 새 날짜 유형이 추가되었습니다.

2022-08-03

  • 개선사항 - hostd, vmon, vrops 서비스로 로그를 처리하는 grok 패턴이 추가되었습니다.

2022-07-26

  • 개선 -
  • 'service'가 'Rhttpproxy'와(와) 일치하는 경우
  • 'principal.namespace'의 매핑을 'namespace'에서 'WALMART'로 수정했습니다.
  • 'namespace'가 'additional.fields'에 매핑되었습니다.
  • 'service'가 'crond'와(와) 일치하는 경우
  • 'parent_pid'가 'target.process.parent_process.pid'에 매핑되었습니다.

2022-07-05

  • 버그 수정 - 'yyyy-MM-ddTHH:mm:ss.SSSS' 형식의 타임스탬프와 일치하도록 파서를 업데이트했습니다.

2022-06-13

  • 개선사항 - hostd, sendmail, sshd, sudo, vmcad, vmon, vpxd, vrops 서비스로 로그를 처리하도록 grok 패턴을 수정/추가했습니다.
  • 버그 수정 - 'vmauthd' 로그의 'metadata.event_type'을 'USER_LOGIN'에서 'GENERIC_EVENT'로 수정했습니다.

2022-05-02

  • 버그 수정 - 사용자 요구사항에 따라 서비스가 'Hostd'인 로그의 target.hostname 매핑이 principal.ip로 변경되었습니다.

2022-04-13

  • 개선사항 - hostd-probe, vmkernel, vmkwarning, Fdm, netcpa, root, hpHelper, snmpd 등의 서비스 이름이 있는 로그를 파싱했습니다.
  • logstash.ingest.timestamp를 metadata.ingested_timestamp에 매핑했습니다.
  • logstash.ingest.host 및 logstash.process.host를 intermediary.hostname으로 변경합니다.
  • logstash.collect.host를 observer.hostname으로 변경합니다.