2012년 10월 23일 화요일

DNA를 이용한 수사...

얼마전에 "DNA, 연쇄살인의 끝" 이라는 재미있는 책을 읽었다.
DNA를 이용한 수사가 언제부터 도입이 되었으며
DNA를 이용해서 검거한 범인, 누명이 벗겨진 사람들의 이야기
그리고 역사적으로 루이 17세와 아나스타샤 공주 사기극을 해결한 사실들 등...

그래 DNA라는 증거를 남기지 않고 범행을 저지른다는건 참 어려운 일이다.
특히 살인, 성폭행같은 사건들...

그리고 DNA는 거짓말을 하지 않고 있는 사실을 그대로 말한다는 것도 인정한다.
DNA수사를 잘 알고 있는 사람이 넘의 DNA를 가져다 놓고 조작할 수 는 있어도...

결국 DNA라는건 수사의 한가지 기술일 뿐이지 그걸로 모든게 해결 될수는 없다는 말을
하고 싶었던것 같다.

내가 하고자 하는 이야기는 그런 이야기는 아니다.
DNA 결과가 이래서 "당신이 범인이야" 또는 "그건 사기야" 라고 말한다.

그런데 내가, 일반인이, 법조인이 앞에 내놓은 DNA 결과를 보고

그게 뭔지 어케 알지?

과학수사대가 그렇다고 말하니까 그런줄 알 뿐이다.
영화나 드라마에서 DNA 판독 결과를 보여준다. 내가 보기엔 리트머스 시험지에 시약
묻혀서 스펙트럼 형태로 나온거 이상의 의미는 못 찾는다.

그저 과학수사대의 말에 절대성을 부여하고 그 사람들의 말을 완전히 신뢰하는 것 외에
내가 뭘 할 수 있는 방법이 없다.

그 수사를 위해서, 그 결과를 판독하기 위해서 생화학을 배워야 하나?

많은 과학 수사의 결과물들이 일반인들의 지식으로 이해하기 어려울 것이다.
그런데 참 많은 부분에서 의심없이 잘 받아 들여 지는것 같다.
과학수사관은 실수나 거짓말을 안하나?
법정에 앉은 피의자가 거기에 이의를 달고 다른 기관에 재검사를 요청하기가 쉬울까?

그 법정에서 다른 기관의 검사 결과에 "증거물"의 자격을 부여할까?

어찌보면 우리는 많은 뉴스와 드라마를 통해서 세뇌되어 있는지도 모른다.
"DNA가" 라고 시작하면 토를 달지 않는다.
정말 DNA는 사람마다 다른가? 그럼 게놈프로젝트 처럼 유전자지도를 그리는게 무슨 의미가 있지?
그 사람 유전자 지도하고 내 유전자 지도하고 다른데 쓸모가 있을까?
서울시 지도 들고 북경에 가서도 천안문 광장을 찾아갈 수 있나?

물론 나는 DNA라는게 있다는 사실만 알지 그게 구체적으로 어떻게 생겼는지, 수사에 어떤 방식으로 사용이 되는지 전혀 모른다. 누구도 가르쳐 주지 않았다.

그러면 DNA를 이용한 수사 라는 것에 한번쯤 더 의심을 해봐야 하지 않을까?

SENDMAIL SMTP 인증

참 많이 애먹이는 넘이다.
그냥 단순한 메일서버로 사용하는데는 리눅스 설치CD에 포함된 기본 사양으로
아무 문제가 없다.
설치하고 인터넷에서 참고한 자료대로 /etc/mail/sendmail.mc 수정하고
m4로 sendmail.cf 만들어 주고 실행 시키면 된다.

그런데 이렇게만 하면 스패머들이 무쟈게 좋아한다.
아마 당신회사 메일서버로 엄청나게 많은 스팸메일들이 발송될거고
당신 회사의 메일주소는 누구도 반가워 하지 않는 주소중의 한개가 될거다.

인터넷 찾아보면 sendmail.mc 파일의 다음 세 줄의 코멘트를 제거하고 일부 수정하면
smtp 인증이 아주 자알 될것처럼 써있다.

============================================================
1.
dnl # TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
을 아래처럼
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl


2.
dnl # define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
을 아래처럼
define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl

3.
dnl # DAEMON_OPTION('Port=smtp, Addr=127.0.0.1, Name=MTA') dnl
을 아래처럼
DAEMON_OPTION('Port=smtp, Addr=0.0.0.0, Name=MTA') dnl
============================================================
그리고 /etc/mail/access 파일은
============================================================
# Check the /usr/share/doc/sendmail/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc
# package.
#
# If you want to use AuthInfo with "M:PLAIN LOGIN", make sure to have the
# cyrus-sasl-plain package installed.
#
# By default we allow relaying from localhost...
Connect:localhost.localdomain        RELAY
Connect:localhost            RELAY
Connect:127.0.0.1            RELAY
============================================================
이렇게만 있어야 한다. 이거  이렇게 만들고 나서
makemap hash /etc/mail/access.db < /etc/mail/access
커맨드로 Relay 맵을 만들어 줘야한다.

이제 돌거 같은가?
천만의 말씀이다. 이것만 해서는 절대로 안된다. 아예 메일 서버에 로그인도 안될거다.
애들이 돌기 위해서는 saslauthd 라는 데몬도 돌아야 한다. 그런데 이 부분에 대한 설명이 참 성의 없다.
그냥 돌리면 돌긴 한다. 그런데 역시 인증 안받아 준다. 이넘도 만줘줘야 하는 부분이 꽤 있다.
=============================================================
1.
/etc/sasl2/Sendmail.conf  파일을 다음과 같이 바꿔라.
pwcheck_method: saslauthd
allowanonymouslogin: 0
allowplaintext: 1
mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5

2.
/etc/sysconfig/saslauthd 파일을 다음과 같이 바꿔라.
# Directory in which to place saslauthd's listening socket, pid file, and so
# on.  This directory must already exist.
SOCKETDIR=/run/saslauthd

# Mechanism to use when checking passwords.  Run "saslauthd -v" to get a list
# of which mechanism your installation was compiled with the ablity to use.
MECH=shadow
SASLAUTHD_AUTHMECH=shadow

# Additional flags to pass to saslauthd on the command line.  See saslauthd(8)
# for the list of accepted flags.
FLAGS=
=============================================================

그리고 나서
systemd-systemctl restart saslauthd.service
systemd-systemctl restart sendmail.service
이렇게 두개의 서비스를 실행 시켜야 된다.

이제 아웃룩이나 썬더버드를 통해서 메일을 주고 받을 수 있다.
참 오랜 시간을 버벅거리고 헤매도 다녔다. 쓸모 있는 문서가 없더만...
난 어케 알았냐고? 맨땅에 헤딩했다.
이 문서, 저 문서 다 읽어보고 약간의 상상력 발휘하고...

참고로 내가 사용한 시스템은
FedoraCore 17이다. (이 배포판 참 맘에 안든다.)