리눅스

QMAIL+VPOPMIL 설치

gold99 2018. 12. 8. 21:07

-2005. 9. 7. 22:27-

 

a.txt 확인 해보기 사용 명령어 포함
(설치시 사용했던 명령어들)

참고 사이트(많이 참고 하자)
http://people.kldp.org/~eunjea/qmail/index.html

-사용한 파일
(압축 해제,패치 방법)

(
메일 설치법 : 매우 중요함
-설치 서버가 mail.xxxx.or.kr(메일서버) = www.xxxx.or.kr(도메인 서버) 같은 ip 여야 함
도메인 업체에서 확인

 ***  mail.xxxx.or.kr 메일 서버 확인 하기(ip) ***
)
--------------------------------------------------------------------------------------

-----------------------------------------------------------------------------------------

파일들

qmail-1.03.tar.gz 
qmail-1.03.errno.patch

ucspi-tcp-0.88.tar.gz 
ucspi-tcp-0.88.errno.patch

qmail/daemontools-0.76.tar.gz 
nugu/qmail/daemontools-0.76.errno.patch

autorespond-2.0.2.tar.gz

vpopmail-5.5.0.tar.gz

qmail-smtpd-auth-0.31.tar.gz
-------------------------------------------------------------------
(압축 해제 및 패치 방법)

tar xvzf qmail-1.03.tar.gz 
patch -p1 <../qmail/qmail-1.03.errno.patch

tar xzvf ucspi-tcp-0.88.tar.gz 
patch -p1 <../qmail/ucspi-tcp-0.88.errno.patch


tar xzvf /home/nugu/qmail/daemontools-0.76.tar.gz 
patch -p1 < /home/nugu/qmail/daemontools-0.76.errno.patch

tar xvzf qmail/vpopmail-5.5.0.tar.gz

tar xvzf qmail/qmail-smtpd-auth-0.31.tar.gz


----------------------------------------------------------------------
설치법
-----------
2.1. 유저, 그룹 추가
일단 타볼을 풀고

tar xzf qmail-1.03.tar.gz
cd qmail-1.03
patch -p1 <../qmail/qmail-1.03.errno.patch
-------------------------------------------------------

다음 디렉토리를 만든다.

 mkdir /var/qmail
 
그룹및 유저 생성

groupadd nofiles
useradd -g nofiles -d /var/qmail/alias alias
useradd -g nofiles -d /var/qmail qmaild
useradd -g nofiles -d /var/qmail qmaill
useradd -g nofiles -d /var/qmail qmailp
groupadd qmail
useradd -g qmail -d /var/qmail qmailq
useradd -g qmail -d /var/qmail qmailr
useradd -g qmail -d /var/qmail qmails 
 
-------------------------------------------------------

다음과 같이 qmail 바이너리를 만들고 인스톨 해준다.

$ make
$ make setup check
 

다음 기본 control 파일들의 설정을 위해

 ./config (이렇게 해서 도메인을 못잡거나 에러 나면).
 ./config-fast xxxx.or.kr ( 이럽게 직접 잡는다).

 

이것이 정상적으로 실행 되었다면 /var/qmail/control/ 안에는 qmail이 정상적으로 작동하기 위한 설정 파일들이 생겨야 한다. 만약 그렇지 않다면 서버의 DNS 설정(MX 레코드)에 문제가 있는 것이다.

이쯤에서 qmail을 위한 몇가지 부수적인 프로그램들 (ucspi-tcp , daemontools , autorespond)을 설치한다.
-----------------------------------------
ucspi-tcp

 tar xzf ucspi-tcp-0.88.tar.gz
 cd ucspi-tcp-0.88
 patch -p1 <../qmail/ucspi-tcp-0.88.errno.patch
 make
 make setup check
 
-----------------------------------------------
daemontools

 mkdir -p /package
 chmod 1755 /package
 cd /package
 

다운로드 받은 daemontools 소스 파일을 /package 로 옮긴 후 설치를 진행한다.

 mv ~/down/daemontools-0.76.tar.gz /package

 tar xzf daemontools-0.76.tar.gz
 rm daemontools-0.76.tar.gz
 cd admin/daemontools-0.76
patch -p1 < /home/nugu/qmail/daemontools-0.76.errno.patch 
 package/install


------------------------------------------------------------------- 
각 파일 설치도중   에러 나면 (패치 꼮 해주자 )

