Você está na página 1de 8

Instalação do QMAIL+ VPOPMAIL + COURIER-IMAP+HORDE

Debian Etch-Stable

Recomendo o uso do Filezilla ou winscp:


http://winscp.net/eng/download.php
que é uma ferramenta para acessar o servidor ssh via windows que lista os diretórios do linux e tem
um editor de arquivos no formato windows, para facilicar os comandos podem ser copiados e
colados em uma tela de terminal SSH usando o putty:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Editar o arquivo sources.list para alterar os repositórios:


# cp /etc/apt/sources.list /etc/apt/sources.list.bak
# rm /etc/apt/sources.list
# nano /etc/apt/sources.list

Adicionar os repositórios abaixo:

deb http://ftp.br.debian.org/debian/ etch main


deb-src http://ftp.br.debian.org/debian/ etch main

deb http://ftp.rediris.es/debian/ etch main non-free contrib


deb-src http://ftp.rediris.es/debian/ etch main non-free contrib

deb http://debian.iuculano.it/apt etch main contrib non-free


deb-src http://debian.iuculano.it/apt etch smain contrib non-free

deb http://security.debian.org/ etch/updates main contrib


deb-src http://security.debian.org/ etch/updates main contrib

Adicionar chave do repositório

# wget http://debian.iuculano.it/AE3BE9AA.gpg -O- | apt-key add -


# apt-get update

Instalar base de datos Mysql-Server.


# apt-get install mysql-server-5.0

Definir senha do root para o mysql .


# mysqladmin -u root password 'xxx' (xxx é a senha)

Criar banco de dados para a configuração do vpopmail


# mysqladmin -u root -p create vpopmail
# mysql -p -u root
# GRANT ALL PRIVILEGES ON vpopmail . * TO 'vpopmail'@'localhost' IDENTIFIED BY
'yyy' WITH GRANT OPTION ; (yyy é a senha do usuário do vpopmail)
# exit;

Instalar os pacotes abaixo


# apt-get install qmail-src spamassassin vpopmail-mysql spamc razor pyzor ucspi-tcp-src
libmailtools-perl libsys-hostname-long-perl
Durante o processo de instalação confirme o que for solicitado:
acept
acept
build-ucspi-tcp # enter

Vai aparecer a seguinte mensagem:


start-stop-daemon: stat /usr/bin/tcpserver: No such file or directory (No such file or directory)

Isso é normal, tem que tentar novamente (responda as perguntas dessa maneira):
# build-ucspi-tcp
Do you want to remove all files in /tmp/ucspi-tcp,
except ucspi-tcp_0.88-10_i386.deb now? [Yn] Y
Do you want to install ucspi-tcp_0.88-10_i386.deb now? [Yn] Y
Do you want to purge ucspi-tcp-src now? [yN] N

Compilar o Qmail.
# build-qmail
Do you want to install qmail_1.03-45iuculano2_i386.deb now? [Yn] Y
Do you want to purge qmail-src now? [yN] N

Provavelmente vai dar um conflito com o agente de correio exim4 que é instalado no Debian por
padrão.
é necessário removê-lo para prosseguir a instalação:
# dpkg --force-depends --purge exim4 exim4-base exim4-config exim4-daemon-light
# dpkg -i /tmp/qmail/qmai*.deb

Adicionar seu dominio no arquivo “me"


# echo dominio.ce.gov.br # /etc/qmail/me

Adicionar o servidor de envio


# echo :172.26.2.26 #/var/qmail/control/smtproutes

Editar a configuração do vpopmail para acesso ao mysql com a senha que foi definida em sua
instalação:
# nano /etc/vpopmail/vpopmail.mysql
localhost|0|vpopmail|yyy|vpopmail

Reiniciar os serviços:
# /etc/init.d/qmail restart && /etc/init.d/vpopmail-mysql restart

Criar o domínio no vpopmail


# apt-get install recode nmap
# vadddomain dominio.ce.gov.br
Please enter password for postmaster:
enter password again:
Entry is out of order: abus
Entry is out of order: anonymou
# ls -la /var/lib/vpopmail/domains/
total 12
drwxr-xr-x 3 vpopmail vchkpw 4096 2007-06-07 22:50 .
drwxr-xr-x 6 root root 4096 2007-06-07 22:39 ..
drwx------ 3 vpopmail vchkpw 4096 2007-06-07 22:50 dominio.ce.gov.br

Instalar apache2 e qmailadmin

