개인 메일 서버를 구축하였습니다.

By | 2014/08/06

  최근 지메일과 관련된 뉴스 하나가 올라왔습니다.

구글은 최근 미국 텍사스 휴스턴에 사는 41살 남성의 지메일 계정에서 아동 학대 포르노 사진을 발견하고는 이 남성의 신원을 아동보호기관에 통보했다고 <비비시>(BBC)가 4일 휴스턴 지역 언론을 인용해 보도했다. 아동보호기관의 신고를 받은 경찰은 이 남성을 체포했다. 휴스턴 경찰도 이 남성이 발송한 이메일에서 문제의 사진을 구글이 탐지했다고 밝혔다.

‘아동포르노’ 보는 자, 구글이 들여다본다

John Henry Skillem, a chef who works at Denny’s and a registered sex offender after sexually abusing a young boy 20 years ago, did not leave any traces of his activity on the Internet, except on Gmail, where he was found to have sent and received objectionable images of a young girl. After Gmail alerted the National Center for Missing and Exploited Children (NCMEC), which tipped off the police, authorities were able to obtain a warrant to search Skillem’s phone and tablet, which were also found to contain child pornography images, says a report by Houston local television channel KHOU.

Google outs child porno suspect with help of Gmail scan: Good job but.…..

  기사 내용은 아동 포르노 사진을 소지한 메일을 Gmail에서 검색하여 이를 찾아내어 신고하였다는 것입니다. 두 번째 기사 말대로 Good job입니다만, 그래도 꺼림칙함은 어쩔 수 없더군요. 구글이 나의 메일을 동의 없이 볼 수 있다는 뜻이니까요.

  물론 저는 아동 포르노를 가지고 있지 않습니다. (아청법에 의해 철컹철컹, 더하여 애를 그런 대상으로 보는게 이해가 잘 안 되네요.;;) 그렇기 때문에 다른 세상 사람 얘기이지만, 그래도 구글이 범죄자를 찾는다는 이유로 제 메일을 스캔할 수 있다는 점이니 문제가 되지 않을까 싶었습니다.

  더하여 현재 제 메일 계정의 용량이 가득차고 있습니다. 서류를 첨부하여 보내는 일이 많다보니 그것들을 전부 저장하는 메일 계정의 용량에 한계가 온 것이지요.

  이러한 이유로 제 개인 메일 계정이 필요하겠다는 생각이 들었습니다.

 

  현재 nosyu.pe.kr에 메일 계정을 돌리고 있습니다. 이는 제가 개인적으로 지인들과 소통할 때 사용하는 계정입니다. 아무래도 싼 호스팅을 쓰기에 용량은 무제한이라고 해도 약간 신뢰감이 떨어집니다. 더하여 어차피 여기도 회사이기에 구글이 아니더라도 정부에서 요구할 때 줄 수 밖에 없겠죠. 따라서 제 개인 컴퓨터에 메일 서버를 설치하기로 하였습니다.

 

  메일 서버는 현재 여러 가지가 있습니다. 해당 리스트는 아래 위키 기사를 보시면 좀 더 자세히 알 수 있습니다.

  이렇게 여러 가지가 있지만, 현재 남아 있는 제 개인 컴퓨터가 Windows 7을 쓰고 있기에 Windows에서 돌아가는 무료 서버 프로그램이 필요했습니다. 따라서 가장 적합해 보이는 hMailServer를 선택하였습니다.

http://www.hmailserver.com/

  여러 이유가 있지만, 가장 큰 이유는 아무래도 무료라는 점입니다. 더하여 SSL을 지원하기에 좀 더 안전한 전송을 할 수 있습니다. 또한, 한국인들이 여러 번 설치를 하였기에 한국어로 적혀져 있는 설치기가 많습니다. 저도 이를 참고하여 설치/구축을 하였습니다.

  대체로 비슷한 얘기를 하고 있습니다. 따라서 여기에는 해당 내용을 적지 않겠습니다. 대신, 저것 외에 제가 접하였던 문제를 적겠습니다.

 

  MX record 문제

  메일을 전송하기 위해서는 도메인 업체에 MX record라는 것을 설정해야 한다고 합니다. 하지만 그것이 무언지 몰라 참으로 고생했습니다. 간신히 찾아서 이를 설정하였는데 어떻게 설정해야 하는지 모르겠더군요. 위의 설치기에는 mail이라는 subdomain을 넣으라고 하던데 그 이유를 모르겠더군요.

  저는 어차피 도메인에 지정한 컴퓨터에 해당 서버 프로그램을 설치하였고 이를 동작시켰기에 따로 mail이라는 sub-domain을 지정하지 않았습니다. 따라서 이를 같게 지정한 것이지요.

  그리고 자신이 제대로 설정하였는지를 확인하려면 아래 명령어를 통해서 확인할 수 있습니다.