patch -p1 < ../qmail/qmail-1.03.errno.patch
patch -p1 <../qmail/ucspi-tcp-0.88.errno.patch
patch -p1 < /home/nugu/qmail/daemontools-0.76.errno.patch 
------------------------------------------------------------------------
autorespond

$ tar xzf autorespond-2.0.2.tar.gz
$ cd autorespond-2.0.2
$ make
$ cp autorespond /usr/local/bin/
 


--------------------------------------------------------------------------
2.3. 스크립트
--------------------------------------------------------------------------

모두 이상없이 설치가 되었다면 다시 qmail 운영에 필요한 스크립트들과 파일들을 만든다.
------------------------------------------------------------------------
vi /var/qmail/rc 의 내용
-------------------
#!/bin/sh
exec env - PATH="/var/qmail/bin:$PATH" \
qmail-start ./Maildir/
 
-----------------------------------
이 파일에 실행 퍼미션을 준다.

chmod a+x /var/qmail/rc
 

다음은 큐메일 데몬을 위한 디렉토리와 파일들을 생성.

mkdir -p /var/qmail/supervise/qmail-send/log
mkdir -p /var/qmail/supervise/qmail-smtpd/log
chmod +t /var/qmail/supervise/qmail-send
chmod +t /var/qmail/supervise/qmail-smtpd

---------------------------------------------------------
vi /var/qmail/supervise/qmail-send/run 의 내용
-----------------------------------------------
#!/bin/sh
exec /var/qmail/rc
-------------------------------------------------

vi /var/qmail/supervise/qmail-send/log/run 의 내용

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill \
     /usr/local/bin/multilog t /var/log/qmail
 
------------------------------------------------------------------------------------------
vi /var/qmail/supervise/qmail-smtpd/run 의 내용(이부분은 vpopmail 설정시 다시 수정함)
-------------------------------------------------------------------------------------------
#!/bin/sh
Q_UID=`id -u qmaild`
Q_GID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 8000000 \                         <---메모리 설정 많이 잡자
     /usr/local/bin/tcpserver -vRHl 0 -x /etc/tcp.smtp.cdb \
     -u $Q_UID -g $Q_GID 0 25 /var/qmail/bin/qmail-smtpd 2>&1
 

위와 같이 qmaild 의 UDI,GDI 를 사용 하거나, vpopmail을 사용할 것이라면 vpopmail 권한으로 실행되도록 한다.

--------------------------------------------------------------------

vi /var/qmail/supervise/qmail-smtpd/log/run 의 내용

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill \
     /usr/local/bin/multilog t /var/log/qmail/smtpd
 
------------------------------------------------------------
이렇게 편집한 파일들에 실행 권한을 준다.

$ chmod 755 /var/qmail/supervise/qmail-send/run
$ chmod 755 /var/qmail/supervise/qmail-send/log/run
$ chmod 755 /var/qmail/supervise/qmail-smtpd/run
$ chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
 

다음은 qmail-smtpd 를 위한 로그 디렉토리 만들기

$ mkdir -p /var/log/qmail/smtpd
$ chown qmaill /var/log/qmail /var/log/qmail/smtpd
 
------------------------------------------------------------------------------

5)----여기가 거기(밑에 SMTP 릴레이 부분 에 추가 내용 있음 )

vpopmail의 로밍 서비스(고정 IP를 가지고 있지 않은 POP 유저에게 SMTP 릴레이를 열어 주는 것)를 사용할 것 이라면 다음장으로 넘어간다.

다음 파일에는 qmail-smtpd가 릴레이를 허용 할 주소를 적어주는 것이다. 이 예에서 사용한 192.168.1.1은 설치할 서버의 실제 주소로 바꿔야 한다. 그외 릴레이를 허용할 주소가 있다면 같은 형식으로 추가한다.

-------------------------------------------------------------------------------------
(-나중에 outlookExpress등등 smtp 설정 부분에서 보내 주는 부분이 안될 때 설정 중요 잘 맞춰 줘야 함 )
(이 부분은 나중에 설치 다 하고 고쳐도 좋다)

/etc/tcp.smtp의 내용

127.0.0.1:allow,RELAYCLIENT=""    서버 위치
192.168.1.1:allow,RELAYCLIENT=""   서비 ip위치
58.140.225.59:allow,RELAYCLIENT=""  사용할 ip 위치
:allow       전체 사용
---------------------------------------------------
-----------------------------
/etc/tcp.smtp 기본 설정 파일 |보내는 부분 중요|
-----------------------------