# apt-get install apache2


# apt-get install qmailadmin autorespond ezmlm-src clamav clamav-daemon clamav-
freshclam
# build-ucspi-tcp

#build-ezmlm

Url para acessar qmailadmin é http://ip do servidor/cgi-bin/qmailadmin

Voltar os repositórios anteriores .

# cp /etc/apt/sources.list.bak /etc/apt/sources.list

deb http://ftp.br.debian.org/debian/ etch main


deb-src http://ftp.br.debian.org/debian/ etch main

deb http://security.debian.org/ etch/updates main contrib


deb-src http://security.debian.org/ etch/updates main contrib

é recomendado usar somente os repositórios acima

# apt-get update

Instalar requerimentos para o courier-imap:

# wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
# tar -zxvf qmailrocks.tar.gz
# cd qmailrocks
# apt-get install bzip2
# tar jxvf courier-authlib-0.55.tar.bz2
# cd courier-authlib-0.55
# apt-get install g++
# apt-get install libgdbm-dev libqdbm14
# ./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-
authldap --without-authmysql --disable-root-check --with-ssl --with-
authchangepwdir=/usr/local/libexec/authlib --with-redhat
# make && make check
# make install-strip && make install-configure
# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond
# update-rc.d authdaemond defaults
# /etc/init.d/authdaemond start

Instalar o pacote courier-imap. o pacote couirer-imap não pode ser compilado com permissão de
root, tem que criar um usuário para isso ou usar um que ja esteja criado.

# cd ..
# tar jxvf courier-imap-4.0.2.tar.bz2
# adduser temporal
# chown -R temporal:temporal ./courier-imap-4.0.2*
# su temporal
# cd /root/qmailrocks/courier-imap-4.0.2/
# ./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-
authldap --without-authmysql --disable-root-check --with-ssl --with-
authchangepwdir=/usr/local/libexec/authlib --with-redhat
# exit
# deluser temporal
# cd courier-imap-4.0.2
# apt-get install libssl.dev
# make install-strip && make install-configure
# /usr/local/sbin/mkimapdcert

# nano /usr/local/etc/imapd (Alterar essa opção para YES)


IMAPDSTART=YES

# nano /usr/local/etc/imapd-ssl (Alterar essa opção para YES)


IMAPDSSLSTART=YES
TLS_CERTFILE=/usr/local/share/imapd.pem

Alterar a linha abaixo mantendo somente “authmodulelist" (mais ou menos linha 27)

# nano /usr/local/etc/authlib/authdaemonrc
> authmodulelist="authvchkpw"

Configurar para iniciar automáticamente..

# cp /usr/local/libexec/imapd.rc /etc/init.d/imapd
# update-rc.d imapd defaults
# /etc/init.d/imapd start
# cp /usr/local/libexec/imapd-ssl.rc /etc/init.d/imapd-ssl
# update-rc.d imapd-ssl defaults
# /etc/init.d/imapd-ssl start

Instalar o courierpassd necessário para alterar a senha via horde

# cd /root/qmailrocks/
# tar zxvf courierpassd-1.1.0-RC1.tar.gz
# cd courierpassd-1.1.0-RC1
# ./configure
# make && make install
# apt-get install xinetd
# cd /etc/xinetd.d
# nano courierpassd

Adicionar as linhas abaixo no arquivo acima:


service courierpassd
{
port = 106
socket_type = stream
protocol = tcp
user = root
server = /usr/local/sbin/courierpassd
server_args = -s imap
wait = no
only_from = 127.0.0.1
instances = 4
disable = no
}

Adicionar ocourierpassd no inetd.conf:


# echo "courierpassd stream tcp nowait root /usr/local/sbin/courierpassd -s imap" ##
/etc/inetd.conf

Configurar o courierpassd como um serviço:


# echo "courierpassd 106/tcp #for /etc/xinetd.d/courierpassd" ## /etc/services

Reiniciar inetd
# /etc/init.d/inetd restart
Caso o inetd não exista digite:
# /etc/init.d/xinetd restart
Instalar pacotes requeridos para op HORDE
# apt-get install libapache2-mod-php5 php5-gd php5-mysql php5-mcrypt php5-imap php5-
tidy php5-cli php-pear

Definir o limite de memória do PHP em 128M

# sed -i -e 's/memory_limit = .*/memory_limit = 128M/' /etc/php5/apache2/php.ini

Definir o limite de upload em 8M

