감사 스크립트를 사용하여 IBM QRadar 와 통합하는 Broadcom CA ACF2 구성
IBM QRadar 는 로그 파일 프로토콜을 사용하여 수집되는 Broadcom CA ACF2 설치의 이벤트를 감사하기 위해 스크립트를 사용합니다.
프로시저
- IBM® 지원 웹사이트(http://www.ibm.com/support)에서 다음 압축 파일을 다운로드합니다:
qexacf2_bundled.tar.gz
- Linux® 운영 체제에서 다음 파일을 추출하십시오.
tar -zxvf qexacf2_bundled.tar.gz
다음 파일이 아카이브에 포함되어 있습니다.- QexACF2.JCL.txt - 작업 제어 언어 파일
- QexACF2.load.trs -압축된 프로그램 라이브러리 ( IBM TRSMAIN 필요)
- trsmain sample JCL.txt - .trs 파일의 압축을 풀기 위한 TRSMAIN의 작업 제어 언어
- 다음 방법을 사용하여 IBM 메인프레임에 파일을 로드하십시오.
TEXT 프로토콜을 사용하여 샘플 QexACF2_trsmain_JCL.txt 및 QexACF2.JCL.txt 파일을 업로드하십시오.
- BINARY 모드 전송을 사용하여 QexACF2.load.trs 파일을 업로드하고 사전 할당된 데이터 세트에 추가하십시오. QexACF2.load.trs 파일은 실행 가능 파일(메인프레임
프로그램 QexACF2)을 포함하는 간결한 파일입니다. 워크스테이션에서
.trs 파일을 업로드할 때 다음 DCB 속성을 사용하여 메인프레임에서 파일을 미리 할당하십시오. DSORG=PS, RECFM=FB, LRECL= 1024, BLKSIZE=6144. 파일 전송 유형은 텍스트가 아닌 2진 모드여야 합니다.주: QexACF2 는 TSSUTIL (EARLOUT 데이터) 의 출력을 행별로 읽는 작은 C 메인프레임 프로그램입니다. QexACF2는 이벤트 정보를 포함하는 각 레코드(예: 레코드 디스크립터, 날짜 및 시간)에 헤더를 추가합니다. 이 프로그램은 각 필드를 출력 레코드에 배치하고 후행 공백 문자를 억제하며 파이프 문자로 각 필드를 구분합니다. 이 출력 파일은 QRadar 용으로 형식화되며 공백 억제는 QRadar에 대한 네트워크 트래픽을 줄입니다. 이 프로그램은 CPU나 I/O 디스크 자원을 소비하지 않습니다.
- 설치 특정 매개변수에 따라 trsmain sample_JCL.txt 파일을 사용자 정의하십시오.예제: 작업 카드, 데이터 세트 이름 지정 규칙, 출력 대상, 보존 기간 및 공간 요구사항.
trsmain sample_JCL.txt 파일은 IBM 유틸리티 TRSMAIN을 사용하여 QexACF2.load.trs 파일에 저장된 프로그램을 추출합니다.
QexACF2_trsmain_JCL.txt 파일의 예제에는 다음 정보가 포함되어 있습니다.
//TRSMAIN JOB (yourvalidjobcard),Q1labs, // MSGCLASS=V //DEL EXEC PGM=IEFBR14 //D1 DD DISP=(MOD,DELETE),DSN=<yourhlq>.QEXACF2.LOAD.TRS // UNIT=SYSDA, // SPACE=(CYL,(10,10)) //TRSMAIN EXEC PGM=TRSMAIN,PARM='UNPACK' //SYSPRINT DD SYSOUT=*,DCB=(LRECL=133,BLKSIZE=12901,RECFM=FBA) //INFILE DD DISP=SHR,DSN=<yourhlq>.QEXACF2.LOAD.TRS //OUTFILE DD DISP=(NEW,CATLG,DELETE), // DSN=<yourhlq>.LOAD, // SPACE=(CYL,(10,10,5),RLSE),UNIT=SYSDA //.trs 입력 파일은 IBM TERSE 형식화된 라이브러리이며 TRSMAIN을 호출하는 JCL을 실행하여 추출됩니다. 이 간결한 파일은 추출될 때 QexACF2 프로그램을 멤버로 갖는 PDS linklib를 작성합니다.
- 이 라이브러리에 STEPLIB하거나 LINKLST에 있는 LINKLIB 중 하나로 프로그램 이동을 선택할 수 있습니다. 이 프로그램에는 권한이 필요하지 않습니다.
- 업로드한 후 프로그램을 기존 링크 나열 라이브러리에 복사하거나 프로그램을 포함할 라이브러리의 올바른 데이터 세트 이름으로 STEPLIB DD문을 추가하십시오.
- QexACF2_jcl.txt 파일은 샘플 JCL을 포함하는 텍스트 파일입니다. 구성에 맞는 작업 카드를 구성해야 합니다.
QexACF2_jcl.txt 샘플 파일은 다음을 포함합니다.
//QEXACF2 JOB (T,JXPO,JKSD0093),DEV,NOTIFY=Q1JACK, // MSGCLASS=P, // REGION=0M //* //*QEXACF2 JCL VERSION 1.0 OCTOBER, 2010 //* //************************************************************ //* Change below dataset names to sites specific datasets names*//QEXACF2 JOB (T,JXPO,JKSD0093),DEV,NOTIFY=Q1JACK, // MSGCLASS=P, // REGION=0M //* //*QEXACF2 JCL VERSION 1.0 OCTOBER, 2010 //* //************************************************************ //* Change below dataset names to sites specific datasets names* //************************************************************ //SET1 SET SMFIN='MVS1.SMF.RECORDS(0)', // QEXOUT='Q1JACK.QEXACF2.OUTPUT', // SMFOUT='Q1JACK.ACF2.DATA' //************************************************************ //* Delete old datasets * //************************************************************ //DEL EXEC PGM=IEFBR14 //DD1 DD DISP=(MOD,DELETE),DSN=&SMFOUT, // UNIT=SYSDA, // SPACE=(CYL,(10,10)), // DCB=(RECFM=FB,LRECL=80) //DD2 DD DISP=(MOD,DELETE),DSN=&QEXOUT, // UNIT=SYSDA, // SPACE=(CYL,(10,10)), // DCB=(RECFM=FB,LRECL=80) //************************************************************* //* Allocate new dataset * //************************************************************* //ALLOC EXEC PGM=IEFBR14 //DD1 DD DISP=(NEW,CATLG),DSN=&QEXOUT, // SPACE=(CYL,(100,100)), // DCB=(RECFM=VB,LRECL=1028,BLKSIZE=6144) //************************************************************* //* Execute ACFRPTPP (Report Preprocessor GRO) to extract ACF2* //* SMF records * //************************************************************* //PRESCAN EXEC PGM=ACFRPTPP //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //RECMAN1 DD DISP=SHR,DSN=&SMFIN //SMFFLT DD DSN=&SMFOUT,SPACE=(CYL,(100,100)),DISP=(,CATLG), // DCB=(RECFM=FB,LRECL=8192,BLKSIZE=40960), // UNIT=SYSALLDA //************************************************************ //* execute QEXACF2 * //************************************************************ //EXTRACT EXEC PGM=QEXACF2,DYNAMNBR=10, // TIME=1440 //STEPLIB DD DISP=SHR,DSN=Q1JACK.C.LOAD //SYSTSIN DD DUMMY//SYSTSPRT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //CFG DD DUMMY //ACFIN DD DISP=SHR,DSN=&SMFOUT //ACFOUT DD DISP=SHR,DSN=&QEXOUT //************************************************************ //FTP EXEC PGM=FTP,REGION=3800K //INPUT DD * <IPADDR> <USER> <PASSWORD> PUT '<ACFOUT>' EARL_<THEIPOFTHEMAINFRAMEDEVICE>/<ACFOUT> QUIT //OUTPUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //* - 출력 파일이 작성된 후 출력 파일을 임시 FTP 서버로 전송하는 작업을 스케줄하십시오. 출력 파일이 임시 FTP 서버로 전달됩니다.
출력을 중간 FTP 서버에 성공적으로 전달하려면 샘플 JCL에서 다음 매개변수를 구성해야 합니다.
예제://FTP EXEC PGM=FTP,REGION=3800K //INPUT DD * <IPADDR> <USER> <PASSWORD> PUT '<ACFOUT' EARL_<THEIPOFTHEMAINFRAMEDEVICE>/<ACFOUT> QUIT //OUTPUT DD SYSOUT=* //SYSPRINT DD SYSOUT=*여기서,
<IPADDR> 은 출력 파일을 수신할 임시 FTP 서버의 IP 주소 또는 호스트 이름입니다.
<USER> 는 임시 FTP 서버에 액세스하는 데 필요한 사용자 이름입니다.
<PASSWORD> 는 임시 FTP 서버에 액세스하는 데 필요한 비밀번호입니다.
<THEIPOFTHEINFRAMEDEVICE> 는 출력을 수신하는 메인프레임 또는 임시 FTP 서버의 대상입니다.
예제:PUT 'xxxxxx.xxxxxxx.OUTPUT.C320' /<IP_address>/ACF2/QEXACF2.OUTPUT.C320<QEXOUTDSN> 은 임시 FTP 서버에 저장되는 출력 파일의 이름입니다.
이제 로그 파일 프로토콜을 구성할 준비가 되었습니다.
- 스케줄 QRadar - CA ACF2에서 출력 파일을 검색합니다.
zOS 플랫폼이 FTP, SFTP를 통해 파일을 제공하거나 SCP를 허용하도록 구성된 경우에는 임시 FTP 서버가 필요하지 않으며 QRadar 가 메인프레임에서 직접 출력 파일을 가져올 수 있습니다. 다음 텍스트는
//*를 사용하여 주석 처리하거나 QexACF2_jcl.txt file에서 삭제해야 합니다.//FTP EXEC PGM=FTP,REGION=3800K //INPUT DD * <IPADDR> <USER> <PASSWORD> PUT '<ACFOUT>' EARL_<THEIPOFTHEMAINFRAMEDEVICE>/<ACFOUT> QUIT //OUTPUT DD SYSOUT=* //SYSPRINT DD SYSOUT=*