이 파일은 실제로 tcpserver가 읽을 수 있는 cdb 형식으로 바꿔야 하므로 다음과 같이 해준다.
(밑에 처럼 해줌)

$ tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp (이부분)
(qmail 만 설치 했을 경우)
-----------------------------------------------------------------------------

(vpopmail 설치되어진 위치 ex) home/vpopmail/....~)
$ tcprules /home/vpopmail/etc/tcp.smtp.cdb /home/vpopmail/etc/tcp.smtp.tmp < /etc/tcp.smtp(이부분)
(qmail + vpopmail 설치 했을 경우)

qmail 스크립트  파일 (ex: qmail <--- qmail 시동 스크립트)

/etc/rc.d/init.d/qmail cdb  설정 바뀌고 난 후  꼭 해주기

-------------------------------------------------------
혹시 내용이 변화가 없을 수도 있으니

/etc/rc.d/init.d/qmail stop  그냥 해주고
/etc/rc.d/init.d/qmail start  이것도 그냥 해주고 
or 
/etc/rc.d/init.d/qmail restart 마찬가지

(편한거 쓰자)
------------------------------------------------------------------------------------------

2.4. 기본 alias 계정
-------------------------------------------------------------------------------------------
qmail은 root 계정으로 메일을 배달하지 않으므로, 알리아스를 반듯이 만들어 줍니다. 그리고 postmaster, mailer-daemon 도 역시 일반 계정으로 알리아스를 만드는 것이 좋습니다.

예를 들어 이 주소들로 도착하는 메일은 nugu 란 계정으로 받아보려면

$ echo admin > /var/qmail/alias/.qmail-root
$ echo admin > /var/qmail/alias/.qmail-postmaster
$ echo admin > /var/qmail/alias/.qmail-mailer-daemon
$ cd /var/qmail/alias/
$ chmod 644 .qmail-root .qmail-postmaster .qmail-mailer-daemon

 

---------------------------------------------------------------------------------
2.5. qmail 시동 파일
----------------------------------------------------------------------------------

레드헷 계열의 배포본에서 사용할 수 있는 qmail 데몬의 부트 스크립트이다.

#!/bin/sh

# For Red Hat chkconfig
# chkconfig: - 80 30
# description: the qmail MTA

PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin
export PATH

case "$1" in
  start)
    echo "Starting qmail"
  if [ -e /service/qmail-send ] ; then
   if svok /service/qmail-send ; then
   svc -u /service/qmail-send
  else
   echo qmail-send supervise not running
  fi
  else
   ln -s /var/qmail/supervise/qmail-send /service/
  fi

  if [ -e /service/qmail-smtpd ] ; then
   if svok /service/qmail-smtpd ; then
   svc -u /service/qmail-smtpd
  else
   echo qmail-smtpd supervise not running
  fi
  else
   ln -s /var/qmail/supervise/qmail-smtpd /service/
  fi
  
    if [ -d /var/lock/subsys ]; then
      touch /var/lock/subsys/qmail
    fi
    ;;
  stop)
    echo "Stopping qmail..."
    echo "  qmail-smtpd"
    svc -dx /service/qmail-smtpd /service/qmail-smtpd/log
  rm -f /service/qmail-smtpd
    echo "  qmail-send"
    svc -dx /service/qmail-send /service/qmail-send/log
  rm -f /service/qmail-send
    if [ -f /var/lock/subsys/qmail ]; then
      rm /var/lock/subsys/qmail
    fi
    ;;
  stat)
    svstat /service/qmail-send
    svstat /service/qmail-send/log
    svstat /service/qmail-smtpd
    svstat /service/qmail-smtpd/log
    qmail-qstat
    ;;
  doqueue|alrm|flush)
    echo "Flushing timeout table and sending ALRM signal to qmail-send."
    /var/qmail/bin/qmail-tcpok
    svc -a /service/qmail-send
    ;;
  queue)
    qmail-qstat
    qmail-qread
    ;;
  reload|hup)
    echo "Sending HUP signal to qmail-send."
    svc -h /service/qmail-send
    ;;
  pause)
    echo "Pausing qmail-send"
    svc -p /service/qmail-send
    echo "Pausing qmail-smtpd"
    svc -p /service/qmail-smtpd
    ;;
  cont)
    echo "Continuing qmail-send"
    svc -c /service/qmail-send
    echo "Continuing qmail-smtpd"
    svc -c /service/qmail-smtpd
    ;;
  restart)
    echo "Restarting qmail:"
    echo "* Stopping qmail-smtpd."
    svc -d /service/qmail-smtpd
    echo "* Sending qmail-send SIGTERM and restarting."
    svc -t /service/qmail-send
    echo "* Restarting qmail-smtpd."
    svc -u /service/qmail-smtpd
    ;;
  cdb)
    tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
    chmod 644 /etc/tcp.smtp.cdb
    echo "Reloaded /etc/tcp.smtp."
    ;;
  help)
    cat <<HELP
   stop -- stops mail service (smtp connections refused, nothing goes out)
  start -- starts mail service (smtp connection accepted, mail can go out)
  pause -- temporarily stops mail service (connections accepted, nothing leaves)
   cont -- continues paused mail service
   stat -- displays status of mail service
    cdb -- rebuild the tcpserver cdb file for smtp
