qmail 587 포트 추가하기

리눅스/Mail|2015. 1. 23. 09:32
반응형

1.  submission 구동 디렉토리 생성

아래 경로의 qmail-smtpd 디렉토리를 복사하여 qmail-smtpd-submission 디렉토리를 만듭니다.

[root@sysdocu ~]cp -arp /var/qmail/supervise/qmail-smtpd  /var/qmail/supervise/qmail-smtpd-submission

 

 

2. 심볼릭링크 파일 생성
[root@sysdocu ~]cd /service
[root@sysdocu service]ln -s /var/qmail/supervise/qmail-smtpd-submission/ qmail-smtpd-submission

 

 

3. 파일 내용 수정

아래 스크립트 파일을 열어 내용을 변경합니다.

[root@sysdocu service]vi /var/qmail/supervise/qmail-smtpd-submission/run

변경전 : 25

변경후 : 587

 

아래 스크립트 파일을 열어 내용을 변경합니다.

[root@sysdocu service]vi /service/qmail-smtpd-submission/log/run
변경전 : /var/log/qmail/smtpd

변경후 : /var/log/qmail/smtpd-submission

 

 

4. qmail 구동 스크립트 파일 수정

아래 파일을 열어 submission 구동 부분을 삽입합니다.

[root@sysdocu service]vi /etc/init.d/qmail

start) 부분

if [ -e /service/qmail-smtpd-submission ] ; then
        if svok /service/qmail-smtpd-submission ; then
            svc -u /service/qmail-smtpd-submission
        else
            echo qmail-smtpd-submission supervise not running
        fi
     else
        ln -s /var/qmail/supervise/qmail-smtpd-submission /service/
fi

 
stop) 부분
    echo "  qmail-smtpd-submission"
    svc -dx /service/qmail-smtpd-submission /service/qmail-smtpd-submission/log
    rm -f /service/qmail-smtpd-submission

 
stat) 부분
    svstat /service/qmail-smtpd-submission
    svstat /service/qmail-smtpd-submission/log

 
pause) 부분
    echo "Pausing qmail-smtpd-submission"
    svc -p /service/qmail-smtpd-submission

 
cont) 부분
    echo "Continuing qmail-smtpd-submission"
    svc -c /service/qmail-smtpd-submission

 
restart) 부분
    echo "* Stopping qmail-smtpd-submission."
    svc -d /service/qmail-smtpd-submission

 

 

5. iptables 수정

587 포트를 추가 합니다.

 

반응형

댓글()

Roundcubemail 패스워드 플러그인 사용하기

리눅스/Mail|2015. 1. 23. 09:31
반응형

vpopmail 과 MySQL 연동하는 메일서버 환경에서만 사용 가능합니다.

 

1. 파일 생성

라운드큐브메일이 설치된 디렉토리의 plugins/password 디렉토리로 이동합니다.

cd /home/sysdocu/public_html/webmail/plugins/password

 

샘플 파일로 설정파일을 만듭니다.

cp -arp config.inc.php.dist config.inc.php

 

 

2. 파일 내용 수정

config.inc.php 파일을 수정하여 아래 내용으로 변경, 삽입합니다.

 

$rcmail_config['password_driver'] = 'sql'; 
$rcmail_config['password_confirm_current'] = true;

$rcmail_config['password_db_dsn'] = 'mysql://vpopqmail:sysdocupasswd@localhost/vpopqmail';  // DB, 계정, 패스워드를 수정하세요. (패스워드에 골뱅이가 들어가면 안되므로 다른방식으로 설정해야합니다.)

 

// 아래 3줄은 멀티도메인 사용시 도메인을 구분하기위해 새로 입력한 부분입니다.

// 또한 webmail.sysdocu.com 과 같이 웹메일에 접속할 경우 webmail. 서브도메인을 제거하기 위한 작업도 있으니

// 사용하는 환경에 따라 코드를 수정하여 사용하세요.

$real_domain=$_SERVER["HTTP_HOST"];
$real_domain=str_replace('.', '_', $real_domain);
$real_domain=substr($real_domain, 8, 256);

 

$rcmail_config['password_query'] = "UPDATE $real_domain set pw_passwd=ENCRYPT(%p,concat("$1$",right(md5(rand()), 8),"$")),pw_clear_passwd=%p where pw_name=%l";

 

main.inc.php 파일을 열어 아래 내용으로 변경합니다.

# vi /home/sysdocu/public_html/webmail/config/main.inc.php

 

$rcmail_config['plugins'] = array('password');

 

반응형

댓글()

