QMail 릴레이 설정관련 질문입니다

maccapa의 이미지

사내 메일서버에서 sendmail을 쓰다가 보안에 문제가 있어서 이번에 qmail로 바꾸었습니다.
근데 qmail 릴레이설정은 이해가 잘 되지 않네요.
sendmail은 access파일에다 로컬과 메일서버ip만 RELAY를 허용해서
릴레이를 막아도 어떤 주소로(empal, naver, hanmail 등)라도 메일송신이 가능하고 또 릴레이도 닫게 되는데요.
근데 qmail은 rcphosts 파일에다 보낼수 있는 메일호스트를 다 등록해야만
메일송신이 가능하다고 그러네요.
아래문서를 읽어보면 rcpthosts 파일에다 메일이 나갈모든 주소를
다 적어줘야 하는데요. 그러면 엄청 불편할거 같네요.
http://qmail.kldp.org
http://www.palomine.net/qmail/relaying.html

질문의 요지는 qmail을 사용할때 릴레이를 모두 닫고 일일이 rcpthosts에
등록하지 않아도 모든 메일주소로 송신이 가능하게 할수 있는냐 입니다.

왜 송신할 가능성이 있는 모든 주소들을 다 등록해야 하고
릴레이를 닫을수 없나요 ? 분명히 qmail에도 있을거 같은데 ..

감사합니다.

codebank의 이미지

maccapa wrote:
질문의 요지는 qmail을 사용할때 릴레이를 모두 닫고 일일이 rcpthosts에
등록하지 않아도 모든 메일주소로 송신이 가능하게 할수 있는냐 입니다.

왜 송신할 가능성이 있는 모든 주소들을 다 등록해야 하고
릴레이를 닫을수 없나요 ? 분명히 qmail에도 있을거 같은데 ..


qmail 자체에는 자동으로 해주는 기능이 없는걸로 알고 있습니다.
저도 사실 qmail을 사용하면서 그것까지는 알아보진 않았었는데 rcpthosts에
자동으로 추가/수정하는 기능이 vpopmail에 있다고 하는군요.
http://qmail.kldp.org/wiki/wiki.php/QmailRelay%BE%CF%C8%A3%C0%CE%C1%F5STARTTLS#s-1.1.2
다행인지 저는 qmail+vpopmail을 이용해서 웹메일과 모질라메일을 사용하고 있죠.
pop3도 잘되고 smtp도 잘되고 있습니다.
vpopmail을 사용할 것을 한번 고려해보시면 어떨까요?

------------------------------
좋은 하루 되세요.

maccapa의 이미지

네 . 답변 감사합니다.
문서를 보니까 rcpthosts파일은 릴레이하고 별로 상관이 없는거 같네요.
그래서 rcpthosts을 지워버리니까 어떤주소로도 메일이 나가네요.

근데 문제는 tcp.smtp 파일에다 로컬호스트와 우리 메일서버주소만
적어주고 cdb 파일로 적용시켰는데도 아래에서 테스트해보면
릴레이가 열려 있을수 있다고 나오네요. 답변이 좀 애매하긴 하지만,,,
위 문서에 보면 이렇게 설정하면 릴레이가 막혀야 하는데요 .

http://www.abuse.net/relay.html

저희 메일서버가 릴레이가 막혀있지 않아서 empal 같은 사이트에서
스팸으로 등록되어 버렸습니다.
어떻게 해야 하나요 ?

감사합니다.

woonuk의 이미지

maccapa wrote:
근데 qmail은 rcphosts 파일에다 보낼수 있는 메일호스트를 다 등록해야만
메일송신이 가능하다고 그러네요.
아래문서를 읽어보면 rcpthosts 파일에다 메일이 나갈모든 주소를
다 적어줘야 하는데요. 그러면 엄청 불편할거 같네요.

rcpthosts 파일은 메일서버가 받아서 처리할 도메인만 입력하세요.
지구상에 존재하는 모든 도메인을 입력해야 하는게 아닙니다 -_-;;

파일을 지워버리면, 메일서버는 오픈릴레이 상태가 됩니다.
절대로 있어야만 합니다.

* 릴레이 허용
http://qmail.kldp.org/faq/servers.html#authorized-relay

smtp-auth 패치를 하거나, pop-auth 를 사용할 수도 있습니다.

maccapa의 이미지

지구상에 모든 도메인을 다 적을수 없어서 물어본겁니다.
메일서버에 등록된 모든 계정은 어떤 도메인으로 다 보낼수 있어야 합니다.
어떤 도메인으로 보낼지 알수가 없잖아요 . ㅡㅡ;
어떤 도메인으로 다 보낼수 있으면서 다른 릴레이허용은 막겠다는 겁니다.
sendmail 같은 경우는 access파일에만 메일서버ip를 릴레이설정하면
릴레이는 막히면서 서버계정사람들은 모든 도메인으로 메일을 보낼수 있습니다.

그렇게 할려면 qmail에는 어떻게 설정해야 하는지가 궁금한겁니다.
/etc/tcp.smtp 파일에는 로컬과 메일서버ip만 릴레이가 허용되어 잇습니다.
그럼 릴레이가 막히고 모든 도메인으로 메일이 송신이 되어야 하는데
릴레이가 오픈되어 버리는게 문제죠.
그렇다고 rcpthosts파일에다 자주 사용하는 몇가지 도메인으로 적어줘도
릴레이는 그대로 오픈되어 있는 상태로 나옵니다.