restart -- stops and restarts smtp, sends qmail-send a TERM & restarts it
doqueue -- schedules queued messages for immediate delivery
 reload -- sends qmail-send HUP, rereading locals and virtualdomains
  queue -- shows status of queue
   alrm -- same as doqueue
  flush -- same as doqueue
    hup -- same as reload
HELP
    ;;
  *)
    echo "Usage: $0 {start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help}"
    exit 1
    ;;
esac

exit 0
 

위의 것을 그대로 복사,저장 하거나 이곳에서 받을수 있다. 이것을 /etc/rc.d/init.d/ 에 qmail 이라는 이름으로 저장 한 후 실행 퍼미션을 준다. 다음 ntsysv 실행시키면 qmail 이라는 새로운 항목이 보일것이다. 리부팅 할때 qmail 데몬이 실행되도록 체크해준다.

--------
chmod 755 qmail
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.1. 유저, 그룹 추가
vpopmail이 제대로 작동하려면 vpopmail이 사용할 유저와 그룹을 만들어야 한다.

$ groupadd vchkpw
$ useradd -g vchkpw vpopmail
 

이때 생성되는 vpopmail 홈 디렉토리에는 앞으로 추가할 도메인들의 모든 이메일 계정, 메일들이 저장될 곳이므로, 공간이 넉넉한 파티션을 고르는 것이 좋겠다. 다른 파티션을 사용할 것이라면 다음과 같이 할수 있다.

$ useradd -g vchkpw -d /원하는/파티션의/디렉토리를/지정 vpopmail

------------------------------------------------------------------------------------------
1.2. 컴파일 옵션
-------------------------------------------------------------------------------------------
이제 vpopmail 을 설치하자.

$ tar xzf vpopmail-5.2.tar.gz
$ cd vpopmail-5.2
 

참고: vpopmail 5.4.x 이상 버전은 --enable-default-domain 컴파일 옵션이 없어지고 ~vpopmail/etc/defaultdomain 파일을 사용하도록 되었다. 이 파일에 직접 default domain 이름을 넣어주면 된다.

 


$ ./configure --enable-roaming-users=y
$ make
$ make install-strip
 


---------------------------------------------------------------------------------
1.3. SMTP 릴레이 설정 5) 번 내용을 보고 확인함
--------------------------------------------------------------------------------------
5)에서 설정 다 해줬음 여기는 그냥 따라 해주면 됨.


vpopmail의 로밍서비스는 고정되어 있지 않은 IP사용자들에게 smtp 릴레이를 지원해 줄수 있는 기능이다. vpopmail은 먼저 POP 메일 유저의 암호를 확인한다음 얼마만큼의 시간동안 그 IP주소의 smtp 릴레이를 열어 놓게 된다. 다음과 같이 기본적인 tcp.smtp 파일을 만든다.

echo "127.0.0.:allow,RELAYCLIENT=\"\"" > ~vpopmail/etc/tcp.smtp
 

~vpopmail <- 이게 설치 홈임
ex)/home/vpopmail/etc/tcp/smtp 이 위치 (본인의 설치 경로 . 틀려질수도 있음)

 

이제 기본 릴레이 파일을 만들었다면 다음 명령을 한번 실행해 준다.

~vpopmail/bin/clearopensmtp
 