# sed -i -e 's/upload_max_filesize = .*/upload_max_filesize = 8M/' /etc/php5/apache2/php.ini

Instalar memcached

# apt-get install memcached php5-memcache

Upgrade do pear

# /usr/bin/pear upgrade-all

Outros pacotes requeridos

# apt-get install libmagic-dev libgeoip-dev make php5-dev


# /usr/bin/pecl install fileinfo
# echo "extension=fileinfo.so" | /usr/bin/tee /etc/php5/conf.d/fileinfo.ini
# /usr/bin/pecl install lzf
# echo "extension=lzf.so" | /usr/bin/tee /etc/php5/conf.d/lzf.ini
# apt-get install unrtf libwpd-tools xlhtml source-highlight ppthtml rpm wv enscript
# /etc/init.d/apache2 restart
# apt-get install imagemagick
# mkdir /home/gollem
# chown www-data.www-data /home/gollem

O Horde é uma aplicação framework com diversas possibilidades de personalização


faça o download de nossa versão personalizada

# wget http://mail.ceara.gov.br/horde.tar.gz
# wget http://mail.ceara.gov.br/contatos.sql.gz
# gunzip contatos.sql.gz
# mysql -p < contatos.sql
# tar zxfv horde.tar.gz
# mv ./horde /var/www

Configurar o HORDE:

Edite o arquivo /var/www/horde/config/conf.php


e edite suas configurações:

Por exemplo:

$conf['sql']['username'] = 'root';
$conf['sql']['password'] = 'yyy';
$conf['auth']['admins'] = array('postmaster@dominio.ce.gov.br');
$conf['sessionhandler']['params']['username'] = 'root';
$conf['sessionhandler']['params']['password'] = 'yyy';
$conf['sessionhandler']['params']['database'] = 'horde';
$conf['problems']['maildomain'] = 'dominio.ce.gov.br';

# php /var/www/horde/scripts/setup.php
Configuration Menu
(0) Exit
(1) Configure database settings
(2) Create database or tables
(3) Configure administrator settings
Type your choice: 2
Should we create the database for you? If yes, you need to provide a database
user that has permissions to create new databases on your system. If no, we
will only create the database tables for you. [y]
(y) Yes
(n) No

Type your choice: y

Database user for creating the database if necessary for your database system: root

Specify a password for the database user: senha


Loading database module...
Creating database...
[ OK ] Successfully created the database.
[ OK ] Successfully created the tables for Address Book (turba).
[ OK ] Successfully created the tables for Calendar (kronolith).
[ OK ] Successfully created the tables for Notes (mnemo).
[ OK ] Successfully created the tables for Tasks (nag).
Done creating database or tables.

Type your choice: 3

Specify a mail user who should have administrator permissions (optional):


postmaster@dominio.ce.gov.br
Done configuring administrator settings.

Configuration Menu
(0) Exit
(1) Configure database settings
(2) Create database or tables
(3) Configure administrator settings

Type your choice: 0

É necessário alterar a linha abaixo no arquivo:


/var/www/horde/config/conf.php
Senha do servidor mysql:
$conf['sql']['username'] = 'root';
$conf['sql']['password'] = 'senha';

E adicionar essas no mesmo arquivo:


$conf['sessionhandler']['params']['persistent'] = false;
$conf['sessionhandler']['params']['rowlocking'] = true;
$conf['sessionhandler']['params']['port'] = 3306;
$conf['sessionhandler']['params']['protocol'] = 'tcp';
$conf['sessionhandler']['params']['hostspec'] = 'localhost';
$conf['sessionhandler']['params']['username'] = 'root';
$conf['sessionhandler']['params']['password'] = 'senha';
$conf['sessionhandler']['params']['database'] = 'horde';
$conf['sessionhandler']['type'] = 'mysql';
Usuário de administração definido acima tb pode ser alterado dessa forma, logando
com esse usuário no HORDE vai ser mostrado um menu de configuração:
$conf['auth']['admins'] = array('postmaster@dominio.ce.gov.br');
$conf['problems']['email'] = 'postmaster@dominio.ce.gov.br';
$conf['problems']['maildomain'] = 'dominio.ce.gov.br';

Para evitar problemas com codificação de mensagens UTF-8 e ISO-8859-1

# dpkg-reconfigure locales

Deixe marcados somente os locales abaixo


[*] en_US ISO-8859-1
[*] pt_BR ISO-8859-1

execute:
chown www-data:www-data /tmp/horde.log

Você também pode gostar