vpopmail 없이 qmail 만을 이용해서 사용할 때 그나마 좀 편리해지라고 삽질 해봤다.
추가 과정 :
쉘 접속이 불가능한 계정을 추가한다.
계정 추가에 성공하면:
해당 계정 홈디렉토리에 숨겨진 파일들을 지워버린다.
홈디렉토리 안에 Maildir 을 생성한다(qmail 메일 디렉토리)
생성한 메일디렉토리에 qmail 데몬이 접근할 수 있도록 한다.
추가한 계정의 패스워드를 정한다.
1. 사용자 추가
2. (아이디 중복 등) 사용자 추가에 실패시
3. 사용자 제거
#!/bin/bash
##################################################
DIR_BASE=/home/MailHome
QM_BIN_DIRMAKE=/var/qmail/bin/maildirmake
QM_DIR_NAME=Maildir
GID=mailusers
if (test -z $1); then
echo "usage : $0 [mailuserid]"
else
UID=$1
DIR_HOME=${DIR_BASE}/${UID}
DIR_USER_MAIL=${DIR_HOME}/${QM_DIR_NAME}
useradd -g ${GID} -s /sbin/nologin -d ${DIR_HOME} ${UID}
RETVAL=$?
# when account create successfully
if (test $RETVAL -eq 0); then
rm -rf ${DIR_HOME}/.[a-zA-Z0-9]*
${QM_BIN_DIRMAKE} ${DIR_USER_MAIL}
chown ${UID}.qmail -R ${DIR_USER_MAIL}
chmod 770 -R ${DIR_USER_MAIL}
passwd ${UID}
fi
fi
##################################################
DIR_BASE=/home/MailHome
QM_BIN_DIRMAKE=/var/qmail/bin/maildirmake
QM_DIR_NAME=Maildir
GID=mailusers
if (test -z $1); then
echo "usage : $0 [mailuserid]"
else
UID=$1
DIR_HOME=${DIR_BASE}/${UID}
DIR_USER_MAIL=${DIR_HOME}/${QM_DIR_NAME}
useradd -g ${GID} -s /sbin/nologin -d ${DIR_HOME} ${UID}
RETVAL=$?
# when account create successfully
if (test $RETVAL -eq 0); then
rm -rf ${DIR_HOME}/.[a-zA-Z0-9]*
${QM_BIN_DIRMAKE} ${DIR_USER_MAIL}
chown ${UID}.qmail -R ${DIR_USER_MAIL}
chmod 770 -R ${DIR_USER_MAIL}
passwd ${UID}
fi
fi
추가 과정 :
쉘 접속이 불가능한 계정을 추가한다.
계정 추가에 성공하면:
해당 계정 홈디렉토리에 숨겨진 파일들을 지워버린다.
홈디렉토리 안에 Maildir 을 생성한다(qmail 메일 디렉토리)
생성한 메일디렉토리에 qmail 데몬이 접근할 수 있도록 한다.
추가한 계정의 패스워드를 정한다.
1. 사용자 추가
2. (아이디 중복 등) 사용자 추가에 실패시
3. 사용자 제거