qmail 로 오픈된 110번 포트로 로그인이 되지 않을경우

리눅스/Mail|2015. 1. 23. 09:31
반응형

vpopmail 이 연동되어있는 qmail 로 아웃룩 접속을 시도했을때

아래와 같이 에러메세지가 나타날 경우가 있습니다.

이에 대한 해결 방법입니다.

 

[에러]

 

메일 서버에 로그온하는 데 문제가 있습니다. 지정한 암호가 거부되었습니다.
계정: 'mail.sysdocu.com', 
서버: 'mail.sysdocu.com', 
프로토콜: POP3, 
서버 응답: '/home/vpopmail/bin/vchkpw: error while loading shared libraries: libk5crypto.so.3: failed to map segment from shared object: Cannot allocate memory', 
포트: 110, 
보안(SSL): 아니오, 
서버 오류: 0x800CCC90, 
오류 번호: 0x800CCC92

 

 

[해결]

 

아래 파일의 내용을 수정합니다.

vi /var/qmail/supervise/vpop/run

 

기존의 softlimit -m 값을 높여서 저장하고 qmail 을 재시작하면 pop3 로그인이 가능해집니다.

(저는 30000000 값을 90000000 로 변경하였습니다.) 

exec /usr/local/bin/softlimit -m 90000000 tcpserver -vRHl 0 -u $VPOP_UID -g $VPOP_GID 0 110 /var/qmail/bin/qmail-popup sysdocu.com /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1

 

또 아웃룩으로 smtp 를 통해 메일을 발송한다면 아래 파일도 수정을 해줍니다.

 

vi /var/qmail/supervise/qmail-smtpd/run

 

exec /usr/local/bin/softlimit -m 90000000 /usr/local/bin/tcpserver -vRHl 0 -x /home/vpopmail/etc/tcp.smtp.cdb -u $Q_UID -g $Q_GID 0 25 /var/qmail/bin/qmail-smtpd sysdocu.com /home/vpopmail/bin/vchkpw /bin/true 2>&1

 

모든 설정작업 완료 후 qmail 을 재시작해줍니다.

반응형

댓글()

