ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SUSE linux (opensuse) 11.1 - Sendmail 셋팅
    Linux 2009. 4. 15. 16:46
    우선 sendmail이 깔려있는지 확인해봅시다.

    #rpm -qa | grep sendmail
    없다고 나오면 깔면 됩니다.

    전제 : suselinux 기본 software pack으로 sendmail을 설치한다

    소프트웨어 관리에서 sendmail이라고 검색해서 기본 팩을 설치합니다.
    postfix가 삭제되지만 상관없습니다.
    편지를 보내기만 할 것이므로 imap과 pop3는 셋팅 안하겠습니다.

    근데 설치하다보면 시디 넣으라고 에러 날 때 있습니다. cd로 추가팩을 깔았으니 나오는 현상인데요
    저장소를 변경해주면 됩니다. 변경 방법은 아래를 참고하세요
    http://blog.naver.com/yoods81?Redirect=Log&logNo=80042622426
    cd만 enabled 체크 해제하면 되겠죠?


    * 모든 적용 후에는 서비스를 리스타트 해 줍시다
    방법 1)
    #cd /etc/init.d
    #./sendmail restart
    방법 2)
    #/etc/init.d/sendmail restart


    우리가 셋팅할 파일은 총 4개입니다

    sendmail.cf
    access
    local-host-names
    relay-domains


    우선 sendmail.cf를 건드려 보죠

    #vi etc/sendmail.cf로 들어갑니다
    중간에 내리다 보면
    Cwlocalhost라고 써있는곳이 있는데 아래다가
    Cw"도메인이름" 을 하나 추가해줍니다
    도메인 이름은 현 서버에서 진짜 사용하고 있는 도메인 이름을 써 줘야 합니다.

    바로 아래 보면

    Fw/etc/mail/local-host-names &[^/#]
    이라고 써있는부분이 있을텐데 저렇게 안써있으면 저렇게 고쳐줍시다
    local-host-names는 호스트 부분의 이름이 들어있는 파일로 저걸 참고해줘야 합니다
    &[^/#]는 실험 결과 없어도 잘 됩니다. 근데 저게 기본값이니 혹시 몰라 냅뒀습니다

    내리다보면
    #DnMAILER_DAEMON
    이라고 있는 부분이 있는데 그 아래다가

    #Access table (주석입니다)
    Kaccess hash -o /etc/mail/access
    이 두 줄을 추가해줍시다
    외부 서버 액세스 정보를 가지고 있는 파일을 지정해주는겁니다.
    사실 기본값인데 추가했습니다. 위치는 꼭 MAILER_DAEMON 아래가 아니어도 관계없습니다

    또 내리다 보면
    #SMTP daemon options가 보일겁니다 (주석으로 처리된 부분)
    그 아래를
     # O DaemonPortOptions=Port=smtp, Addr=127.0.0.1, Name=MTA 에서
    DaemonPortOptions=Port=smtp, Name=MTA 라고 고쳐줍시다.
    smtp데몬이 로컬상이 아니라 외부에서도 작동하도록 하게 해주는 작업입니다.

    다음은
    #mininum time in queue before retry가 보일텐데 이는 전송이 실패했을 경우에 재전송하는 시간을 설정하는 부분입니다
    O MinQueueAge=30m 이라고 되어 있는데, 30분마다 다시 보내는 겁니다.

    바로 아래에
    #how many jobs can you process in the queue? 라는 부분은
    하나의 큐에서 처리 가능한 사이즈를 말합니다. 현재는
    O MaxQueueRunSize=10000으로 설정해놓고, 큐는 총 6개를 사용합니다.
    큐를 여러개 사용하는 이유는 메일 전송 속도를 빠르게 하기 위함인데, 이 설정은 뒤에서 설명하겠습니다

    한 두줄쯤 아래에
    #queue directory라고 보일텐데
    O QueueDirectory=/var/spool/mqueue/ 를
    O QueueDirectory=/var/spool/mqueue/q* 으로 수정해줍시다. 다중큐를 사용하기 위한 설정입니다.


    다음은 access 를 수정합시다.

    이는 외부의 접근을 통제하는 파일입니다.
    #vi /etc/mail/access 로 열어줍니다

    세부 내역은 처음에 주석으로 설명된 부분만 읽어봐도 충분하다고 생각하지만 내용을 쓰겠습니다.
    # Default for loop back is RELAY
    아래에 추가될 호스트를 넣습니다.
    현재 localhost RELAY라고 써 있을텐데, 이는 로컬호스트(자신) 이 보내는 편지는 통과시키겠다라는 뜻입니다.
    그러면 이제 접근을 허용할 서버들을 쭉 써줍시다.

    현재는
    localhost
    127.0.0
    192.168.0
    등이 RELAY (허가) 상태로 되어 있습니다.

    만약 특정 도메인은 차단시키고 싶다면 RELAY가 아니라 REJECT로 설정해주면 됩니다.
    스팸 차단 같은 경우 좋은 활용을 할 수 있습니다.
    그리고 도메인과 RELAY는 스페이스가 아니라 반드시 TAB으로 구분해줘야 합니다.

    다 작성했으면 저장 후
    #makemap hash /etc/mail/access < /etc/mail/access
    라고 입력합니다.
    access파일은 access.db를 통해서 관리되기 때문에 해주는 일입니다.


    이제 local-host-names를 보죠

    이 파일은 메일을 받을 곳의 호스트 네임을 적는 곳입니다. 위에도 설명해놨죠?

    #vi /etc/mail/local-host-names 로 들어갑니다
    #<aliases for local host> 아래다가 호스트 이름을 추가해줍시다.

    현재는
    localhost
    192.168.0
    등으로 설정되어 있습니다. 딱히 그 이후에 건드릴건 없습니다.


    relay-domains을 수정합시다

    사실 뭔지도 모르겠 access가 있는데 이게 왜 또 있는지 모르겠지만 이거 안하니 안될때가 있더군요. 설정해줍시다.
    #vi /etc/mail/relay-domains로 열어서 access와 똑같이 해줍시다.



    큐 디렉토리를 이용하여 속도 향상하기

    O QueueDirectory=/var/spool/mqueue/q*
    작업이 선행되어 있어야 합니다.

    #cd /var/spool/mqueue
    #mkdir q1 q2 q3 q4 q5 q6 (큐로 쓸 디렉터리를 여러개 만듭니다)
    #chown root.mail q*

    서비스 리스타트


    Realying denied. IP name lookup ~  error 대처

    #vi /etc/mail/local-host-names
    에 도메인 등록 후

    서비스 리스타트
    #cd /etc/init.d
    #./sendmail restart

    사실 이것만 해서 해결되는게 아니라 access등 기타 문제가 더 클 수 있습니다.
    그래서 sendmail.cf, local-host-names, access, relay-domains를 모두 건드려봐야 합니다. 수고하시길

    리부팅시 자동실행

    #cd etc/init.d
    # chkconfig --add sendmail
    # chkconfig --level 2345 sendmail on


    참고자료
    http://blog.naver.com/zenix4078?Redirect=Log&logNo=10935880   // 추천
    http://blog.naver.com/jistol?Redirect=Log&logNo=80050760602      // 추천
    http://blog.naver.com/saint7710?Redirect=Log&logNo=10042274293
    http://jjangu.pe.kr/blog/343
    http://www.superuser.co.kr/home/superuserboard/view.html?code=sendmail&id=2298
    http://kin.naver.com/detail/detail.php?d1id=1&dir_id=10202&eid=e0avycDcoiCFMnq4M8FNsOWme4ihLJdl&qb=c2VuZG1haWwgL2xvZw==&enc=utf8
    http://cafe.naver.com/dungg.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=817
    http://juunoya.net/blog/?page=49

    에러 메시지
    http://kin.naver.com/knowhow/entry.php?d1id=8&dir_id=8&eid=iAaMqijNLa7tB6aKYQ6O2qwabe3uJiSJ&qb=NS4xLjEg7JeQ65+s&enc=utf8

    'Linux' 카테고리의 다른 글

    리눅스 명령어 요약  (0) 2009.04.15
    SUSE linux (opensuse) 11.1 - Subversion 셋팅  (0) 2009.04.15
    SUSE linux (opensuse) 11.1 - Mysql 설치와 셋팅  (0) 2009.04.15
Designed by Tistory.