자격 증명 없는 애플리케이션 검색은 지정된 IP 주소의 특정 포트에서 활성 상태로 수신 대기 중인 애플리케이션 서비스를 식별합니다.
애플리케이션 검색 패턴
서비스 매핑은 모든 자격 증명 기반 포트 분류 단계가 실패할 때 자격 증명 없는 검색 애플리케이션 패턴을 시작합니다. 이 패턴은 Nmap이 설치되었고 특정 원격 호스트 IP 주소 및 포트에 대해 애플리케이션/버전 감지를 수행하도록 구성된 Windows MID 서버에서 Nmap 명령을 실행합니다. Nmap이 스캔 중인 포트가 열려 있으면 패턴이 CredentialLessApplicationClassNameMapper MID 서버 스크립트 포함을 실행하여, Nmap에서 제공된 서비스 제품, 서비스 이름 및 모든 추가 정보를 지원되는 ServiceNow 애플리케이션 테이블에 매핑합니다. 스크립트가 반환된 제품을 기본 애플리케이션 [cmdb_ci_appl] 테이블에서 파생된 적합한 테이블에 매핑할 수 있으면 스크립트가 이 정보를 패턴으로 전달합니다. 이 패턴은 최종적으로 CI가 생성되거나 조정될 수 있도록 일치를 검색 식별자로 전달합니다. Nmap으로 반환된 정보가 파생된 테이블과 일치하지 않으면 인스턴스가 기본 애플리케이션 [cmdb_ci_appl] 테이블을 사용하여 CI를 만듭니다.
중요사항:
자격 증명 없는 검색 애플리케이션 패턴이 시작되도록 허용하려면 mid.discovery.credentialless.enable 시스템 속성이 true로 설정되었는지 확인합니다. 사용하지 않으려면 이 속성을 false로 설정합니다.
스캔 예
이 정보는 Linux 테스트 시스템에서 Nmap 애플리케이션/버전 감지 포트 스캔에 의해 반환되었으며 Nmap 스캔이 반환할 수 있는 애플리케이션 데이터 유형을 설명합니다.
정보
포트
포트 상태
open
서비스 이름
ssh
서비스 제품
OpenSSH
추가 서비스 정보
프로토콜 2.0
기본 애플리케이션 매핑
CredentialLessApplicationClassNameMapper MID 서버 스크립트 포함은 검색 및 서비스 매핑에 대해 제공되는 가장 일반적인 애플리케이션 테이블의 하위 집합으로 구성됩니다. agent_admin 역할이 있는 사용자는 자격 증명 없는 애플리케이션 검색이 파생된 애플리케이션 CI 클래스로 매핑에 사용할 수 있는 추가적인 CI 테이블을 추가하도록 이 스크립트 포함을 편집할 수 있습니다.
이 테이블에는 CMDB 식별 및 조정이 정의된 제품으로 확인할 수 있었던 테스트 시스템에서 Nmap으로 반환된 가까운 일치 항목의 예가 표시되어 있습니다. 많은 경우에 일치 항목을 확인하기 위해서는 Nmap으로 반환되는 서비스 이름이 필요하지 않았습니다. 일치 항목을 확인하기 위해서는 테이블에 표시되는 서비스 이름이 필요했습니다.
정의된 Discovery 제품으로 확인될 수 없는 Nmap으로 반환된 제품들에는 다음과 같은 이름 지정 형식이 사용됩니다. <serviceProduct>:<serviceExtrainfo>:<serviceName>. 이 문자열의 값이 null이면 이름에서 삭제됩니다.
serviceProduct: Nmap에서 반환된 서비스 제품 정보입니다.
serviceExtrainfo: 프로토콜 정보와 같이 식별에 도움이 될 수 있도록 애플리케이션에 대해 Nmap이 반환하는 모든 추가 정보입니다.
serviceName: 서비스의 설치된 이름 또는 제품의 디먼입니다.
표 1. 확인된 가까운 일치 항목 예
Nmap 응답
스크립트 응답 - 식별자 입력
서비스 제품
서비스 이름
서비스 추가 정보
검색된 제품
CI 애플리케이션 테이블
Apache Tomcat/Coyote JSP 엔진 1.1
해당 사항 없음
NULL
Tomcat
cmdb_ci_app_server_tomcat
Apache httpd 2.2.10((Linux/SUSE))
해당 사항 없음
NULL
Apache Web Server
cmdb_ci_apache_web_server
IBM HTTP 서버
해당 사항 없음
Apache에서 추출됨
Apache Web Server
cmdb_ci_apache_web_server
IBM DB2 Database Server(QDB2/LINUX)
해당 사항 없음
NULL
DB2 인스턴스
cmdb_ci_db_db2_instance
Microsoft Exchange smtpd
smtp
NULL
Exchange Client Access Server
cmdb_ci_exchange_cas
Microsoft Exchange 2010 로그 복사기
msexchange-logcopier
NULL
Exchange 사서함
cmdb_ci_exchange_mailbox_server
JBoss 서비스 httpd
해당 사항 없음
NULL
JBoss
cmdb_ci_app_server_jboss
Microsoft IIS httpd 6.0
해당 사항 없음
NULL
Microsoft iis Web Server
cmdb_ci_microsoft_iis_web_server
Microsoft SQL Server 2005 9.00.4035; SP3
해당 사항 없음
NULL
Microsoft SQL Server
cmdb_ci_db_mssql_instance
MongoDB 2.5.1
해당 사항 없음
NULL
MongoDB 인스턴스
cmdb_ci_db_mongodb_instance
MySQL 5.5.51
해당 사항 없음
NULL
MySQL 인스턴스
cmdb_ci_db_mysql_instance
nginx 1.4.6(Ubuntu)
해당 사항 없음
NULL
Nginx 웹 서버
cmdb_ci_nginx_web_server
PostgreSQL DB
해당 사항 없음
NULL
PostgreSQL 인스턴스
cmdb_ci_db_postgresql_instance
Oracle WebLogic Server
해당 사항 없음
NULL
Weblogic
cmdb_ci_app_server_weblogic
IBM WebSphere MQ 6.0
해당 사항 없음
NULL
IBM WebSphere MQ
cmdb_ci_appl_ibm_wmq
IBM WebSphere Application Server 6.1
해당 사항 없음
NULL
IBM Websphere
cmdb_ci_app_server_websphere
OpenSSH : ssh
해당 사항 없음
NULL
OpenSSH
cmdb_ci_appl
Oracle 인스턴스
해당 사항 없음
NULL
Oracle Database
cmdb_ci_db_ora_instance
Oracle 인스턴스
해당 사항 없음
NULL
Oracle TNS 수신기
cmdb_ci_db_ora_instance
product-A
service-B
NULL
product-A:service-B
cmdb_ci_appl
product-A
service-B
extrainfo-C
product-A:extrainfo-C:service-B
cmdb_ci_appl
고유하게 일치하지 않는 애플리케이션 예
이 예에서는 Nmap으로 반환된 정보가 파생된 테이블과 일치하지 않으며, 인스턴스가 기본 애플리케이션 [cmdb_ci_appl] 테이블을 사용하여 CI를 만들어야 합니다.
스캔한 애플리케이션
Nmap 응답
스크립트 응답 - 식별자 입력
서비스 제품
서비스 이름
서비스 추가 정보
검색된 제품
CI 애플리케이션 테이블
ExchangeHub
Microsoft Windows RPC
msrpc
null
Microsoft Windows RPC: msrpc
cmdb_ci_appl
HAProxy 부하 분산 장치
IBM HTTP 서버(Apache에서 파생)
http
null
IBM HTTP 서버(Apache에서 파생):http
cmdb_ci_appl
SharePoint
Oracle Database
http
null
Oracle Database:http
cmdb_ci_appl
SharePoint
Oracle 인스턴스
해당 사항 없음
null
Oracle Database
cmdb_ci_appl
애플리케이션 ID
검색 - IP Based [com.snc.discovery.ip_based] 플러그인은 Nmap 스캔에 대한 sys_class_name 및 cl_port for Nmap에서 일치하는 애플리케이션 [cmdb_ci_appl] 테이블에 대해 애플리케이션 규칙에 식별자를 추가합니다.그림 1. 애플리케이션 규칙의 Nmap 식별자