마지막으로 crontab을 하나 설정해야 하는데, 이것은 cron에 의해 주기적으로 실행되어 릴레이가 허용된 IP 주소중 pop 인증 시간이 한시간 이상된 것이 있으면 지워준다. vpopmail 컴파일시 별다른 옵션을 주지 않았다면 기본적으로 릴레이 허용 시간은 한시간이며 이것은 --enable-relay-clear-minutes= 옵션으로 바꿔줄수 있다.

# crontab -e
40 * * * * /home/vpopmail/bin/clearopensmtp
 

qmail-smtpd 시동 스크립트는 vpopmail이 조절하는 cdb 파일을 참고하도록, 다음과 같이 바꾼다.

/var/qmail/supervise/qmail-smtpd/run 의 내용

#!/bin/sh
Q_UID=`id -u vpopmail`
Q_GID=`id -g vpopmail`
exec /usr/local/bin/softlimit -m 8000000 \
   /usr/local/bin/tcpserver -vRHl 0 \
   -x /home/vpopmail/etc/tcp.smtp.cdb \    <--    5)vpopmail/ 설정 부분 위치
   -u $Q_UID -g $Q_GID 0 25 /var/qmail/bin/qmail-smtpd 2>&1
 
///////////////////////////////////////////////////////////////////////////////
1.4. pop3 시동 파일
vpopmail 의 pop3 시동 파일을 만들자. 적당한 곳에 디렉토리를 만들고 run 파일을 만든다.

$ mkdir /var/qmail/supervise/vpop
 

이 예제에서 babo.org는 서버의 도메인이다. vpopmail 설치시 --enable-default-domain 를 주고 설치했다면 더 안전하게 pop3 데몬을 vpopmail 유저 권한으로 실행시킬수 있다.

/var/qmail/supervise/vpop/run 파일의 내용

#!/bin/sh
VPOP_UID=`id -u vpopmail`
VPOP_GID=`id -g vpopmail`

exec /usr/local/bin/softlimit -m 7500000 \
     tcpserver -vRHl 0 -u $VPOP_UID -g $VPOP_GID 0 110 \
     /var/qmail/bin/qmail-popup xxxx.or.kr \
     /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1
 

이 파일에 실행 권한을 준다.

$ chmod 755 /var/qmail/supervise/vpop/run
~vpopmail/bin 디렉토리 안에 가상 도메인 관리를 위한 바이너리들이 있는데 다음과 같은 기능을 한다.

새로 생성시

./vadddomain xxxx.or.kr   (도메인 생성)
./vadduser nugu@xxxx.or.kr  (유저 생성)


------------------------------------------------------------------------------------

1.5. 도메인, 메일 계정 추가하기 
---------------------------------------------------------------------------------------
~vpopmail/bin 디렉토리 안에 가상 도메인 관리를 위한 바이너리들이 있는데 다음과 같은 기능을 한다.

표 1-1. 각 바이너리들의 용도

vadddomain 가상 도메인을 추가한다. postmaster 암호를 물어보는데 이것은 다음에 설치할 qmailadmin 웹 인터페이스에서 로그인 할때 물어볼 암호이다. 형식은 vadddomain 도메인명 
vdeldomain 가상 도메인과 모든 유저를 삭제한다. vdeldomain 도메인명 
vadduser pop 메일 유저 계정을 만든다. vadduser babo@babo.org 
vdeluser pop 메일 유저 삭제. vdeluser babo@babo.org 
vpasswd 메일 유저의 암호 바꾸기. vpasswd babo@babo.org 
vsetuserquota 각 유저 별로 quota 설정을 할수 있다. vsetuserquota babo@babo.org 51200 (단위는 byte 이다). 
vpopbull 서버에 설정되어 있는 모든 유저들에게 한번에 메일을 보낼때 유용하게 사용할수 있다.

 

다음 qmail 설정 파일들이 제대로 바뀌었는지 확인해보자. 주 도메인도 vpopmail이 관리하기로 했다면 /var/qmail/control/locals 파일의 내용은 localhost 만이 있어야 정상이다. qmail smtpd가 이 서버의 것이라고 인식하며 메일을 수신할 도메인들은 다음과 같이 rcpthosts 에 저장될 것이다.
---------------------------------
vi /var/qmail/control/locals

localhost    <- 이것만 넣자 나머지 있으면 다 지우고 
---------------------------
vi /var/qmail/control/rcpthosts

