Sun Java System Directory Server Enterprise Edition 6.2 관리 설명서

Procedure디렉토리 서버에서 디렉토리 프록시 서버를 통해 클라이언트 응용 프로그램에 대한 작업을 추적하는 방법

DSCC를 사용하여 이 작업을 수행할 수 없습니다. 이 절차에 설명된 것처럼 명령줄을 사용하십시오.

  1. 디렉토리 서버 액세스 로그에서 추적할 작업의 연결 번호를 찾습니다.

    예를 들어 액세스 로그에서 다음 행은 연결 번호가 conn=12839op=2 작업을 나타냅니다.


    [20/Jul/2006:18:01:49 -0500] conn=12839 op=2 msgId=4 - SRCH base="dc=example,dc=com" 
     scope=2 filter="(objectClass=organizationalunit)" attrs=ALL
  2. 이 연결에 대한 디렉토리 프록시 서버 연결 정보를 얻습니다.

    이 정보를 얻으려면 디렉토리 서버 액세스 로그를 검색하여 연결 번호가 일치하는 작업을 모두 찾습니다. 예를 들어 UNIX 시스템에서 다음과 같이 grep 명령을 실행하여 디렉토리 서버 액세스 로그에서 연결 conn=12839와 일치하는 행을 모두 찾습니다.


    $ grep conn=12839 access

    초기 LDAP 연결을 보여주는 행이 찾고 있는 정보이며 이는 다음과 유사합니다.


    [19/Jul/2006:16:32:51 -0500] conn=12839 op=-1 msgId=-1 - fd=27 slot=27 
     LDAP connection from 129.153.160.175:57153 to 129.153.160.175

    위의 행은 129.153.160.175:57153에서 디렉토리 서버로의 LDAP 연결이 있음을 나타냅니다. 포트 번호(57153)는 디렉토리 프록시 서버 액세스 로그로 다시 연결하는 데 필요한 정보입니다. 포트 번호를 사용하면 디렉토리 프록시 서버 로그에서 일치하는 연결을 찾을 수 있으며 이 연결에서 클라이언트 정보를 찾아볼 수 있습니다.

    연결이 처음 구성된 이후에 로그 파일이 회전된 적이 있다면 현재 액세스 로그 파일과 아카이브된 로그 파일을 모두 검색해야 합니다.

  3. 디렉토리 프록시 서버 액세스 로그에서 일치하는 연결을 찾습니다.

    이 정보를 얻으려면 디렉토리 프록시 서버 액세스 로그를 검색하여 포트 번호가 일치하는 작업을 모두 찾습니다.

    로그 파일에서 포트 번호가 동일한 항목을 여러 개 찾을 수 있습니다. 올바른 항목을 찾으려면 디렉토리 서버 로그 항목의 타임스탬프를 검색에 포함시킵니다.

    예를 들어 UNIX 시스템의 경우 다음과 같이 grep 명령을 실행하여 디렉토리 서버 로그에서 찾은 타임스탬프 및 포트 번호와 일치하는 연결 항목을 찾습니다.


    $ grep 19/Jul/2006:16:32 access | grep 57153

    값은 서버 시간에 약간의 차이를 두기 위해 타임스탬프에서 제외됩니다.

    디렉토리 프록시 서버 로그에서 일치하는 행은 다음과 유사합니다.


    [19/Jul/2006:16:32:51 -0500] - SERVER_OP  - INFO  - Created BIND  LDAP connection 
     s_conn=sunds-d1m1-9389:34 client=0.0.0.0:57153 
     server=idm160.central.sun.com:9389 main

    이 행은 디렉토리 프록시 서버가 s_conn=sunds-d1m1-9389:34에 대한 BIND 연결을 만들었음을 나타냅니다. 디렉토리 프록시 서버는 TCP 포트 57153에서 자신을 client=0.0.0.0 클라이언트로 자체 식별합니다.

    로그의 이 행에서 얻을 수 있는 중요 정보는 서버 아이디 및 포트 번호(s_conn=sunds-d1m1-9389:34)입니다.

  4. 이전 단계에서 식별된 서버 아이디 및 포트 번호와 일치하는 작업을 모두 찾습니다.

    이 정보를 얻으려면 디렉토리 프록시 서버 액세스 로그를 검색하여 서버 아이디 및 포트 번호가 일치하는 작업을 모두 찾습니다.

    예를 들어 UNIX 시스템에서 다음과 같이 grep 명령을 실행하여 이전 단계에서 찾은 서버 아이디와 일치하는 작업을 찾습니다.


    $ grep s_conn=sunds-d1m1-9389:34 access

    이 경우, 이러한 작업은 며칠 동안 지속되었을 수 있기 때문에 타임스탬프 검색은 유용하지 않습니다. 그러나, 검색에서 반환된 작업이 올바른 것인지 확인해야 합니다. Create 연결 문이 여러 개인 경우 원래 검색 문과 일치하는 항목을 찾아야 합니다. 이 작업을 수행하려면 타임스탬프를 단계 1에서 찾은 타임스탬프와 일치시킵니다.

    디렉토리 프록시 서버 액세스 로그에서 추출된 다음 내용은 s_conn=sunds-d1m1-9389:34에 대해 반환된 모든 작업을 보여줍니다.


    [19/Jul/2006:16:32:51 -0500] - SERVER_OP  - INFO - Created BIND LDAP connection
     s_conn=sunds-d1m1-9389:34 client=0.0.0.0:57153 server=idm160.central.sun.com:9389 main
    [20/Jul/2006:18:01:49 -0500] - SERVER_OP  - INFO  - conn=31 op=0 BIND dn="cn=directory manager"
     method="SIMPLE" s_msgid=3 s_conn=sunds-d1m1-9389:34
    [20/Jul/2006:18:01:49 -0500] - SERVER_OP  - INFO  - conn=31 op=0 BIND RESPONSE err=0 msg=""
     s_conn=sunds-d1m1-9389:34
    [20/Jul/2006:18:01:49 -0500] - SERVER_OP  - INFO  - conn=31 op=1 SEARCH base="dc=example,dc=com"
     scope=2 s_msgid=4 s_conn=sunds-d1m1-9389:34
    [20/Jul/2006:18:01:49 -0500] - SERVER_OP  - INFO  - conn=31 op=1 SEARCH RESPONSE err=0 msg=""
     nentries=1 s_conn=sunds-d1m1-9389:34

    이 정보를 통해 디렉토리 프록시 서버의 검색 작업에 해당하는 연결 아이디가 31(conn=31)임을 알 수 있습니다.

  5. 이전 단계에서 찾은 연결 아이디와 일치하는 클라이언트 연결 IP 주소를 찾습니다.

    이 정보를 얻으려면 디렉토리 프록시 서버 액세스 로그를 검색하여 연결 아이디 및 타임스탬프가 일치하는 작업을 모두 찾습니다. 사용할 타임스탬프는 단계 1의 원래 검색 문에 있는 타임스탬프입니다.

    예를 들어 UNIX 시스템에서 다음과 같이 grep 명령을 실행하여 클라이언트 연결 IP 주소를 찾습니다.


    $ grep "20/Jul/2006:18:01" access | grep conn=31

    찾으려는 행은 다음과 유사합니다.


    [20/Jul/2006:18:01:49 -0500] - CONNECT - INFO  - conn=31 client=129.150.64.156:2031
    server=0.0.0.0:11389 protocol=LDAP
  6. 이전 단계에서 찾은 IP 주소의 소유자를 확인합니다.

    이 정보를 통해 디렉토리 서버에서 작업을 수행한 담당자를 정확하게 설정할 수 있습니다.