Sorry,_no_mailbox_here_by_that_name._(#5.1.1)

리눅스/Mail|2015. 1. 23. 09:31
반응형

[에러]

메일이 수신되지 않고 발송자에게 반송되어 갈때 메세지입니다.

Sorry, no mailbox here by that name. (#5.1.1)

 

[해결1]

/var/qmail/control/locals 파일에서 등록도메인 리스트는 삭제하고

localhost 라고 입력후 qmail 을 재시작 합니다.

 

[해결2]

우선 메일을 백업해놓고 계정 및 도메인을 삭제, 재생성 합니다.

그 후에 백업했던 메일을 복원합니다.

 

[해결3]

파티션 변경이나 사이트 이전등의 작업을 진행하였을 경우 아래 파일이 누락되는경우가 있습니다.

신규 메일계정 생성 후에도 메일 수신이 안된다면 아래 파일을 확인, 생성해보세요.

 

위치 : /home/vpopmail/domains/sysdocu.com/

-rw------- 1 vpopmail vchkpw   55  7월  3 16:42 .qmail-default    // 꼭 있어야 하는 파일

-rw------- 1 vpopmail vchkpw   18  7월  3 16:42 .qmail-mailer-daemon

-rw------- 1 vpopmail vchkpw   18  7월  3 16:42 .qmail-postmaster

-rw------- 1 vpopmail vchkpw   18  7월  3 16:42 .qmail-root

 

각 파일의 내용입니다.

.qmail-default

| /home/vpopmail/bin/vdelivermail '' bounce-no-mailbox

 

.qmail-mailer-daemon

admin@sysdocu.com

 

.qmail-postmaster

admin@sysdocu.com

 

.qmail-root

admin@sysdocu.com


반응형

댓글()

qmail + vpopmail + mysql 연동 후 간헐적 사이트 접속 오류 현상

리눅스/Mail|2015. 1. 23. 09:30
반응형

[증상]

qmail + vpopmail + mysql 연동 설치 후 기존 사이트가 떴다 안떴다 하는 현상

 

[해결]

설치 과정중 mysql rpm 버전을 삭제했다면, /etc/my.cnf 에 max_connections =1000 옵션을 추가해볼것

이상하게 이런 옵션 추가 후 문제가 해결되었습니다. -_-;

 

반응형

댓글()

Qmail 서버에서 스팸발송 안되게 하기

리눅스/Mail|2015. 1. 23. 09:30
반응형

qmail + vpopmail 설치 후 스팸발송이 되면 아래와 같이 셋팅해보세요.

 

vi /home/vpopmail/etc/tcp.smtp

 

127.0.0.1:allow,RELAYCLIENT=""
192.168.10.2:allow,RELAYCLIENT=""    // 192.168.10.2 는 서버 IP 입니다.
:allow

 
tcprules /home/vpopmail/etc/tcp.smtp.cdb /home/vpopmail/etc/tcp.smtp.tmp < /home/vpopmail/etc/tcp.smtp

 

그리고 스팸이 queue 에 쌓여있으므로 queue 를 비워줍니다.

> queue-fix 사용 방법은 sysdocu의 다른 포스팅을 참조합니다.


반응형

댓글()

roundcube 각종 플러그인 설정

리눅스/Mail|2015. 1. 23. 09:29
반응형

1. password (vpopmail + mysql 환경에서의 패스워드 변경)

vpopmail을 mysql과 연동하기 때문에 라운드큐브의 패스워드 변경 부분도 mysql과 연동되도록 설정한다.

 

플러그인 설정

roundcube 디렉토리/plugins/password 디렉토리에서 config.inc.php.dist 파일을 config.inc.php로 변경한 후

아래 부분 수정.

$rcmail_config['password_driver'] = 'sql';

$rcmail_config['password_confirm_current'] = true;

$rcmail_config['password_db_dsn'] = 'mysql://vpopmail:패스워드@localhost/vpopmail';

$rcmail_config['password_query'] = 'UPDATE vpopmail set pw_passwd=ENCRYPT(%p,concat("$1$",right(md5(rand()), 8),"$")),pw_clear_passwd=%p where pw_name=%l';

roundcube 디렉토리/config/main.inc.php

$rcmail_config['plugins'] = array('password');

2. Mark as Junk 2

스팸어쌔신이 설치되어 있을 경우 라운드큐브에서 받은 메일함의 스팸메일을 스팸폴더로 이동시키면서

스팸어쌔신 학습을 시킨다.

 

플러그인 설정

첨부된 markasjunk2.zip 파일을 압축해제한 후, roundcube 디렉토리/plugins 디렉토리에 markasjunk2 폴더를 업로드.

markasjunk2 폴더의 config.inc.php.dist 파일을 config.inc.php로 변경한 후 아래 부분 수정

$rcmail_config['markasjunk2_read_spam'] = true;

$rcmail_config['markasjunk2_detach_ham'] = true;

$rcmail_config['markasjunk2_spam_cmd'] = '/usr/bin/sa-learn --spam --username=%u %f';

$rcmail_config['markasjunk2_ham_cmd'] = '/usr/bin/sa-learn --ham --username=%u %f';

roundcube 디렉토리/config/main.inc.php

$rcmail_config['plugins'] = array('password','markasjunk2');

3. ContextMenu

메일 목록에서 오른쪽 마우스 클릭 시, 상단의 메뉴와 그 외 기능들을 contextmenu로 표시해 준다.

 

플러그인 설정

첨부된 contextmenu.zip 파일을 압축해제한 후, roundcube 디렉토리/plugins 디렉토리에 contextmenu 폴더 업로드

 

roundcube 디렉토리/config/main.inc.php

$rcmail_config['plugins'] = array('password','markasjunk2','contextmenu');

[출처] aramjo's Blog | 아람조 (http://aramjo.blog.me/120103753749)



contextmenu.zip

markasjunk2.zip


반응형

댓글()

QmailAdmin 설치

리눅스/Mail|2015. 1. 23. 09:28
반응형

1. 다운로드

# cd /usr/local/src

# wget http://www.inter7.com/qmailadmin/qmailadmin-1.0.6.tar.gz
# wget http://gd.tuwien.ac.at/infosys/mail/qmail/ezmlm-patches/ezmlm-0.53.tar.gz
# wget http://gd.tuwien.ac.at/infosys/mail/qmail/ezmlm-patches/ezmlm-idx-0.40.tar.gz
 

 

2. 설치

# tar xvzf ezmlm-0.53.tar.gz
# tar xvzf ezmlm-idx-0.40.tar.gz
# tar xvzf qmailadmin-1.0.6.tar.gz
# mv -f ezmlm-idx-0.40/* ezmlm-0.53
# cd ezmlm-0.53
# patch < idx.patch
# make

 

make 오류시 error.h 파일을 열어 아래 내용을 윗부분에 삽입해줍니다.
#include <errno.h>

 

그리고 다시 make 를 합니다.

# make

# make man
# make setup
# cd ../qmailadmin-1.0.6
# ./configure --enable-cgibindir=/usr/local/apache/cgi-bin
# make
# make install-strip
 

 

3. QmailAdmin 한글화

# cd /usr/local/share/qmailadmin/html
# vi ko

 

[아래 첨부파일(ko.txt)을 참고하여 내용을 붙여넣습니다.]

 

잘뜨는지 아래 URL 로 접속해봅니다.

http://192.168.10.2/cgi-bin/qmailadmin

 

 

4. 추가작업

QmailAdmin 이미지가 잘 뜨도록 하기 위해 아래작업을 추가로 해줍니다.

(/home/sysdocu/webmail 이 DocumentRoot 디렉토리 일 경우)

 

# mkdir /home/sysdocu/webmail/images

# cp -arp /usr/local/apache/htdocs/images/qmailadmin /home/sysdocu/webmail/images/


ko.txt


반응형

댓글()

라운드큐브메일 한글 첨부파일 발송하기

리눅스/Mail|2015. 1. 23. 09:28
반응형

한글판으로 설치했다 하더라고 한글 첨부파일은 전송이 되지 않는 현상이 있습니다.

 

- RoundcubeMail 0.7 에서 확인

 

[해결책]

라운드큐브메일 디렉토리/program/lib/Mail/mimePart.php 파일을 열고

238번째 라인에 filename_encoding 부분의 NULL 을 EUC-KR 바꾸면 됩니다.

 

!empty($params['filename_encoding']) ? $params['filename_encoding'] : EUC-KR


반응형

댓글()

authdaemond: vmysql: sql error[3]: MySQL server has gone away

리눅스/Mail|2015. 1. 23. 09:27
반응형

maillog 에 아래와 같은 오류 메세지가 출력될 경우

 

authdaemond: vmysql: sql error[3]: MySQL server has gone away

 

해당 문제에 대한 원인은 찾지 못했지만 편법으로 아래처럼 해결이 가능합니다.

 

crontab -e

 

아래 내용 삽입

00 * * * * /etc/init.d/courier-authlib restart

 

반응형

댓글()

[Qmail] telnet localhost 25 접속 실패시 (110 포트 포함)

리눅스/Mail|2015. 1. 23. 09:27
반응형

※ 정상적으로 smtp 서버가 구축이 되지 않은 경우

 [root@localhost]# telnet localhost 25
Trying 127.0.0.1...
Connected to mail.foobar.com (127.0.0.1).
Escape character is '^]'.
Connection closed by foreign host.
 



만약 위처럼 정상적으로 접속이 안되는 경우에는 qmail script의 softlimit 값을 늘려줘 보시기 바랍니다.

 [root@localhost]# vi /var/qmail/supervise/qmail-smtpd/run
#!/bin/sh
Q_UID=`id -u qmaild`
Q_GID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 72000000 
/usr/local/bin/tcpserver -vRHl 0 
-x /home/vpopmail/etc/tcp.smtp.cdb 
-u $Q_UID -g $Q_GID 0 25 /var/qmail/bin/qmail-smtpd 2>&1
[root@localhost]# /etc/rc.d/init.d/qmail restart
Restarting qmail:
* Stopping qmail-smtpd.
* Sending qmail-send SIGTERM and restarting.
* Restarting qmail-smtpd.
 

 

 

※ 정상적으로 pop3 서버가 구축이 되지 않은 경우

 [root@localhost]# telnet localhost 110
Trying 127.0.0.1...
Connected to mail.foobar.com (127.0.0.1).
Escape character is '^]'.
Connection closed by foreign host.
 


만약 위처럼 접속이 안되는 경우 smtp와 마찬가지로 pop3 script의 softlimit 값을 늘려주시기 바랍니다.

 [root@localhost]# vi /var/qmail/supervise/vpop/run
#!/bin/sh
VPOP_UID=`id -u vpopmail`
VPOP_GID=`id -g vpopmail`

exec /usr/local/bin/softlimit -m 72500000 
tcpserver -vRHl 0 -u $VPOP_UID -g $VPOP_GID 0 110 
/var/qmail/bin/qmail-popup foobar.com 
/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1
[root@localhost]# /etc/rc.d/init.d/qmail restart
Restarting qmail:
* Stopping qmail-smtpd.
* Sending qmail-send SIGTERM and restarting.
* Restarting qmail-smtpd.
 



[발췌] 순수나꾸 (http://blog.daum.net/freeppro/5944080)

반응형

댓글()