$ cat /etc/tcp.smtp
127.0.0.1:allow,RELAYCLIENT=""
61.82.131.247:allow,RELAYCLIENT=""
:allow

궁극적인 목적은 릴레이는 허용하지 않으면서 메일서버 계정의 사용자는
모두 어떤 도메인으로라도 메일을 보낼수 있어야 합니다
사내메일서버인데 이런건 당연한거 아닌가요 ?
qmail로 운영중인 다른 회사에서는 어떻게 사용하는지요 ?

미리 감사드립니다.

bkbm의 이미지

그건 말이 안되죠. 미리 메일 받을 주소 리스트를 만들다니요.

결국 사소한데 문제가 있을 것 같습니다. 님의 설정 파일을 보니 맨 끝줄에
:allow
가 있군요? 그렇게 하면 아무 주소나 릴레이 허가한다는 식이 되지 않을지?
그 라인은 지우시고, 테스트를 위해 릴레이 허용할 ip를 그 파일에 집어넣었을 때와 뺐을 때 그 ip에서 메일 전송이 가능한지 보십시오.

참고로 제 설정파일은 rcpthosts에는 로컬 주소만 들어있습니다. 즉 나 자신에게 오는 메일만 처리해주마...하는 거죠. 다른 곳으로 가는 메일요청이 들어오면 tcp.smtp가 작용하기 시작하는 겁니다.

삶의여유의 이미지

/etc/tcp.smtp 가 센드메일의 access (요새는 relay-domains) 역할을 합니다.
즉, 회사내 ip 대역을 적어주면 되는 것이고 이곳에서 허용한 ip 외에는
메일서버를 이용할 수 없는 것이죠.
만약 이곳에서 허용한 ip 가 아닌데도 메일을 보낼 수 있다면 그건 설정이
잘못 되었을 겁니다. (대부분 실행 스크립트에서 옵션 빼먹는 등의 오류)

rcphosts 는 다중 도메인을 이용할 때 필요한 것으로 센드메일의
local-host-names 로 보면 됩니다.

bh의 이미지

maccapa wrote:
지구상에 모든 도메인을 다 적을수 없어서 물어본겁니다.
메일서버에 등록된 모든 계정은 어떤 도메인으로 다 보낼수 있어야 합니다.
어떤 도메인으로 보낼지 알수가 없잖아요 . ㅡㅡ;
어떤 도메인으로 다 보낼수 있으면서 다른 릴레이허용은 막겠다는 겁니다.
sendmail 같은 경우는 access파일에만 메일서버ip를 릴레이설정하면
릴레이는 막히면서 서버계정사람들은 모든 도메인으로 메일을 보낼수 있습니다.

그렇게 할려면 qmail에는 어떻게 설정해야 하는지가 궁금한겁니다.
/etc/tcp.smtp 파일에는 로컬과 메일서버ip만 릴레이가 허용되어 잇습니다.
그럼 릴레이가 막히고 모든 도메인으로 메일이 송신이 되어야 하는데
릴레이가 오픈되어 버리는게 문제죠.
그렇다고 rcpthosts파일에다 자주 사용하는 몇가지 도메인으로 적어줘도
릴레이는 그대로 오픈되어 있는 상태로 나옵니다.

$ cat /etc/tcp.smtp
127.0.0.1:allow,RELAYCLIENT=""
61.82.131.247:allow,RELAYCLIENT=""
:allow

궁극적인 목적은 릴레이는 허용하지 않으면서 메일서버 계정의 사용자는
모두 어떤 도메인으로라도 메일을 보낼수 있어야 합니다
사내메일서버인데 이런건 당연한거 아닌가요 ?
qmail로 운영중인 다른 회사에서는 어떻게 사용하는지요 ?

미리 감사드립니다.


http://www.abuse.net/relay.html
위에서 테스트 한 결과를 액면 그대로 믿으셨나요?
그걸 그대로 믿었기 때문에.. 지금 오픈릴레이에 대한 개념조차 혼동하고 있는거 같아요..

qmail 을 만든 저자가 운영하는 메일서버(a.mx.cr.yp.to)도 오픈릴레이 테스트를 해보셔요..
어떤 결과가 나오는지.. ㅡㅡ;;

--
이 아이디는 이제 쓰이지 않습니다.

sunyzero의 이미지

rcpt는 받는 쪽을 의미하는 receipt 를 의미합니다.

즉 내 메일서버가 받는 것을 의미하는데 이게 송신(send)과 무슨 상관이 있지 않습니다. 메일관련 명령어를 보시면 rcpt에 대한 설명이 나옵니다. 릴레이는 메일을 중계할 수 있는 권한을 주는 것입니다. 즉 메일서버가 없어도 메일서버가 있는 것처럼 클라이언트에서 접속해서 메일을 보낼 수 있는 권한을 주는 것으로서 스패머를 막기 위한 보안관련설정중 하나입니다.

qmail의 설정은 아주 직관적이여서 sendmail보다 쉽습니다. 모든 명령과 설정이 SMTP를 알게되면 매우 쉽죠. 차근차근 매뉴얼과 FAQ를 읽어보시면 쉽게 답을 얻을 수 있을거 같습니다.

========================================
* The truth will set you free.

bkbm의 이미지

저기...딴지거는거 같아 죄송하지만,
rcpt 는 recipient 를 의미하는 것으로 압니다만....

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.