localhost
xxxx.or.kr  
xxx.xx.xx <- 추가한 도메인이 있으면 더 생김
---------------------------------

vi /var/qmail/control/virtualdomains

xxxx.or.kr:xxxx.or.kr    
xxx.xxx.xx:xxx.xxx.xxx <-추가한 도메인이 있으면 더생김

--------------------------------

/var/qmail/users/assign 의 내용은
+xxxx.or.kr-:xxxx.or.kr:527:1007:/home/vpopmail/domains/xxxx.or.kr:-::

추가한 내용이 있으면 더 있음

------------------------------------------------------------------

필요한 도메인, 메일 계정을 모두 추가했다면 우리는 이제 준비가 끝난 셈이다.
-------------------------------------------------------------------------------
1장. qmail 데몬 시작하기
차례
1.1. qmail
1.2. 서버 제어
모든 설정이 확실히 되었다고 생각된다면 이제 우리는 sendmail을 가차없이 죽이고 qmail 로 돌아설 때가 되었다. ;-)


--------------------------------------------------------------------------------

---------------------------------------------------------------------------------------
1.1. qmail
--------------------------------------------------------------------------------
만약 이전 sendmail이 아직 전송하지 못한 메일들이 메일큐에 쌓여 있다면 sendmail -q 를 실행 시켜서 전송을 마쳐 주어야 한다. 메일이 많이 쌓여 있을경우 이것은 한번의 실행으로 끝나지 않을수도 있다.

/etc/rc.d/init.d/sendmail stop 또는 다른 방법으로 sendmail 을 죽인다.

기존의 sendmail 바이너리를 qmail 의 것으로 바꾼다.

mv /usr/lib/sendmail /usr/lib/sendmail.old
mv /usr/sbin/sendmail /usr/sbin/sendmail.old
ln -s /var/qmail/bin/sendmail /usr/lib
ln -s /var/qmail/bin/sendmail /usr/sbin
 

qmail 시동

$ ln -s /var/qmail/supervise/qmail-send /service/
$ ln -s /var/qmail/supervise/qmail-smtpd /service/
 

이렇게 /service 디렉토리에 링크를 한번 걸어주면 링크가 존재하는 한 즉, 재부팅 한다해도 daemontools에 의해서 자동으로 서비스가 시작된다.
------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
 SMTPD-AUTH 
------------------------------------------------------------------------------------------
모든작업은 root 에서 작업.

일단 큐메일을 정지.

$ /etc/rc.d/init.d/qmail stop


큐메일에 SMTPD-AUTH 를 패치.

$ tar xzf qmail-smtpd-auth-0.30.tar.gz
$ cd qmail-smtpd-auth-0.30
$ cp README.auth base64.c base64.h ../qmail-1.03
$ patch -d ../qmail-1.03 < auth.patch


패치 되었으면 큐메일 재컴파일 및 설치

$ cd ../qmail-1.03
$ make
$ make setup check


제대루 패치되었는지 확인.
큐메일을 다시 기동시키고

$ /etc/rc.d/init.d/qmail start


확인 부분

$ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 foobar.org ESMTP
ehlo localhost <-- 이 부분은  입력한 부분
250-foobar.org
250-PIPELINING
250-AUTH LOGIN CRAM-MD5 PLAIN  <-- 이 부분이 나오면 정상입니다.
250-AUTH LOGIN CRAM-MD5 PLAIN  <-- 본인 설치시 두개 나옴
250 8BITMIME


이렇게 확인 하고

$ telnet localhost 110 도 확인하고

[root@www root]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK <9141.1123508466@xxxx.or.kr>
user nugu  <-  사용자 아이디 입력 
+OK


이렇게도 확인하고

vi /etc/sysconfig/iptables

이부분에서

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT


ACCEPT 부분도 확인하자

포트 확인하고 25(smtp) 110(pop3) 포트 꼭 확인 하고 열어 주자


이제
루트들 일반 사용자든 어디에서 
[root@www root]# echo to:nugu@xxxx.or.kr | /var/qmail/bin/qmail-inject
이렇게 확인 하고 
다른 메일에서 등록한 nugu@xxxx.or.kr 이라곳으로 보내어 보자
(시간 문제 해결은 못했음)
보낸 시간이 틀려지면 잘 고치자..

'리눅스' 카테고리의 다른 글

ssh 접근 방법 제한  (0) 2018.12.08