nslookup -type=mx yourdomainname.com

  알맞은 결과는 아래 페이지를 참고하시면 됩니다.

http://www.hmailserver.com/documentation/latest/?page=ts_mx_problems

 

  MySQL dll 문제

  MySQL을 외부 DBMS로 설정하면 libmysql.dll 이라는 파일이 없다면서 진행이 되지 않습니다. 해당 파일은 MySQL 폴더를 뒤져보면 나옵니다. 하지만 저는 64bit 프로그램을 설치하였기에 제대로 동작하지 않더군요. 같은 문제로 고민했던 사람들이 있었고, 어떤 이가 dll 파일을 올렸습니다.

http://www.hmailserver.com/forum/viewtopic.php?p=85944

  위의 링크에 있는 글에서 밑으로 내리면 Attachment라는 세션에서 다운로드 받을 수 있습니다.

 

  왜 메일이 안 날아오는걸까?

  저는 백업용 메일 서버를 원했기에 SMTP는 설정하지 않았습니다. 하지만 외부에서 메일을 보내면 이상하게 메일이 안 날아오더군요. 왜 그런가 싶어 살펴보니 25번 포트를 인바운드에서 열지 않았던 것입니다. 메일이 25번 포트를 통해 해당 서버로 날아가는데 그것이 방화벽으로 막혀있었으니 당연히 메일이 들어가지 못한 것입니다.

http://www.hmailserver.com/documentation/latest/?page=ts_receive_messages_from_outside

  해당 내용은 위의 페이지에서 확인하였습니다. 그 외에 여러 가능한 이유에 대해서 설명하고 있으니 참고하시면 좋습니다.

 

  SSL은 어떻게 설정하지?

  앞에서 얘기드린대로 전송의 보안성을 높이기 위해 SSL을 사용하였습니다. 하지만 어떻게 해야할지 막막하더군요.

http://www.hmailserver.com/documentation/latest/?page=reference_sslcertificates

  여기서는 메일 서버에서 SSL 구축을 어떻게 하는지 설명하고 있습니다. 이 중 Certificate file과 Private key file이 필요한데 이것을 만들기 위해서 아래의 글을 참고하시면 됩니다.

http://www.akadia.com/services/ssh_test_certificate.html

  이것은 Linux에서 가능한 방법으로 Windows에서 가능한 방법은 Googling을 하시면 될 것입니다. :) 해당 글에서 Certificate file은 crt 확장자 파일이고, Private key file은 key 확장자 입니다.

 

  왜 갑자기 안 되지?

  두 대의 컴퓨터의 Client 프로그램에서 연결이 되는지 확인하였습니다. 하나는 서버 컴퓨터이고 다른 하나는 외부 컴퓨터였습니다. 이 중 서버 컴퓨터에서는 잘 되는데, 외부에서는 처음에 되더니 갑자기 안 되더군요. 방화벽 문제인가 싶어서 찾아보았지만, 그렇지는 않았습니다. 왜 그런가 한참을 찾아보다가 결국 발견한 것은 Auto-ban에서 자동으로 제 외부 컴퓨터를 차단한 것입니다. 그러니 당연히 작동이 되지 않았죠. 이를 해제하니 잘 작동하였습니다. 이런 경우도 있을 수 있다는 점 참고해주세요.

 

  이외에도 여러 일이 있었지만, 이 정도가 가장 많은 시간과 노력이 필요했던 것 같습니다.

 

  아무튼 우여곡절 끝에 메일 서버를 구축하였습니다. 현재 Gmail에 있는 메일들을 전부 옮기고 있습니다. 그렇게 다 옮기고 나면 조금 안전해지려나요? :) 아니면 해커의 해킹을 받아서 더 망하게 될까요? 어떻게 될지 모르겠습니다만, 일단 그렇게 메일 서버를 설정하였다는 것을 여기에 적습니다.

Leave a Reply