Pular para o conteúdo

Montando um servidor de e-mail completo com Postfix

Este tutorial aborda a criação de um servidor de e-mail baseado em banco de dados MySQL, com suporte a cota de usuários, antispam, antivírus, webmail e tudo mais o que se pode imaginar.
Marco A. S. Máximo msmaximo
Hits: 1.301.517 Categoria: Linux Subcategoria: Correio Eletrônico
  • Indicar
  • Impressora
  • Denunciar

Parte 20: Migrando a database antiga

Se você montou seu ambiente utilizando o antigo tutorial, você terá notado que eu mudei o nome da tabela e dos seus campos. Essas alterações foram necessárias devido a necessidade de adequação ao PostfixAdmin.

Você pode tomar dois caminhos:
  • Adequar o PostfixAdmin ao seu ambiente e suas tabelas do MySQL.
  • Migrar o conteúdo do banco para as novas tabelas do PostfixAdmin.
Se você optou pela primeira opção, parabéns, você conhece bastante PHP e possui um bom tempo livre :-)

Caso tenha optado pela segunda opção, vou explicar como fazer essa manobra com "pouco" trauma.

OBS: Esse solução que fiz talvez não seja a mais elegante, mas pelo menos funcionou. Prova de que os fins justificam os meios :-)

Preparando o arquivo:

Crie um backup da antiga tabela no diretório /root/tmp/:

# mysqldump -B mail --tables virtual_users -psenha > /root/tmp/backup_mail.cf

Edite o arquivo gerado, com o editor VI (Se você não conhece o VI, acho uma boa hora para aprender) e apague as linhas parecidas com:

# MySQL dump 8.16
#
# Host: localhost Database: mail
#--------------------------------------------------------
# Server version 3.23.46-log

#
# Table structure for table 'virtual_users'
#


CREATE TABLE virtual_users (
   unique_id int(32) unsigned NOT NULL auto_increment,
   id char(128) NOT NULL default '',
   password char(128) default NULL,
   uid int(10) unsigned default '502',
   gid int(10) unsigned default '503',
   home char(255) default NULL,
   maildir char(255) default NULL,
   date_add date default NULL,
   time_add time default NULL,
   domain char(128) default NULL,
   nome char(255) default NULL,
   imapok tinyint(3) unsigned default '1',
   disk_usage int(10) unsigned default NULL,
   quota char(128) default '10000000S',
   htaccess tinyint(4) default '0',
   PRIMARY KEY  (id),
   KEY unique_id (unique_id)
) TYPE=MyISAM;

#
# Dumping data for table 'virtual_users'
#
========================================

# Deixe só os dados da tabela. Exemplo:


INSERT INTO virtual_users VALUES (494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE',1,0, '10000000S', 0);

ATENÇÃO: Retire todas as linhas vazias do COMEÇO e do FINAL do arquivo.

Com o VI aberto, no modo de comando (sinal de dois-pontos), execute o seguinte comando:

:%s/INSERT INTO virtual_users VALUES (//g
:%s/);//g

Com isso você vai deixar a linha parecida com isso:

494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE', 1, 0, '10000000S', 0

Agora crie o script em PHP com o seguinte conteúdo (add_mysql.php):

#!/usr/bin/php -q
<?
// Variáveis de acesso ao MySQL
$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";
//Arquivo com o backup do antiga tabela "virtual_users"
$file_bak = "/root/tmp/backup_mail.cf";

//=============
//INICIO
//=============

$conexao = mysql_connect($host,$user,$senha); mysql_select_db("$name_db", $conexao);
// Corta o arquivo
$f=file("$file_bak");

for($i=0;$i<count($f);$i++) {
   list($id, $username, $password, $uid, $gid, $home, $maildir, $date, $time, $domain, $name, $active, $disk_usage, $quota, $htaccess)=explode(", ",  $f[$i]);
   $insert = "INSERT INTO mailbox (username, password, name, home, maildir, quota, domain, create_date, active, uid, gid, disk_usage, htaccess) VALUES  ($username, $password, $name, $home, $maildir, $quota, $domain, $date, $active, $uid, $gid, $disk_usage, $htaccess)";
mysql_query($insert,$conexao);
  echo "\n";
  echo "Usuário $username cadastrado com sucesso!!! \n";
}
?>

Edite as seguintes variáveis conforme a sua configuração:

$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";

Cruze os dedos e execute o script :-)

# chmod +x add_mysql.php
# ./add_mysql.php


Teste se foi tudo ok...

# mysql -D postfix -u root -psenha -e "select * from mailbox;"

Se ocorreu tudo certo, vai aparecer um monte de coisa na tela. Agora, temos de terminar o serviço. Para a migração ser perfeita, temos que corrigir mais 3 campos da tabela, são eles:
  • QUOTA
  • UID
  • GID
A QUOTA diferente da antiga tabela, agora precisa ter um "S" no final de cada valor. Isso é necessário para que o MAILDROP crie o arquivo $HOME/Maildir/maildirsize de cada usuário caso não exista. Esse arquivo controla a sua COTA conforme especificado no MySQL.

Os valores do campos UID e GUI devem ser o mesmo do usuário MAILDROP.

Conecte-se no MySQL e execute:

# mysql -D postfix -u root -psenha
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+------------+
| quota      |
+------------+
| 30000000   |
+------------+


Alterando a COTA:

mysql> update mailbox set quota=concat(quota, 'S');
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+-------------+
| quota       |
+-------------+
| 30000000S   |
+-------------+


mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  502 |  503 |
+------+------+


Alterando o UID e GID:

mysql> update mailbox set uid=108,gid=108 where uid=502 and gid=503;
mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  108 |  108 |
+------+------+


Beleza, banco migrado com sucesso. Espero :-)

   1. Introdução
   2. O que é novo
   3. O problema
   4. A solução
   5. Instalação do Mandrake 9.1
   6. Antes de começar
   7. Aplicativos utilizados
   8. Instalando o CheckInstall
   9. Instalando o MySQL e a base do Postfix
   10. Instalando o Maildrop
   11. Instalando o Postfix
   12. Cota de disco
   13. Instalando o SASL
   14. Instalando o PostfixAdmin
   15. Anti-vírus ClamAV
   16. Instalação do Amavis_NEW
   17. Configuração do Postfix com Amavis_NEW
   18. Instalando o Mail Vacation
   19. Webmail - Squirrelmail
   20. Migrando a database antiga
   21. Migrando a tabela aliases

Servidor de email com SMTP, POP, IMAP, quota e MySQL

Servidor de E-mails Falido?

Email + EGroupWare + Active Directory

PHPXmail - um front-end web para o XMail

Abrindo arquivos TNEF

Instalando o Thunderbird e colocando o atalho no desktop

#1 Comentário enviado por andersonlinux em 30/12/2003 - 19:54h
Adorei, muito bem explicado.
#2 Comentário enviado por snap em 02/01/2004 - 10:12h
Pode ser bem explicado ... mas nao vale a pena ... emails locais nao funcionam ... e sasl externo tb nao ...
#3 Comentário enviado por msmaximo em 02/01/2004 - 12:32h
Hum!!!
Infelizmente caro SNAP, você esta completamente enganado!
Ou você não se deu o trabalho de ler o material, ou desconhece completamente o assunto sobre MTA.
Retificando o seu comentário:
- As contas locais funcionam perfeitamente (inclusive com o SASL)
- O SASL funciona externamente, sim. Ora, qual a vantagem da autenticação SASL se ela não funcionasse externamente?!?! :-)
Agora, se vale a pena ou não isso depende da necessidade de cada pessoa.
#4 Comentário enviado por snap em 02/01/2004 - 15:36h
local_recipient_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf

#5 Comentário enviado por destbr em 09/01/2004 - 03:23h
olá,
comentarios sao bem vindos, reclamacoes ja é outra historia.
se vc nao gostou da explicacao, simplesmente ignore-a.

parabens msmaximo, pessoas como vc, sim, contribuem com a comunidade, afinal, vc poderia simplesmente deixar de compartilhar informacoes que nos sao tao importantes; e se deu o trabalho de explicar tudo passo a passo.

agradeço mesmo.

abraços!!

:)
#6 Comentário enviado por abreo27 em 30/01/2004 - 18:08h
Gracias!!!!

Buenisimo el articulo, muy practico y util
#7 Comentário enviado por augustoa em 09/02/2004 - 08:49h
Bom
#8 Comentário enviado por pedro.hoffmann em 16/02/2004 - 06:56h
Parabens pelo tutorial. Muito bem feito, tive uns problemas no começo mas tudo bem, agora tá pegando blz.. quando eu entro na parte opções. e depois opções de visualizações... ele troca o theme.. e cada vez que eu atualizo.. ele fica trocando.. alguem sabe o pq?
#9 Comentário enviado por cvs em 18/03/2004 - 11:50h
Cara, vou começar a colocar em pratica esse tutorial agora, vamos ver se eu vou conseguir colocar pra rodar! hehehehe
#10 Comentário enviado por removido em 29/03/2004 - 16:27h
Amigos, EXCELENTE tutorial, um dos mais completos que achei em toda a net em português.
Como estou usando o RedHat 9 estou tendo problemas somente com o SASL que não autentica usuarios externos.. se alguém conseguiu resolver eu ficaria muito agradecido se compartilhasse a solução... um abraço a todos.
#11 Comentário enviado por soraia morais em 26/04/2004 - 12:46h
So gostaria de saber se sempre que eu quiser ter um utilizador novo vou ter de o criar manualmente como criamos no exemplo explicito no manual, gostaria tambem de saber se o squirrel nao contem um sitio para registo, para os proprios utilizadores criarem os seus endereços de e-mail, porque no meu caso perciso de uma pagina de registo para os utlizadores e depois como posso ligar o registo que esta na base de dados ao squirrel para poder efectuar o login.
#12 Comentário enviado por slex em 11/05/2004 - 11:49h
" comentarios sao bem vindos, reclamacoes ja é outra historia. "

que baboseira..... so' pode lamber o saco de quem escreveu? criticas construtivas nao sao bem vindas?

repare na frase do autor:
"Ou você não se deu o trabalho de ler o material, ou desconhece completamente o assunto sobre MTA. "

desculpem senhores... mas TUTORIAIS nao sao escritos para especialistas.

gostei do artigo, mas acho que ficou confuso, ou mal explicado a parte do maildrop.


#13 Comentário enviado por jairof em 24/05/2004 - 16:19h
Estou aplicando este tutorial e estou com problemas para compilar o maildrop.
Maildrop:maildrop-1.6.3
MandrakeLinux 10
MYSQL:MySQL-4.0.18-1.1.100mdk

Erro na compilação da opção do Mysql
/configure: line 1: mysql_config: command not found
configure: error: Unable to run mysql_config
configure: error: /bin/sh './configure' failed for maildrop

Como eu resolvo isso?
#14 Comentário enviado por guifreitas em 07/06/2004 - 15:26h
o mysql_config eh um sh q fica no /usr/bin/
nao sei pq, mas tem versoes do mysql nao vem com ele
mas pode pegar ele em http://debian.maniacs.com.br/mysql_config

Abracos!
#15 Comentário enviado por abysmal em 14/06/2004 - 15:47h
Realmente muito bom parabéns pelo artigo...
#16 Comentário enviado por sheep em 20/06/2004 - 11:51h
comentarios sao bem vindos, reclamacoes ja é outra historia. "

que baboseira..... so' pode lamber o saco de quem escreveu? criticas construtivas nao sao bem vindas?

repare na frase do autor:
"Ou você não se deu o trabalho de ler o material, ou desconhece completamente o assunto sobre MTA. "

desculpem senhores... mas TUTORIAIS nao sao escritos para especialistas.

gostei do artigo, mas acho que ficou confuso, ou mal explicado a parte do maildrop.

#17 Comentário enviado por sheep em 20/06/2004 - 12:00h
Comentário enviado por augustoa em 09/02/2004:

Bom

#18 Comentário enviado por sheep em 20/06/2004 - 12:01h
seu propósito, é mostrar como configurar um servidor de e-mail Postfix para trabalhar com vários domínios em uma mesma máquina, utilizando para isso, o MySQL.
#19 Comentário enviado por vvega em 21/06/2004 - 10:35h
Alguem conhece uma boa apostila sobre MTAs ? Gostaria de conhecer mais a fundo a questao ...
#20 Comentário enviado por goldeagle em 05/07/2004 - 23:20h

Estou instalando um server com Debian 3 seguindo este tutorial, e gostando muito dos resultados.

Mas tive problemas com a compilação do Maildrop, o erro que ocorreu foi este.

Erro na compilação da opção do Mysql
/configure: line 1: mysql_config: command not found
configure: error: Unable to run mysql_config
configure: error: /bin/sh './configure' failed for maildrop


A solução para o mesmo no Debian 3 - Testing, é instalar o pacote abaixo, este por sua vez contém o arquivo que falta.

libmysqlclient10-dev

[]s
Miguel (goldeagle)
#21 Comentário enviado por goldeagle em 05/07/2004 - 23:39h

Eu estou instalando em um Debian 3 - Testing, e deu um erro de comando desconhecido.

maildrop-mysql

Como não tenho este comando instalado, alguém pode dar uma ajuda a respeito ? Sei que este comando existe para o Mandrake, pois achei o .rpm no Google/linux.

Outro problema que estou tendo, é que não consegui testar o meu server, desta linha do tutorial em diante, não consegui testar nada.

################
################

Testando o Maildrop:

Teste se o MAILDROP consegue enviar o email para a caixa postal dos usuários.

# cat /etc/lilo.conf | maildrop-mysql -d marco.maximo@dominio1.com.br


#22 Comentário enviado por hwoarang em 08/07/2004 - 16:55h
Bom.. estou tentando colocar este tutorial em prática. Até agora está indo tudo blz (muito bom o tutorial)...
Mas como o amigo da msg anterior, estou parado no comando:

# cat /etc/lilo.conf | maildrop-mysql -d marco.maximo@dominio1.com.br

retorna: Invalid user specified.

segui o tutorial a risca... alguém pode dar um help ?

obrigado.

Flávio Henrique
#23 Comentário enviado por siqueira em 09/07/2004 - 21:37h
Pessoal,
Eu estou tentando utilizar o tutorial, mas estou tendo o mesmo problema de outros colegas. Na parte
# cat /etc/lilo.conf | maildrop-mysql -d marco.maximo@dominio1.com.br

Retorna Invalid Command maildrop-mysql

Por favor me ajudem

#24 Comentário enviado por siqueira em 09/07/2004 - 23:16h
Pessoal,
Eu estou tentando utilizar o tutorial, mas estou tendo o mesmo problema de outros colegas. Na parte
# cat /etc/lilo.conf | maildrop-mysql -d marco.maximo@dominio1.com.br

Retorna Invalid Command

#25 Comentário enviado por bittsbr em 10/07/2004 - 17:03h
Olá pessoal!

Sou usuário do Debian 3.0 sarge (testing), MySQL v4.0.20 e estou no mesmo ponto que todos vcs e acho que posso ajudar:

1 - Os fontes do maildrop 1.6.3 não geram o programa maildrop-mysql geram somente o maildrop o qual já possui o suporte ao mysql. digite somente maildrop -v e deverão obter a seguinte resposta:

maildrop 1.6.3 Copyright 1998-2003 Double Precision, Inc.
Maildir quota extension enabled.
Virtual user database via MySQL extension enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.

Sendo assim este fará o mesmo que faria a versão mysql. Ele procura automaticamente os usuarios no db do sistema, depois no db mysql e em seguida no db ldap. Deve se dar atenção especial à configuração do arquivo: /etc/maildropmysql.config certificando-se de ter declarado corretamente o nome todas as variáveis. IMPORTANTE! O parâmetro where_clause se deixado em branco pode gerar um erro na query enviada ao servidor. Portanto, é aconselhável declarar: AND active=1 assim do jeito que eu digitei NÃO USE ASPAS. O parâmetro socket no meu caso ficou =/var/run/mysqld/mysqld.sock. Por fim, certifiquem-se de o usuários, grupos e as permissões do diretório /postfix estão corretamente configurados ( como escrito no tutorial ).

Outra coisa importante é que, como no caso do Siqueira, você pode usar qualquer comando que gere saida em stdout e fazer um pipe para o maildrop. Por exemplo: # ifconfig | maildrop -d eu@dominio.com.br.

Um abraço a todos.

Espero ter ajudado.
#26 Comentário enviado por msmaximo em 14/07/2004 - 09:59h
Pessoal,
Eu fiz uma pequena atualização nesse tutorial, para corrigir alguns erros que podem confundir os menos atentos.
Vocês podem encontra-lo em:

TXT
----
http://smaximo.minidns.net/~marco/tutorial/postfix_mysql_v2.0.txt
#27 Comentário enviado por marceloferraz em 14/07/2004 - 15:42h
após ter configurado todas as alterações em /etc/amavid.conf e dei o comando amavisd debug e ele acusou um erro na linha 123 do /usr/sbin/amavisd. Fui até lá e não entendi nada. Será que errei no passo a passo? já fiz duas vezes. Pode me ajudar?
#28 Comentário enviado por bdooley em 14/07/2004 - 18:23h
Muito Bom,

Ajudou bastante. Parabens

#29 Comentário enviado por soraia morais em 15/07/2004 - 07:37h
# cat /etc/lilo.conf | maildrop -d marco.maximo@dominio1.com.br
executei o comando com o colega acima tinha mencionado e continua a dar o mesmo erro podem-me ajudar....
#30 Comentário enviado por ^_Us-Rodrigs_^ em 24/07/2004 - 13:31h
Olha muito 10 continue expondo tais tutorias...
Agradecemos...
Ate mais....
:- )
#31 Comentário enviado por hnunes em 24/07/2004 - 17:42h
Olá Pessoal estou tentando instalar o servidor de email no HadRet9 mas estou com algumas dificuldades:

A primeira é que quando tento fazer o teste de autenticação do SASL, aparece
a mensagem: "Autentication failure". Ja revisei muitas veses o procedimento mas nunca da serto.
A outra é que quando acesso a pagina de administração de dominios (http://192.168...../postfixadmin/admin), ela entra direto sem pedir nenhuma atenticação.
E por fim não estou conseguindo instalar os modulos : ZIP, Digest-MD5, Time-HiRes e o Mail-SpamAssassin do perl, porque ele diz que não encontrou o programa pod2man no path e depois aparece o seguinte erro: "Makefile:68: *** faltando o separador. Pare.". So que eu já verifiquei e o pod2man esta no path.

Será que alguém poderia me dar uma luz por favor!!
#32 Comentário enviado por danielbonfim2 em 27/07/2004 - 02:11h
marcos porque não atalizou o tutorial no underlinux este esta bem mais completo parabéns desde já Daniel Bonfim - Presidente Prudente SP
msn: danielbonfim@hotmail.com
e-mail: suporte@orioninformatica.eti.br
#33 Comentário enviado por dgsgato em 30/07/2004 - 17:03h
Olá! O tutorial é excelente! A partir dele, estou conseguindo, quase conseguindo configurar meu servidor de correio sob o Debian. Só empaquei numa coisa... Qdo dou o comando "cat /etc/lilo.conf | maild ....." ele retorna "maildrop: signal 0x0B". O q eu faço pra resolver isso?
#34 Comentário enviado por waes60 em 03/08/2004 - 12:46h
Gostaria de saber se alguem passou pelo mesmo problema na hora do teste de autenticacao.

Quando digito o comando telnet 0 143 tenho o seguinte retorno:

Trying 0.0.0.0.....
Conected to 0 (0.0.0.0)
Escape character is '^]'.
OK [CAPABILITY IMAP.....
0 login eu@meudominio.com.br senha
0 NO login failed


Alguem sabe o que pode ser???

E outra coisa meu log do mysql nao aparece nada ..... é este mesmo o local = /var/lib/mysql/mysql.sock ????

Grato.
#35 Comentário enviado por dgsgato em 03/08/2004 - 15:44h
Parabéns Máximo! O tutorial é 10! E funciona... No mandrake! Testei nele e funcionou direitinho! Mas no Debian... Estou completamente decepcionado! Num consegui fazer esse troço funcionar de jeito nenhum! Desisti! Vou fazer da forma tradicional! Qdo tiver mais tempo tento novamente! Ah! Obrigado pela ajuda amigão! Akele probleminha q vc me falou, era akilo mesmo. Já os outros q surgiram... Boiei legal!

Abração!
#36 Comentário enviado por eduardo.ramos em 03/08/2004 - 17:49h
dgmail:/etc/init.d# maildrop -v
maildrop 1.6.3 Copyright 1998-2003 Double Precision, Inc.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional informati

O que fazer?
Compilei o maildrop com suporte ao mysql, e ele nao e' listado no comando acima.

estou tendo outro problema :
O que pode ser este erro abaixo nao sei mais o que fazer...

Aug 3 17:47:22 dgmail postfix/cleanup[564]: warning: 73FE6CEF3A: virtual_alias_maps map lookup problem for eduardo.ramos@dgmail. Aug 3 17:47:22 dgmail postfix/pickup[562]: warning: maildrop/8E6CB833BA: Error writing message file

#37 Comentário enviado por agomes em 16/08/2004 - 16:06h
Boa Tarde pessoal,

Eu estou com um pequeno problema, não consigo startar o postfix, porque o deamon não foi criado.
Onde eu posso ter errado.
Obrigada.
Angela.
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=526&pagina=9
#38 Comentário enviado por agomes em 16/08/2004 - 16:07h
Eu estou com um pequeno problema, não consigo startar o postfix, porque o deamon não foi criado.
Onde eu posso ter errado.
Obrigada.
Angela.
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=526&pagina=9
#39 Comentário enviado por wagner_quedi em 22/08/2004 - 21:48h
Alguem ja enfrentou esse problema ?

executo este comando
[wagner@sedna courier-imap-3.0.7]$ ./configure --prefix=/usr --sysconfdir=/etc/courier/ --libexecdir=/usr/lib/courier

aparece o seguinte erro:
configure: error: Cannot find either the gdbm or the db library.

Uso o CL8 e o gdbm está instalado
[root@sedna /source]# rpm -qa |grep gdbm
gdbm-1.8.0-7cl

alguem pode me ajudar .. impaquei ai ..
#40 Comentário enviado por wagner_quedi em 22/08/2004 - 22:12h
ai galera .. consegui arrumar .. foi só executar este comando e funcionou .. FICA AI A DICA.

apt-get install gdbm{,-devel} patch gcc-c++ libstdc++-devel openssl{,-devel}
#41 Comentário enviado por wagner_quedi em 22/08/2004 - 22:51h
impaquei dinovo .. agora com o seguinte problema ..

executo o ./configure --prefix=/usr --sysconfdir=/etc/courier/ --libexecdir=/usr/lib/courier

ele executa por alguns minutos .. ai termina com a seguinte mensagem ..

configure: configuring in maildir
configure: running /bin/sh './configure' --prefix=/usr '--prefix=/usr' '--sysconfdir=/etc/courier/' '--libexecdir=/usr/lib/courier' --with-authchangepwdir=/usr/lib/courier/authlib --with-db=gdbm --with-userdb=/etc/userdb --with-makedatprog='/usr/lib/courier/makedatprog' --with-mailuser=root --without-socks --with-authchangepwdir=/var/tmp/dev/null --with-package=courier-imap --with-version=3.0.7 --cache-file=/dev/null --srcdir=.
checking build system type... mkdir: cannot create directory `/root/tmp/cg17540-28737': Permission denied
mkdir: cannot create directory `/root/tmp/cg-17540': Permission denied
config.guess: cannot create a temporary directory in /root/tmp
configure: error: cannot guess build type; you must specify one
configure: error: /bin/sh './configure' failed for maildir



lembrando que to executando o comando como usuario normal .. nao como root


ALGUEM ME AJUDA
#42 Comentário enviado por wagner_quedi em 23/08/2004 - 01:43h
Vixe .. mais uma vez travei .. a duvida anterior resolvi dando um chmod 777 no /root

agora o problema é o seguinte .. terminei a install do courier-imap so que dou um ps ax so que aparece os serviços assim

/usr/lib/courier/authlib/authdaemond.pgsql

notem que no final está .pgsql e preciso que seja mysql alguem sabe como resolver?:??????????????????????
#43 Comentário enviado por bitstorm em 02/09/2004 - 18:01h
Wagner, eu sou outro empacado no Debian Sarge... mas pelomenos esta parte eu resolvi assim:

#apt-get install courier-maildrop courier-authmysql courier-imap courier-imap-ssl -y

e mexi direto nos arquivos de configuração(/etc/courier).. espero ter ajudado! ;)
#44 Comentário enviado por Beethoven em 17/09/2004 - 16:43h
Pessoal instalei um server com fedora... e tive um problema na autenticação do postfix... pra envia... pois ele requisitava no mysql por exemplo:
user="beethoven"
quando o que eu precisava era
user="beethoven@warchalking.com.br"
depois de procura por toda net e visto q muuuita gente teve o mesmo problema... e acabaram deixando de usar o pam... e depois de 2 dias de busca digitei o comando na console:

saslauthd

e olha ali a solução:
--------------------------------------------------------------
usage: saslauthd [options]

option information:
-a <authmech> Selects the authentication mechanism to use.
-c Enable credential caching.
-d Debugging (don't detach from tty, implies -V)
-r Combine the realm with the login before passing to authentication mechanism
Ex. login: "foo" realm: "bar" will get passed as login: "foo@bar"
The realm name is passed untouched.
-O <option> Optional argument to pass to the authentication
mechanism.
-l Disable accept() locking. Increases performance, but
may not be compatible with some operating systems.
-m <path> Alternate path for the saslauthd working directory,
must be absolute.
-n <procs> Number of worker processes to create.
-s <kilobytes> Size of the credential cache (in kilobytes)
-t <seconds> Timeout for items in the credential cache (in seconds)
-v Display version information and available mechs
-V Enable verbose logging
-h Display this message.
------------------------------------------------------------------------

era so usar a opção "-r"
dae é só ir em /etc/sysconfig/saslauthd

e setar:
FLAGS=" -r "

**cuide para q a primeira " (aspas) fique colada com o =(igual)... sem espaço...

aleluia.. ateh q enfim... mas valeu a pena

beethoven@warchalking.com.br
www.warchalking.com.br
#45 Comentário enviado por boo em 20/10/2004 - 15:59h
Vou dar a dica pra quem não consegue fazer o Maildrop funcionar.
Levei 3 dias pra conseguir colocar o maildrop pra funcionar, pois simplesmente este tutorial não aborda como criar os arquivos de configuração do maildrop.
Bem, NÃO CONFIE NAS VARIAVEIS DO MAILDROP !
Ou seja, no seu arquivo de configuração, ao invés de usar DEFAULT="$HOME/Maildir" use DEFAULT="/postfix/meu.dominio/meu_usuario/Maildir/"
Infelizmente o Maildrop se perde quando é usada variável.
(detalhe: eu uso a versão 1.7.0 do maildrop)

Enfim, para que o maildrop funcione, você não precisa ter um arquivo /etc/maildrop, mas você deve ter um arquivo .mailfilter dentro do $HOME/Maildir.
Este arquivo deve conter uma única linha (ou mais, caso você saiba o que está fazendo) para que funcione... No meu caso, usei apenas o seguinte:
DEFAULT="/postfix/meu.dominio.com/meu_usuario/Maildir/"
funcionou que foi uma beleza.
Se ainda assim não der certo, tente usar o modo verboso do maildrop colocando o parâmetro -V 1, -V 2, ..., -V 9.
Exemplo: ifconfig | maildrop -V 4 -mysql -d fulano@dominio.com

Espero que isso ajude.

#46 Comentário enviado por boo em 20/10/2004 - 16:43h
Outra coisa incrivel que notei é o seguinte...
Sem a opção -V o maildrop simplesmente não funciona !!!
exemplo:

ifconfig | maildrop -V 9 -mysql -d fulano@dominio # NAO FUNCIONA
ifconfig | maildrop -mysql -d fulano@dominio # NAO FUNCIONA
ifconfig | maildrop -V -mysql -d fulano@dominio # FUNCIONA !!!

Isso só pode ser um bug. Até porque a documentação do maildrop diz:

-V level
Initialize the VERBOSE variable to level. Because maildrop parses the entire before running
it, this option is used to produce debugging output in the parsing phase. Otherwise, if filename
has syntax errors, then no debugging output is possible because the VERBOSE variable is not yet
set.

-V is ignored when maildrop runs in delivery mode.

Porém, ao usar a opção -d você estará usando o Maildrop no delivery mode e nem de longe o parâmetro -V é ignorado !
Infelizmente a versão 1.7.0 do maildrop tem esse erro.
Sugiro que seja utilizada a versão 1.6.3 (que me parece que nao tem esse erro) ou então usar o parâmtro -V sempre...
#47 Comentário enviado por boo em 21/10/2004 - 16:39h
Realmente o tratamento de parâmetros do maildrop 1.7.0 não funciona...
Vejam que bizarro:

ifconfig | maildrop -V -w 90 -mysql -d igor@partnerinfo.com.br # nao funciona
ifconfig | maildrop -V -mysql -w 90 -d igor@partnerinfo.com.br # funciona

notem que os parâmetros continuam sendo os mesmos...
porém a ordem deles é diferente.
Mais uma vez, muito cuidado ao utilizar o maildrop pessoal, o lance é traiçoeiro.
#48 Comentário enviado por mparada em 23/10/2004 - 21:07h
Gente socorro courier-imap
não compila de jeito nenhum, tentei de tudo o apt-get diz que meus pacotes estão atualizadissimos e não habilita o supote ao mysql.

tem pontos bons, o mysql ta rodando, postfix tambem porem quando logo no postafixadmin ele dix não encontrat tabela, sendo que a tabela mailbox esta beleza.

alquem pode me dar um help
bye
#49 Comentário enviado por mparada em 30/10/2004 - 13:04h
Mal hem!

desisti do imap

vou tentar o uebmiau ou squirrelmail

bye
#50 Comentário enviado por sancmk em 04/11/2004 - 13:19h
Alguém pode me dar um help para este erro na hora da compilação do maildrop?

checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking for perl5... /usr/bin/perl5
checking for cat... /bin/cat
configure: error: Invalid --with-db option
configure: error: /bin/sh './configure' failed for makedat

A versão do maildrop que estou utilizando é: maildrop-1.7.0, e a versão do Linux é Mandrake 10.0 e resolvi usar o MySQL do próprio Mandrake 10.0.

Obrigado Galera.
#51 Comentário enviado por sancmk em 05/11/2004 - 11:59h
Galera, o problema que tive relacionado a:

checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking for perl5... /usr/bin/perl5
checking for cat... /bin/cat
configure: error: Invalid --with-db option
configure: error: /bin/sh './configure' failed for makedat

A versão do maildrop que estou utilizando é: maildrop-1.7.0, e a versão do Linux é Mandrake 10.0 e resolvi usar o MySQL do próprio Mandrake 10.0.

Foi resolvido...Sempre faço a instalação com o mínimo de coisas para instalar, aí, aconteceu de estar faltando umas das bibliotecas para o compilador. E, peguei também a seguinte versão do maildrop: "maildrop-1.6.3.tar.bz2. E, mais outro detalhe, tive que instalar outros pacotes do MySQL da versão Mandrake 10.0, além dos mencionados aqui, pois o "mysql_config" não vem instalado na instalação padrão.
#52 Comentário enviado por sancmk em 09/11/2004 - 06:04h
Uma possível resposta para este erro:
-----------
Comentário enviado por waes60 em 03/08/2004:

Gostaria de saber se alguem passou pelo mesmo problema na hora do teste de autenticacao.

Quando digito o comando telnet 0 143 tenho o seguinte retorno:

Trying 0.0.0.0.....
Conected to 0 (0.0.0.0)
Escape character is '^]'.
OK [CAPABILITY IMAP.....
0 login eu@meudominio.com.br senha
0 NO login failed


Alguem sabe o que pode ser???

E outra coisa meu log do mysql nao aparece nada ..... é este mesmo o local = /var/lib/mysql/mysql.sock ????

Grato.
------

Pessoal, tive este erro acima também, dá mesma forma como sitado pelo "waes60". Em meu caso o problema foi no arquivo /etc/courier/authmysqlrc, onde na linha:

MYSQL_SOCKET /var/lib/mysql/mysql.sock

Eu tinha colocado o path "/var/lib/mysql/mysql.sock" errado. Coloquei este path "/var/lib/mysql.sock", bom o arquivo não estava aqui, por isso não funcionava.

Atenciosamente, Alessandro.
#53 Comentário enviado por sancmk em 18/11/2004 - 09:47h
Galera,

Esta apostila é muito boa, dei nota 10 nela! Segui ela passo a passo e 90 % do conteúdo me atendeu. Bom, como vivemos em ambientes diferentes, com certeza, nem tudo funcionará como está escrito aqui. Então uma pessoa desta comunidade fez sua contribuição e colocou alguns aprimoramentos desta apostila no site dela. Eu estava com problemas na hora de testar a autenticação do SASL. Quando gerava a chave, ou seja, senha, da forma descrita aqui:

------
# printf 'marco.maximo@dominio1.com.br
Se você montou seu ambiente utilizando o antigo tutorial, você terá notado que eu mudei o nome da tabela e dos seus campos. Essas alterações foram necessárias devido a necessidade de adequação ao PostfixAdmin.

Você pode tomar dois caminhos:
  • Adequar o PostfixAdmin ao seu ambiente e suas tabelas do MySQL.
  • Migrar o conteúdo do banco para as novas tabelas do PostfixAdmin.
Se você optou pela primeira opção, parabéns, você conhece bastante PHP e possui um bom tempo livre :-)

Caso tenha optado pela segunda opção, vou explicar como fazer essa manobra com "pouco" trauma.

OBS: Esse solução que fiz talvez não seja a mais elegante, mas pelo menos funcionou. Prova de que os fins justificam os meios :-)

Preparando o arquivo:

Crie um backup da antiga tabela no diretório /root/tmp/:

# mysqldump -B mail --tables virtual_users -psenha > /root/tmp/backup_mail.cf

Edite o arquivo gerado, com o editor VI (Se você não conhece o VI, acho uma boa hora para aprender) e apague as linhas parecidas com:

# MySQL dump 8.16
#
# Host: localhost Database: mail
#--------------------------------------------------------
# Server version 3.23.46-log

#
# Table structure for table 'virtual_users'
#


CREATE TABLE virtual_users (
   unique_id int(32) unsigned NOT NULL auto_increment,
   id char(128) NOT NULL default '',
   password char(128) default NULL,
   uid int(10) unsigned default '502',
   gid int(10) unsigned default '503',
   home char(255) default NULL,
   maildir char(255) default NULL,
   date_add date default NULL,
   time_add time default NULL,
   domain char(128) default NULL,
   nome char(255) default NULL,
   imapok tinyint(3) unsigned default '1',
   disk_usage int(10) unsigned default NULL,
   quota char(128) default '10000000S',
   htaccess tinyint(4) default '0',
   PRIMARY KEY  (id),
   KEY unique_id (unique_id)
) TYPE=MyISAM;

#
# Dumping data for table 'virtual_users'
#
========================================

# Deixe só os dados da tabela. Exemplo:


INSERT INTO virtual_users VALUES (494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE',1,0, '10000000S', 0);

ATENÇÃO: Retire todas as linhas vazias do COMEÇO e do FINAL do arquivo.

Com o VI aberto, no modo de comando (sinal de dois-pontos), execute o seguinte comando:

:%s/INSERT INTO virtual_users VALUES (//g
:%s/);//g

Com isso você vai deixar a linha parecida com isso:

494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE', 1, 0, '10000000S', 0

Agora crie o script em PHP com o seguinte conteúdo (add_mysql.php):

#!/usr/bin/php -q
<?
// Variáveis de acesso ao MySQL
$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";
//Arquivo com o backup do antiga tabela "virtual_users"
$file_bak = "/root/tmp/backup_mail.cf";

//=============
//INICIO
//=============

$conexao = mysql_connect($host,$user,$senha); mysql_select_db("$name_db", $conexao);
// Corta o arquivo
$f=file("$file_bak");

for($i=0;$i<count($f);$i++) {
   list($id, $username, $password, $uid, $gid, $home, $maildir, $date, $time, $domain, $name, $active, $disk_usage, $quota, $htaccess)=explode(", ",  $f[$i]);
   $insert = "INSERT INTO mailbox (username, password, name, home, maildir, quota, domain, create_date, active, uid, gid, disk_usage, htaccess) VALUES  ($username, $password, $name, $home, $maildir, $quota, $domain, $date, $active, $uid, $gid, $disk_usage, $htaccess)";
mysql_query($insert,$conexao);
  echo "\n";
  echo "Usuário $username cadastrado com sucesso!!! \n";
}
?>

Edite as seguintes variáveis conforme a sua configuração:

$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";

Cruze os dedos e execute o script :-)

# chmod +x add_mysql.php
# ./add_mysql.php


Teste se foi tudo ok...

# mysql -D postfix -u root -psenha -e "select * from mailbox;"

Se ocorreu tudo certo, vai aparecer um monte de coisa na tela. Agora, temos de terminar o serviço. Para a migração ser perfeita, temos que corrigir mais 3 campos da tabela, são eles:
  • QUOTA
  • UID
  • GID
A QUOTA diferente da antiga tabela, agora precisa ter um "S" no final de cada valor. Isso é necessário para que o MAILDROP crie o arquivo $HOME/Maildir/maildirsize de cada usuário caso não exista. Esse arquivo controla a sua COTA conforme especificado no MySQL.

Os valores do campos UID e GUI devem ser o mesmo do usuário MAILDROP.

Conecte-se no MySQL e execute:

# mysql -D postfix -u root -psenha
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+------------+
| quota      |
+------------+
| 30000000   |
+------------+


Alterando a COTA:

mysql> update mailbox set quota=concat(quota, 'S');
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+-------------+
| quota       |
+-------------+
| 30000000S   |
+-------------+


mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  502 |  503 |
+------+------+


Alterando o UID e GID:

mysql> update mailbox set uid=108,gid=108 where uid=502 and gid=503;
mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  108 |  108 |
+------+------+


Beleza, banco migrado com sucesso. Espero :-)

marco.maximo@dominio1.com.br
Se você montou seu ambiente utilizando o antigo tutorial, você terá notado que eu mudei o nome da tabela e dos seus campos. Essas alterações foram necessárias devido a necessidade de adequação ao PostfixAdmin.

Você pode tomar dois caminhos:
  • Adequar o PostfixAdmin ao seu ambiente e suas tabelas do MySQL.
  • Migrar o conteúdo do banco para as novas tabelas do PostfixAdmin.
Se você optou pela primeira opção, parabéns, você conhece bastante PHP e possui um bom tempo livre :-)

Caso tenha optado pela segunda opção, vou explicar como fazer essa manobra com "pouco" trauma.

OBS: Esse solução que fiz talvez não seja a mais elegante, mas pelo menos funcionou. Prova de que os fins justificam os meios :-)

Preparando o arquivo:

Crie um backup da antiga tabela no diretório /root/tmp/:

# mysqldump -B mail --tables virtual_users -psenha > /root/tmp/backup_mail.cf

Edite o arquivo gerado, com o editor VI (Se você não conhece o VI, acho uma boa hora para aprender) e apague as linhas parecidas com:

# MySQL dump 8.16
#
# Host: localhost Database: mail
#--------------------------------------------------------
# Server version 3.23.46-log

#
# Table structure for table 'virtual_users'
#


CREATE TABLE virtual_users (
   unique_id int(32) unsigned NOT NULL auto_increment,
   id char(128) NOT NULL default '',
   password char(128) default NULL,
   uid int(10) unsigned default '502',
   gid int(10) unsigned default '503',
   home char(255) default NULL,
   maildir char(255) default NULL,
   date_add date default NULL,
   time_add time default NULL,
   domain char(128) default NULL,
   nome char(255) default NULL,
   imapok tinyint(3) unsigned default '1',
   disk_usage int(10) unsigned default NULL,
   quota char(128) default '10000000S',
   htaccess tinyint(4) default '0',
   PRIMARY KEY  (id),
   KEY unique_id (unique_id)
) TYPE=MyISAM;

#
# Dumping data for table 'virtual_users'
#
========================================

# Deixe só os dados da tabela. Exemplo:


INSERT INTO virtual_users VALUES (494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE',1,0, '10000000S', 0);

ATENÇÃO: Retire todas as linhas vazias do COMEÇO e do FINAL do arquivo.

Com o VI aberto, no modo de comando (sinal de dois-pontos), execute o seguinte comando:

:%s/INSERT INTO virtual_users VALUES (//g
:%s/);//g

Com isso você vai deixar a linha parecida com isso:

494, 'sandra.hirose@seu_dominio.com.br', 'ad6UWax8vrpqg', 108, 108, '/home/', 'seu_dominio.com.br/sandra.hirose/Maildir/', '2002-11-28', '03:09:58', 'seu_dominio.com.br', 'SANDRA ETSUKO HIROSE', 1, 0, '10000000S', 0

Agora crie o script em PHP com o seguinte conteúdo (add_mysql.php):

#!/usr/bin/php -q
<?
// Variáveis de acesso ao MySQL
$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";
//Arquivo com o backup do antiga tabela "virtual_users"
$file_bak = "/root/tmp/backup_mail.cf";

//=============
//INICIO
//=============

$conexao = mysql_connect($host,$user,$senha); mysql_select_db("$name_db", $conexao);
// Corta o arquivo
$f=file("$file_bak");

for($i=0;$i<count($f);$i++) {
   list($id, $username, $password, $uid, $gid, $home, $maildir, $date, $time, $domain, $name, $active, $disk_usage, $quota, $htaccess)=explode(", ",  $f[$i]);
   $insert = "INSERT INTO mailbox (username, password, name, home, maildir, quota, domain, create_date, active, uid, gid, disk_usage, htaccess) VALUES  ($username, $password, $name, $home, $maildir, $quota, $domain, $date, $active, $uid, $gid, $disk_usage, $htaccess)";
mysql_query($insert,$conexao);
  echo "\n";
  echo "Usuário $username cadastrado com sucesso!!! \n";
}
?>

Edite as seguintes variáveis conforme a sua configuração:

$host = "localhost";
$user = "root";
$senha = "senha";
$name_db = "postfix";

Cruze os dedos e execute o script :-)

# chmod +x add_mysql.php
# ./add_mysql.php


Teste se foi tudo ok...

# mysql -D postfix -u root -psenha -e "select * from mailbox;"

Se ocorreu tudo certo, vai aparecer um monte de coisa na tela. Agora, temos de terminar o serviço. Para a migração ser perfeita, temos que corrigir mais 3 campos da tabela, são eles:
  • QUOTA
  • UID
  • GID
A QUOTA diferente da antiga tabela, agora precisa ter um "S" no final de cada valor. Isso é necessário para que o MAILDROP crie o arquivo $HOME/Maildir/maildirsize de cada usuário caso não exista. Esse arquivo controla a sua COTA conforme especificado no MySQL.

Os valores do campos UID e GUI devem ser o mesmo do usuário MAILDROP.

Conecte-se no MySQL e execute:

# mysql -D postfix -u root -psenha
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+------------+
| quota      |
+------------+
| 30000000   |
+------------+


Alterando a COTA:

mysql> update mailbox set quota=concat(quota, 'S');
mysql> select quota from mailbox where username='marco.maximo@dominio1.com.br';
+-------------+
| quota       |
+-------------+
| 30000000S   |
+-------------+


mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  502 |  503 |
+------+------+


Alterando o UID e GID:

mysql> update mailbox set uid=108,gid=108 where uid=502 and gid=503;
mysql> select uid,gid from mailbox where username='marco.maximo@dominio1.com.br';
+------+------+
| uid  | gid  |
+------+------+
|  108 |  108 |
+------+------+


Beleza, banco migrado com sucesso. Espero :-)

xxxxx' | mmencode
---------

Não conseguia me autenticar, dava o seguinte erro:

------
[root@localhost pam_mysql]# printf 'anta@dominio1.com.br{Texto1} anta@dominio1.com.br{Texto2}teste' |mmencode
YW50YUBkb21pbmlvMS5jb20uYnJ7VGV4dG8xfSBhbnRhQGRvbWluaW8xLmNvbS5icntUZXh0
bzJ9dGVzdGU=
[root@localhost pam_mysql]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 postfix.dominio1.com.br ESMTP MEU DOMINIO
ehlo postfix
250-postfix.dominio1.com.br
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250 8BITMIME
AUTH PLAIN YW50YUBkb21pbmlvMS5jb20uYnJ7VGV4dG8xfSBhbnRhQGRvbWluaW8xLmNvbS5icntUZXh0bzJ9dGVzdGU=
535 Error: authentication failed
--------

Aí, fui no seguinte site: http://smaximo.minidns.net/~marco/tutorial/postfix_mysql_v2.0.txt .
Este site mostra algumas correções. Lá, descobri que se utilizasse o seguinte comando:
----
[root@localhost pam_mysql]# printf 'anta@dominio1.com.br\0anta@dominio1.com.br\0teste' |mmencode
-----
Funcionou assim.

Vejam:

-----
[root@localhost pam_mysql]# printf 'anta@dominio1.com.br\0anta@dominio1.com.br\0teste' |mmencode
YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
[root@localhost pam_mysql]# YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
[root@localhost pam_mysql]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 postfix.dominio1.com.br ESMTP MEU DOMINIO
ehlo postfix
250-postfix.dominio1.com.br
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250 8BITMIME
AUTH PLAIN YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
235 Authentication successful
------------------

#54 Comentário enviado por sancmk em 18/11/2004 - 09:51h
[root@localhost pam_mysql]# printf 'anta@dominio1.com.br\0anta@dominio1.com.br\0teste' |mmencode
YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
[root@localhost pam_mysql]# YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
[root@localhost pam_mysql]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 postfix.dominio1.com.br ESMTP MEU DOMINIO
ehlo postfix
250-postfix.dominio1.com.br
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250 8BITMIME
AUTH PLAIN YW50YUBkb21pbmlvMS5jb20uYnIAYW50YUBkb21pbmlvMS5jb20uYnIAdGVzdGU=
235 Authentication successful
#55 Comentário enviado por sancmk em 18/11/2004 - 09:57h
Galera,

Engraçado que postei um comentário aqui, mas ficou diferente do que escrevi:

Do jeito que ficou: [root@localhost pam_mysql]# printf 'anta@dominio1.com.br\0anta@dominio1.com.br\0teste' |mmencode

Era para ser mais ou menos assim: [root@localhost pam_mysql]# printf {aki tem '}anta@dominio1.com.br{aki tem uma barra invertida e um 0, tipo assim: \0}anta@dominio1.com.br{aki tem uma barra invertida e um 0, tipo assim: \0}teste{aki tem '} |mmencode

Será que vai dar certo:

Qualquer coisa vejam em: http://smaximo.minidns.net/~marco/tutorial/postfix_mysql_v2.0.txt
#56 Comentário enviado por sancmk em 18/11/2004 - 10:02h
Tomará que seja a última.

Estranho.
Toda vez que escrevo: BarraInvertida+ZeroNumeral a minha postagem aqui fica assim: \0

Então uma das coisas que postei aqui num deu certo.
#57 Comentário enviado por leandro.php em 25/11/2004 - 13:11h
uso o debia sarge.. segui o tutorial sem problemas até fazer os testes de autenticacao do IMAP dando o erro a seguir:
----------------------------
Trying 0.0.0.0.....
Conected to 0 (0.0.0.0)
Escape character is '^]'.
OK [CAPABILITY IMAP.....
0 login eu@meudominio.com.br senha
0 NO login failed
-----------------------------

alguem sabe qual o problema?

se alguem souber mande a resposta para mister_of_world@hotmail.com

valeu
#58 Comentário enviado por mafioso em 16/12/2004 - 18:52h
O mesmo erro que já deu com outra pessoa

# cat /etc/lilo.conf | maildrop-mysql -d marco.maximo@dominio1.com.br

retorna: Invalid user specified.

Alguém sabe o que pode ser?

Valeu

Flávio Henrique
#59 Comentário enviado por sasse em 20/12/2004 - 11:36h
Ja vai para um mes de tentativa em colocar um linux substituindo o meu WINDOWS e nao consigo chegar a um fim , pois quando nao da problemas o email nao chega. quero dizer que sempre tem problemas, hoje estou tentando colocar novamente com este tutorial seguindo os passos com se fosse uma receita de BOLO, mas nao funciona, pois no mandrake 9.1 nao e criado de forma alguma o arquivo mysql.sock entao fico preso a pequenos detalhe. enquanto isso estou com o meu velho e funcional servidor de e-mail MDAEMON na porcaria do windows 2k server.
se alguem tiver uma solução para este problema meu , por favor nao se exite em me enviar e-mail, será bem aceito todo e qualquer tipo de ajuda. Abilio (sasse@goiasnet.com)
#60 Comentário enviado por felizate em 03/01/2005 - 21:26h
Caro mafioso você precisa colocar o marco.maximo@dominio1.com.br na tabela alias com goto para o mesmo email.
No meu funcionou assim.

Espero que funcione um abraço.
#61 Comentário enviado por felizate em 03/01/2005 - 21:33h
Ai pessoal preciso usar uma conta nome.sobrenome@dominio.com.br porém quando crio um usuário que tenha um . "ponto" no username na tabela do postfix ele não funciona se alguem souber como fazer funcionar por favor postem aqui.

Obrigado.
#62 Comentário enviado por cemy em 04/01/2005 - 12:19h
Galera, preciso de um help urgente. To tentando fazer a autenticação com SASL utilizando o red hat 9, veja minha configuração:

pacotes:
cyrus-sasl-2.1.10-4
cyrus-sasl-devel-2.1.10-4
cyrus-sasl-plain-2.1.10-4
cyrus-sasl-md5-2.1.10-4

pam-devel-0.75-48
pam_smb-1.1.6-7
pam-0.75-48
pam_krb5-1.60-1

foi feito a compilacao do pam_mysql-0.5.tar.gz e a copia do pam_mysql.so para o /lib/security/

e os arquivos :
/usr/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd

/etc/pam.d/smtp
#%PAM-1.0
auth optional /lib/security/pam_mysql.so user="usuario" passwd="senha" db="correio" host="localhost" table="mails" usercolumn="endereco" passwdcolumn="password" crypt=1

account required /lib/security/pam_mysql.so user="usuario" passwd="senha" db="correio" host="localhost" table="mails" usercolumn="endereco" passwdcolumn="password" crypt=1

eu inicio o servico saslauthd , e no ps -ax aparece :
/usr/sbin/saslauthd -m /var/run/saslauthd/mux -a shadow

daí edito o script em /etc/init.d/saslauthd, e mudo de shadow para pam,
daí vejo novamento os processos, ps -ax :
/usr/sbin/saslauthd -m /var/run/saslauthd/mux -a pam

tento logar da internet e aparece a mensagem no log do postfix :

Jan 4 12:16:56 correio postfix/smtpd[25883]: connect from unknown[200.96.149.2]
Jan 4 12:16:56 correio postfix/smtpd[25883]: warning: unknown[200.96.149.2]: SASL LOGIN authentication failed
Jan 4 12:16:57 correio postfix/smtpd[25883]: lost connection after AUTH from unknown[200.96.149.2]
Jan 4 12:16:57 correio postfix/smtpd[25883]: disconnect from unknown[200.96.149.2]
Jan 4 12:16:58 correio postfix/smtpd[26050]: connect from unknown[200.96.149.2]
Jan 4 12:16:58 correio postfix/smtpd[26050]: warning: unknown[200.96.149.2]: SASL LOGIN authentication failed
Jan 4 12:16:59 correio postfix/smtpd[26050]: lost connection after AUTH from unknown[200.96.149.2]
Jan 4 12:16:59 correio postfix/smtpd[26050]: disconnect from unknown[200.96.149.2]
#63 Comentário enviado por fabianohernger em 09/01/2005 - 15:55h
ae galera,
otimo tutorial...
só engatei no teste do maildrop

dá isso:
root@grupoheringer:/etc/postfix# cat /etc/lilo.conf | maildrop -mysql -d marco.maximo@dominio1.com.br
maildrop: signal 0x0B

chequei tudo, parece estar ok...

q q eu faço? hehehehe
#64 Comentário enviado por diogoroedel em 11/01/2005 - 19:05h
Olá Galera,
Excelente tutorial, porém não estou conseguindo acessar o postfixadmin.
Ele está me retornando o seguinte erro:

DEBUG INFORMATION:
Connect: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)

Sou grato por qualquer ajuda
Diogo Roedel
diogo.r@melim.com.br
diogoroedel@hotmail.com (MSN)
#65 Comentário enviado por linuxkids em 04/02/2005 - 11:58h
bom galera eu estou infrentando uma certa dificuldade no conectiva 10 para fazer este turorial, se alguem ja fez neste sistema por favor poste ae
#66 Comentário enviado por r1w7g em 12/02/2005 - 17:24h
Blz galera, uso mandrake quando vou compilar o danado do postfix ele dah um erro cabuloso aqui se alguem puder me ajudar. jah tentei de tudo que eu sabia. olha a treta que aparece...

master_sig.o master_avail.o master_spawn.o master_service.o master_status.o master_listen.o master_vars.o master_wakeup.o master_flow.o ../../lib/libglobal.a ../../lib/libutil.a -L/usr/lib -lpcre -ldb -lnsl -lresolv
/usr/lib/libdb.so: undefined reference to `pthread_condattr_setpshared'
/usr/lib/libdb.so: undefined reference to `pthread_mutexattr_destroy'
/usr/lib/libdb.so: undefined reference to `pthread_mutexattr_setpshared'
/usr/lib/libdb.so: undefined reference to `pthread_mutexattr_init'
/usr/lib/libdb.so: undefined reference to `pthread_mutex_trylock'
collect2: ld returned 1 exit status
make: *** [master] Error 1
make: *** [update] Error 1


espero que alguem me ajude, senao nao vou conseguir passar desse ponto..
#67 Comentário enviado por fvcosta em 16/02/2005 - 20:32h
Utilizo o Fedora Core 3 e quando tento habilitar o postfix para o mysql com o comando make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -I/usr/include/sasl' 'AUXLIBS=/usr/lib/libmysqlclient.so -lm -L/usr/lib -R/usr/lib -lsasl2' não funciona, diz que não pode ler alguns arquivos.
Estou usando a versão mais atual dos pacotes para o FC3 e o caminho do MySQL é o mesmo do path do comando.

O que pode estar errado?

Acredito que pode ser pelas bibliotecas que o autor pede para a compilação do postfix, mas elas não existem para FC3
# libdbtcl3.3
# libdb3.3-devel
# libmysql12-devel
# libpcre0-devel
# libsasl2-devel

Quais as equivalentes em FC3?
#68 Comentário enviado por alvaro_duarte_ad em 20/02/2005 - 23:26h
Ai galera gostei muyito do artigo, vou tentar colocalo em partica essa semana, vou te montra um server de e-mailnão para rede local e sim um server de e-mail que usuarios da internet possam enviar e-mail para a empresa que estou trabalhnado no momento, no caso vou te que administrar dois dominios, e tipo como faria para montar esse server para que todos da internet possam enviar e-mails para a empresa e a empresa possa enviar e-mail extrernos tb??? tipo eu pessei em botar um velox 768 e colocar o modem roteador ele pegaria o IP fixo na internet e eu consegueria botar o sever para funcionar na net sera que dar para fazer isso?????????
alguem pode me ajudar?????????
#69 Comentário enviado por mauricius em 08/03/2005 - 09:53h
Muito bom o artigo, estou conseguindo desenvolve-lo bem.
Agradecimentos ao autor do mesmo.
#70 Comentário enviado por e-Tux em 24/03/2005 - 11:17h
Muito bom o artigo, foi muito útil para mim.
Aproveito e deixo aqui um bit de ajuda para aqueles que estão com problemas de autenticação via sasl2 para o envio de emails.
Problema: Na autenticação o pacote cyrus-sasl do mandrake ignora o domínio do username. Ex.: username="fulano@dominio" o saslauthd vai substituir o username para "fulano" apenas.
Solução: Baixe os cyrus-sasl e o patch em:
ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.20.tar.gz
http://frost.ath.cx/software/cyrus-sasl-patches/dist/2.1.19/cyrus-sasl-2.1.19-checkpw.c+sql.c.patch

Observem que o patch é uma versão anterior, mas não tem problema,
para resolver isto, basta renomear o arquivo para a versão atual e substituir as referências da versão anterior para versão atual no arquivo, depois aplicar o patch e compilar o pacote...
-----------------------------
# tar -zxvf cyrus-sasl-2.1.20.tar.gz -C /source/
# cp cyrus-sasl-2.1.19-checkpw.c+sql.c.patch /source
# cd /source
# sed 's/2.1.19/2.1.20/g' cyrus-sasl-2.1.19-checkpw.c+sql.c.patch > cyrus-sasl-2.1.20-checkpw.c+sql.c.patch
# patch -p0 < cyrus-sasl-2.1.20-checkpw.c+sql.c.patch
# cd cyrus-sasl-2.1.20
# ./configure --prefix=/usr \
--enable-login \
--enable-sql \
--with-saslauthd=/var/run/saslauthd \
--with-mysql=/usr/include/mysql
# make
# make install
# cd saslauthd
# make testsaslauthd
# cp testsaslauthd /usr/sbin
-----------------------------

Pronto, agora o arquivo /usr/lib/sasl2/smtpd.conf deve ficar assim:
--------------------------------------------------
#smtpd.conf
#----------------
pwcheck_method: saslauthd
mech_list: plain login
--------------------------------------------------

As demais configurações são as mesmas deste artigo.

Agradeço ao Jefferson <jeffi@nerdgroup.org> que na sua adaptação deste artigo para o slackware 9.1 resolveu o problema acima. Fiz pequenas mudanças para funcionar no mandrake 10.1. :-)
O artigo do Jefferson pode ser encontrado em:
http://www.nerdgroup.org/doc/postfix_mysql_quota_antivirus_antispam.html

Saudações GNU !!!
#71 Comentário enviado por kernelux em 29/03/2005 - 13:56h
ai kara é d +++++ esse artigo...
#72 Comentário enviado por csantiago em 30/04/2005 - 09:33h
Pessoal, alguém tem uma solução para migrar os usuários locais para os usuários no mysql?
#73 Comentário enviado por randra em 05/05/2005 - 18:00h
Supercompleto! mto bom



Rafael Andrade
#74 Comentário enviado por csantiago em 09/05/2005 - 23:50h
Olá pessoal,

Quero colaborar aqui com a solução do seguinte erro:
relay=maildrop, delay=1, status=deferred (temporary failure. Command output: maildrop: signal 0x0B )

Resolvi setando a permissão do arquivo /etc/maildirmysql.config para 744.

Abraços,

César A. Santiago
#75 Comentário enviado por csantiago em 09/05/2005 - 23:53h
Olá pessoal, depois de postar a solução acima fiquei preocupado com a segurança e resolvi mudar para:

# chown 108 /etc/maildropmysql.config
# chmod 660 /etc/maildropmysql.config
# ls -l /etc/maildropmysql.config -l
-rw-rw---- 1 maildrop root 334 Mai 9 22:36 /etc/maildropmysql.config

Espero que assim fique mais seguro.

Abraços,

César
#76 Comentário enviado por csantiago em 11/05/2005 - 22:50h
Ola pessoal, eu estava tendo também problema com a autenticação do SASL, não foi necessário passar o patch, até pq aqui ele não funcionou, felizmente uma pessoa resolveu o problema e postou na lista do postfix, vou acrescentar o POST dele aqui para colaborar.

---- E-mail do André Oliveira
Marcelo, muito obrigado pela sua ajuda cara. Descobri o problema.
O saslauthd precisa ser iniciado com a opção -r para que ele junte o
nome com o dominio.
No mandrake 10.1 ele não estava colocando esta opção. Alterei a
configuração e ele passou a funcionar. Finalmente!!!

[]'s

André
----

Bom, para acrescentar ainda mais, no Mandrake 10.1 para fazer isso basta editar o arquivo /etc/sysconfig/saslauthd e incluir o -r no SASLAUTHD_OPTS, então reinicia o serviço e vamos seguir o tutorial.

Abraços a todos.
#77 Comentário enviado por csantiago em 13/05/2005 - 22:33h
Olá pessoal,

Graças a ajuda do Alejandro Flores consegui finalmente migrar meus usuários do shadow para o mysql, ele me mandou um script que acabei adaptando aqui e para que este conhecimento fique registrado para todos segue abaixo o que fiz:

]# awk -F":" '{ print $1 "\t" $2 }' /etc/shadow > usuariosesenhas

Então removi os usuários de sistema.

]# cat usuariosesenhas | awk {'print "insert into mailbox (username\,password\,name\,maildir\,quota) values (\""$1"@dominio.com.br\"\,\""$2"\"\,\""$1" - Nmail\"\,\"dominio.com.br/"$1"/Maildir/\"\,\"209715200\");"'} > inserts

Depois basta executar fazer mysql -u root -D postfix -p < inserts

ufa! Agora vou brigar com o Maildir. Assim que tiver a solução coloco aqui.

Abraços e agradecimentos ao Alejandro,

César Augusto Santiago
csantiago@mail.uniderp.br
#78 Comentário enviado por kernel_sys em 07/10/2005 - 07:38h
muito bom artigo, parabens
#79 Comentário enviado por mrsoliveira em 17/10/2005 - 11:50h
Pessoal,

Eu estou com problemas para instalação do Courier-Imap, eu estou usando o CL10. Alguém sabe onde encontro os pacotes RPM para esta distro??

Tentei compilar várias vezes seguindo exatamente como explicado, mas acontece o seguinte erro:
checking build system type... mkdir: cannot create directory `/root/tmp/cg5819-17854': Permission denied
mkdir: cannot create directory `/root/tmp/cg-5819': Permission denied
config.guess: cannot create a temporary directory in /root/tmp
configure: error: cannot guess build type; you must specify one
configure: error: /bin/sh './configure' failed for maildir

Eu estou compilando com usuário comum.

Alguém tem alguma idéia de como resolver este problema ou um RPM pronto??

Desde já agradeço a atenção de todos!
#80 Comentário enviado por darksidefsz em 14/12/2005 - 16:25h
Olá!
Estou tentando seguir o tutorial acima no Ubuntu, mas empaquei no maildrop.
Já tentei todas as dicas postadas e nada dele conseguir enviar, o erro que dá é esse:
maildrop: Invalid user specified.

Se alguem tiver alguma idéia.
#81 Comentário enviado por rlsantana em 22/12/2005 - 15:12h
M. Máximo, o que vc diz sobre a distribuição que vc está usando? Recomendada, obrigatória (para compatibilidade com seus procedimentos), ou posso escolher o mandrake mais novo, sem ter problemas? Ainda estou por decidir a distribuição, mas queria o menos problema possível. Porém queria uma versão nova.
#82 Comentário enviado por darksidefsz em 30/12/2005 - 14:00h
Olá!
Fiz o patch descrito nesse site: http://www.syscp.de/docs/installation/debian/sarge/extensionmaildrop/english

Com as devidas correções no trusted user pra uid e no gid pra 108 descrito no tutorial.

Agora o erro é esse na saida do comando maildrop -d: (executado como root)
maildrop: Cannot set my user or group id.

Tem algo sobre a criação do usuário q deveria ser dito?
Pq qdo eu fui alterar as permissoes no /postfix ele não deixou pq o usuario maildrop não existia. Tive q criá-lo.

Estou pensando sériamente em trocar de distro(slackware)
Agradeço a atenção
#83 Comentário enviado por andre_seko em 02/01/2006 - 12:56h
Pessoal Problema resolvido:

ERRO:

Nov 30 12:04:55 alfa amavis[12622]: (12622-06) Clam Antivirus-clamd av-scanner FAILED: Too many retries to talk to /var/amavis/clamd/clamav.socket (Can't connect to UNIX socket /var/amavis/clamd/clamav.socket: No such file or directory) at (eval 39) line 180.

Solução:

Primeiramente edite o arquivo de configuração co clamav (/etc/clamav.conf)

Comente a linha: 'TCPSocket 3310'

Depois descomente e edite a linha:
LocalSocket /var/run/clamav/clamd.sock

Altere o usuário do clamav.

de: User clamav
para: User amavis

Salve o arquivo e vamos editar o arquivo de configuração do amavis (/etc/amavis.conf):

Onde encontra-se as linhas de configuração do clamav, configure conforme abaixo:

# ### http://clamav.elektrapro.com/
['Clam Antivirus-clamd',
\&ask_daemon, ["CONTSCAN {}\n", '/var/run/clamav/clamd.sock'],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
# # NOTE: run clamd under the same user as amavisd,
# # match the socket name in clamav.conf to the socket name in this entry

Apos isso salve o arquivo.

Vamos adiciionar o usuário amavis no grupo clamav e o clamav no grupo do amavis:

# gpasswd -a clamav amavis
# gpasswd -a amavis clamav

Vamos dar propriedade para o amavis nas pastas correspndentes do clamav.

# chown amavis:clamav /var/run/clamav -Rf
# chown amavis:clamav /var/log/clamav -Rf

Após efetuar esses procedimentos

# service clamd restart

Verifique se ele criou o arquivo de socks em:

# ls /var/run/clamav/
Deverá aparecer os arquivos: clamd.sock e clamd.pid

Feito isso é somente reiniciar o serviço do amavis:

# service amavisd restart

Verifique nos logs:

# tail -f /var/log/maillog | grep amavis

Lembrando galera que uso FEDORA CORE 3
Essas informações obtive do seguinte site da própria RED HAT:

http://www200.pair.com/mecham/spam/clamav-redhat-amavis.html

Um abraço a tds e espero ter ajudado

Att

André Gonçalves
Depto. Informática - Portal Público
Microsoft Certified Professional
#84 Comentário enviado por c.rafael em 23/01/2006 - 23:49h
Olá pessoal!! courier-imap.

Olá pessoal, baixei o courier-imao, e quando eu vou descompactar me da a seguinte menagem:

tar jxvf courier-imap......tar.bz2

cannot open: no such file or directory

Por que isso?

Que diretorio que ele não encontra?

dai dpois tentei isso:

tar jxvf courier-imap......tar.bz2 -C /opt

e me deu o mesmo resultado

Agradeço pela ajuda!!!!
#85 Comentário enviado por andre_seko em 24/01/2006 - 00:06h
E ae Rafael blz?
Olha soh tente enverter as opções...

tar -xjfv courier-imap....tar.bz2

Aconteceu algumas vezes isso comigo e depois que comecei a colocar nesta ordem nun apareceu mais mensagem de erro na hora de descompactar arquivo.

Também, verifique as permissões deste arquivo. Qualquer coisa utilize chmod 777 ou modifique as propriedades do arquivo com chown para um usuario comum.

André Gonçalves
Depto. Informática - Portal Público
Microsoft Certified Professional
#86 Comentário enviado por c.rafael em 07/02/2006 - 19:48h
Olá pessoal!!!!

eu estou configurando conforme o artigo, só que estou com um probleminha, gostaria q alguem pudesse me ajudar.

está me gerando o erro ao entrar com o seguinte comando

<b>root@brutus:/postfix# mysql -psql<postfix_mysql.db</B>
ERROR 1062 at line 4: Duplicate entry 'localhost-postfix' for key 1

O que pode ser isso? como q eu resolvo?
#87 Comentário enviado por zerovox em 19/02/2006 - 11:16h
... estou montando um sistema de emails grátis e precisava montar e configurar um servidor de email, seu artigo esta sensacional. Parabéns.
#88 Comentário enviado por fernandoamador em 23/02/2006 - 13:49h
Ótimo artigo...
#89 Comentário enviado por marcioliberato em 23/02/2006 - 22:16h
ainda nao parei para ler o material completo , porem ja dei uma olhadinha parcial e, notei que devem ser instalados varios pacotes...não teria uma forma mais simplificada de instalar e configura-los mais facilmente?????? mais refente ao material do tutorial, aparentemente está bom...
#90 Comentário enviado por strani_amori em 01/03/2006 - 17:05h
O artigo esta otimo, estou configurando com o kurumin 5.0 e estou tendo o seguinte problema: ao executar # ps ax | grep courier obtenho a seguinte resposta: 2839 ? S 0:00 /usr/sbin/courierlogger -pid=/var/run/courier/authdaemon/pid -start /usr/lib/courier/authlib/authdaemond.pgsql
2840 ? S 0:00 /usr/lib/courier/authlib/authdaemond.pgsql
2846 ? S 0:00 /usr/sbin/couriertcpd -address=0 -stderrlogger=/usr/sbin/courierlogger -maxprocs=40 -maxperip=20 -pid=/var/run/courier/imapd.pid -nod
nslookup -noidentlookup 143 /usr/lib/courier/courier/imaplogin /usr/lib/courier/
authlib/authdaemon /usr/bin/imapd Maildir

preciso que no lugar do .pgsql seja mysql, vi que ja tem um post sobre isso mas a alternativa postada nao me ajudou, aguem sabe como concerto isso???
#91 Comentário enviado por ronaldobandim em 13/03/2006 - 19:44h
Ja tive ser problema e resolvi instalando uma biblioteca do mysql.
#92 Comentário enviado por fabiobc em 17/03/2006 - 11:11h
Dúvida, se eu montar um servidor de e-mails preciso ter um provedor ou soh acesso a internet???
#93 Comentário enviado por jgama em 30/04/2006 - 12:10h
Esta duvida do fabiobc, também tenho, mas creio que não é necessário,mas terá que ter IP´s Real para o Servidor de e-mail.

Já no meu caso que tentar usar um servidor de e-mail usando IP dinamico, será que da pé ou esqueço.

Abraço
#94 Comentário enviado por guitarrista10 em 06/06/2006 - 09:49h
Cara, Muito Bom!!!!!!!!!

Vou Testar agora mesmo e depois Posto pra dizer se Funfou Legal!!!!!

Valewwwwwwwwwwwwwwww
#95 Comentário enviado por lclavignex em 21/06/2006 - 20:46h
Muito bom, valeu mesmo.

Vou testar aki e depois posto o resultado.

Valeu.
#96 Comentário enviado por bithi em 23/06/2006 - 14:56h
Bom primeiramente.
Cada profissional tem uma maneira de fazer as coisas e tutorias na minha na minha opiniao servem para explicar e dar ideias para desenvolver deterninadas coisas, fiquei uns 8 dias tarabalhando para montar um server de e-mail e esse tutorial ficou muito bom, bom mesmo ajudou um monte no resultado final... foi o primeiro server de email uqe fiz.. e acho que ficou bom... hehehe. Algumas coisas tive que fazer diferente, Mas esta rodando muito bem.. Obrigado cara pela força. Faz algum tempo que escreveu esse turorial e nem sei se vc tah vivo huahauahuaha.. mas parabens Sr. Marco A. S. Máximo nota 9,9. Bom.. naun acho nem minha namorada perfeita.. hehhehehe.. brincadeira...
#97 Comentário enviado por Tyreon em 11/07/2006 - 19:28h
Vlw!! Me ajudou mto!!
#98 Comentário enviado por riav em 14/07/2006 - 22:44h
Comunidade estou com o seguinte problema
depois de executar o teste do postfix:

# echo "teste funfou" | mail -s "TESTE POST" teste@dominio.br

Sep 29 22:34:24 localhost postfix/pickup[5155]: warning: maildrop/56FF5EA: Error writing message file
Sep 29 22:34:24 localhost postfix/pickup[5155]: C7B00EE: uid=0 from=<root>
Sep 29 22:34:24 localhost postfix/cleanup[5240]: warning: C7B00EE: virtual_alias_maps map lookup problem for teste@dominio.br

percibi q ja postaram o mesmo erro, porem nao vi nenhuma resposta.
Se alguem ja teve essa bronca, por favor me ajude!!!!
um abraço....................
#99 Comentário enviado por eei em 15/07/2006 - 11:27h
Filé pra kramba heim
vou montar agora...

abraços
#100 Comentário enviado por marcos_sampaio em 17/07/2006 - 07:15h
Ae pessoal! Nao consigo baixar o clamav-filter!! Alguem pode me enviar por email? marcos_a_r_sampaio@hotmail.com. Obrigado
#101 Comentário enviado por jacktomahawk em 22/08/2006 - 18:39h
Muito bom!!!.. gostei
Vou montar um agora aki!!!!

Mando mtu maximo!

[]'s
#102 Comentário enviado por moises.cruz em 31/08/2006 - 14:13h
Olá Marcos!

Eu consegui montar o Servidor de mail, só que, ao instalar/configurar o webmail (squerrimail) ele não mostrar outras pastas (lixeira, rascunho...) e dar um erro quando tento criar outras pastas:

Erro: pedido não pode ser completado.
Requisição: CREATE "teste"
Razão alegada: Invalid mailbox name.

Estou usando dominio virtual, maildir. Qual a solução?

Te agradeço desde já,


Um abraço!
#103 Comentário enviado por leandro_ls em 13/09/2006 - 17:13h
Otimo Manual

Olá o meu funciona mais esta levando uns 10 minutos para entregar um e-mail, sabem o que pode ser ?, se dou um TOP ele mostra que o 2 processos vscan usando 40% do memoria, sera que é algum problema com o vscan ? se puder ajudar fico feliz !!
#104 Comentário enviado por fcyber em 20/09/2006 - 10:33h
Muito bom...
Bem explicado e sem tirar que o PostFix é mto legal...
Sem mais qmail's..
#105 Comentário enviado por balani em 28/09/2006 - 15:49h
Excelente!!!! o conteúdo fala por sí, leia!
#106 Comentário enviado por skycrash em 30/09/2006 - 17:24h

Execlente tutorial, ja me ajudou varias vezes, mas agora estou com um problema..
Quando o usarui nao tem conta no sistema (passwd).. o email vai legal..
agora se eu tiver uma conta no sistema, e mandar por exemplo
um email para suporte@meudominio.com.br.. ele tenta gravar o email no Maildir dentro do /home e nao dentro do /postfix
Segue o erro:
postfix/local[13956]: DDE6241C81: to=<louis@net.com.br>, relay=local, delay=0, status=bounced (maildir delivery failed: create /home/louis/Maildir/tmp/1159646810.P13956.net: Permission denied)

Reparei que ele usa o relay=local para fazer esta caca, e quando o usuario nao existe no sistema ele utiliza relay=maildrop e o email vai certinho para a caixa.
O que pode ser...
#107 Comentário enviado por c.rafael em 04/10/2006 - 16:21h
Olá pessoal,

Estou comm o problemas de muitos aqui.
Ao fazer o teste com maildrop, ele não está enviando o email e ainda gera o erro de INVALID USER. O mysql está funcionado blz.

O que pode estar errado? estou usando como usuario do maildrop o maildrop mesmo.
#108 Comentário enviado por pdjailton em 20/10/2006 - 16:56h
muito bom parabéns pelo artigo...
#109 Comentário enviado por linux.vitor em 08/11/2006 - 15:34h
alguem me ajuda a resolver o problema com o mysql??
#110 Comentário enviado por luan.ibarra em 22/11/2006 - 10:35h
alguem ajuda pleasseee , seguinte erro no fc4 com maildrop:
libtool: ignoring unknown tag CXX
maildirsearch.h:97: error: using-declaration for non-member at class scope
maildirsearch.h:97: error: expected ';' before '<' token
make[2]: ** [maildirsearchC.lo] Erro1
make[2]: Leaving directory '/source/maildrop-2.0.2/maildir'
make[1]: **[all] Erro 2
make[1]: Leaving directory '/source/maildrop-2.0.2/maildir'
make: ** [all-recursive] Erro1
#111 Comentário enviado por c.rafael em 22/11/2006 - 15:10h
Olá Luan.Ibarra


Esse erro está dando qnd? ql a distro??
#112 Comentário enviado por Naztheros em 23/11/2006 - 02:41h
Antes de tudo gostaria de agradecer pelo ótimo tutorial.

Durante a configuração do meu sistema, obtive alguns problemas que alguns de vocês talvez possam encontrar.

O 1.o foi o maildrop dizendo que o diretório não pertencia ao dono correto "Home directory owned by wrong user.", para corigir foi simples bastando mudar a permissão do diretório para o mesmo usuário e grupo do maildrop (chown -R maildrop:maildrop /postfix) e também mudar na tabela mailbox dentro do mysql o UID e GID para os valores corretos do sistema (grep maildrop /etc/passwd; grep maildrop /etc/group) se você nao usuou o mesmo uid/gid para criar os usuarios de acordo com o tutorial (o q eu nao fiz =P).

O 2.o problema que encontrei foi:

temporary failure. Command output: ERR: authdaemon: s_connect() failed: Permission denied /usr/local/bin/maildrop: Temporary authentication failure.

Esse causou uma boa dor de cabeça, pois o comando de teste "maildrop -d email@dominio.com.br" funcionava, mas enviar email pelo postfix não. Mas foi muito simples de resolver.. descobri que o diretório onde fica o soquete to courier-authlib nao estava acessível para o usuario maildrop (no meu caso o dir era: /usr/local/var/spool/authdaemon); entao como root o comando do maildrop funcionava, mas como usuario normal não (via postfix o user do maildrop). Vc pode verificar o diretorio dentro do arquivo 'authdaemonrc' (authdaemonvar=/usr/dir/lalala)

O 3.o problema foi o maledito SMTP Auth q não autenticava, cada hora o postfix reclamava de uma "SASL authentication failure" diferente, "no mechanism avaiable", "authentication failure", ... porém o [ testsaslauth -u user@dominio.com.br -p senhasecreta ] autenticava perfeitamente no MySQL, mas o Postfix não autenticava.. Foi só configurar o main.cf mudando a opcao [ smtpd_sasl_security_options = ] (obs: deixando ela vazia)

Uma outra solução é rodar o saslauthdaemon com o modulo rimap ao inves do shadow [saslauthd -a rimap -r -o localhost] (fazendo autenticacao no servidor imap local) e setar o smtpd.conf para usar pwcheck: saslauthd


btw- To usando o Slackware 11.0 com kernel 2.6.18.3

Abraços e boa sorte a todos!
LeMMiNGS®
#113 Comentário enviado por buzaneli em 23/11/2006 - 17:09h
olá marco, eu montei o servidor de email deu tudo certo mas o vacation eu estou com proplemas na configura dele, vc pode me ajudar
eu uso a versão original do postfix
#114 Comentário enviado por removido em 05/12/2006 - 15:13h
Muito bom, já ajuda bastante.
#115 Comentário enviado por removido em 05/12/2006 - 15:54h
Vou testar
#116 Comentário enviado por joao.claudio em 12/12/2006 - 16:58h
Camarada tem como você me enviar os links para eu baixar o mandrake 9.1.
Sou usuário do debian, mas não consegui implementar essa solução nele, nem seguindo o tutorial aqui do VOL. Queria implementar seu artigo, mas não tenha a distribuição.
Se não tiver como, me manda os cds por sedex a cobrar.
Valeu pela força amigo.
#117 Comentário enviado por djou em 19/12/2006 - 11:11h
Bom dia.
onde posso conseguir um tutorial igual a este
só que para a distro CL10?
estou tendo bastante problemas com este.
Obrigado
#119 Comentário enviado por removido em 08/02/2007 - 18:35h
mto bom!
#120 Comentário enviado por niltonjunior em 28/03/2007 - 22:13h
Alguem sabe um link onde posso baixar o postfixadmin-modificado pois o do tutorial nao esta respondendo

obrigado, e o tutorial e muito bom sim
#121 Comentário enviado por danieljnd em 30/03/2007 - 13:53h
Cara bem legal...
#122 Comentário enviado por cytron em 05/04/2007 - 18:21h
Dependências das dependências que tem dependências que dependem de outras dependências necessárias às dependências das dependências .... Aaaaaaaahhhhhhhhhhhhhhh Onde isso vai parar??? hahahahahahh, mas o pior não são as dependências, o problema é que sempre tem uma infeliz que dá erro de compilação pra quebrar essa corrente de amizades entre dependências.

Passei horas resolvendo dependências pra instalar alguns dos módulos e quando menos se espera... Erro nisto e naquilo!

Vou tentar encontrar pacotes já compilados, não aguento mais isso!
De repente eu desisto dos e-mails e passo a enviar disquetes pelo correio mesmo! hehehehe
#123 Comentário enviado por ricardocacho em 10/04/2007 - 23:12h
Gostaria de saber se tem um tutorial mais atual?
Pois o debian test vem com o maildrop-2.0.2 e aparentemente não é mais nativo o acesso para o mysql.
#124 Comentário enviado por kidoidera em 23/05/2007 - 11:48h
muito bom o tutorial .. estarei implantando aqui para testes .....
#125 Comentário enviado por wendy em 23/05/2007 - 15:36h
Qdo dou o comando "cat /etc/lilo.conf | maild ....." ele retorna "maildrop: signal 0x0B". O q eu faço pra resolver isso?

Alguem ja resolveu isto? tem alguma versao mais atual do tutorial

#126 Comentário enviado por sepjcarlos2 em 01/06/2007 - 17:20h
Caros,

Segui todos os paços para instalação do servidor POstfix.

consigo enviar mensagens pelo postfixadmin sem problemas, mas não estou conseguindo conectar via imap e pop3. aparece a seguinte mensagem no log.

courierpop3login: LOGIN FAILED, user=jose.carlos@sixsideweb.com.br, ip=[::ffff:201.28.215.37]

imapd: LOGIN FAILED, user=jose.carlos@sixsideweb.com.br, ip=[::ffff:201.28.215.37]


Como devo proceder para corrigir este problema...

Jose Carlos

obs.: Meus parabens pelo artigo...
#127 Comentário enviado por gzanatta00 em 04/06/2007 - 22:15h
amigo deixa eu te explica a minha situacao.
estou com problemas de spam dos meus clientes, todos os dias estou caindo nas listras negras
cara eu precisaria de algum negocio que pudesse identificar , ou que retire estes spams q estao sem enviados
isso ja me estressou muitttttttto

#128 Comentário enviado por gzanatta00 em 05/06/2007 - 08:18h
meu servidor de e-mail envia e recebe
e-mails por um unico ip ex: 200.180....3,
que esta configurado dentro do bind ex:
pop3 IN A 200.180....3
smtp IN A 200.180....3
mail IN A 200.180.....3
E DENTRO DOs .cf que esta no diretorio
/etc/postfix, ..... entao eu pensei o seguinte
fazer com que o servidor enviasse e-mails pelo ip
200.180....4, e recebesse pelo ip 200.180...3
pq estou caindo quase todos os dias nas listas negras
e ja me cansei se ficar liberando e tal....
so que nao sei qual os arquivos q tenho q mudar...
ou se existe outra forma de acabar com isso

me de uma ajuda ai..
#129 Comentário enviado por Israel007 em 07/06/2007 - 22:10h
gostei do artigo..
#130 Comentário enviado por adrianoturbo em 26/06/2007 - 21:32h
Estava precisando muito deste tutoral pra montar o meu valeu brohter.
#131 Comentário enviado por iandecy em 30/07/2007 - 22:35h
qual o melhor linux para mim montar servidor de Distribuição de internet... web... e e-mail ?

quero tudo em uma maquina só...

abraços.
#132 Comentário enviado por line em 06/08/2007 - 11:29h
Gostaria de saber se tem como um determinado e-mail seja enviado apenas para 2 usuarios, e se ele tentar mandar para um outro usuario ele bloqueie...?????
#133 Comentário enviado por robson martins em 21/08/2007 - 15:05h
Sera que alguem pode me ajudar? Tenho linux red hat9 e meu postfix esta travando toda hora, Um tecnico veio aqui para me dar um suporte e me falou que o problema é por causa de span alguem ja ouviu falar isso?
#134 Comentário enviado por kidoidera em 04/09/2007 - 10:08h
acabei de instalar o vmware aki pra testar este tutorial ....... logo posto os resultados .. espero que totalmente satisfatorio
#135 Comentário enviado por gzanatta00 em 06/09/2007 - 08:47h
amigo..... meu servidor de e-mail estava funcionando corretamente
agoro eu rebootar eu dou um mailq e os e-mails estao todos ai??? nao estao destachando

tentei fazer
postfix stop
postfix start
postfix reload
e nao adiantou, veja o meu main.cf

queue_directory = /var/spool/postfix/
program_directory=/usr/sbin
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
mail_owner = postfix
default_privs=nobody
default_transport=smtp
local_recipient_maps =
delay_warning_time = 1m
alias_maps=hash:/etc/postfix/aliases
alias_database=hash:/etc/postfix/aliases
readme_directory = no
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
manpage_directory = /usr/local/man
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
smtpd_banner=\$myhostname ESMTP
disable_vrfy_command=yes
home_mailbox=Maildir/

# ========== NOME DO DOMÍNIO ===========
myhostname=mail.meinet.com.br
mydomain=meinet.com.br
myorigin= \$mydomain
mydestination= \$mydomain, \$transport_maps

#=====REDES p/ Relay======
mynetworks=127.0.0.0/8 200.180.23.0

#======== MYSQL ==============
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_base = /postfix
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_uid_maps = static:128
virtual_gid_maps = static:128
transport_maps = mysql:/etc/postfix/mysql_transport_maps.cf

#======= Quota ============
virtual_mailbox_limit_inbox = no
virtual_mailbox_limit_maps= mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_extended = yes
virtual_create_maildirsize = yes
virtual_mailbox_limit = 100000000
virtual_maildir_limit_message = Desculpe, este usuario esta com a caixa postal lotada, tente enviar o e-mail novamente mais tarde.
virtual_overquota_bounce = yes

# =======MAILDROP ==========
fallback_transport = /usr/bin/maildrop
maildrop_destination_recipient_limit = 1
unknown_local_recipient_reject_code = 450

tem algum problema?
#136 Comentário enviado por plinioeu+ em 28/09/2007 - 10:18h
como consigo restriger acessos a determinados sites so para uns usuarios !!!!
#137 Comentário enviado por murillosk8 em 25/10/2007 - 15:17h
fodaaaaaaaaaaaaaaaaaaaaaaaaaaa
cara otimo nao sei o q diser
#138 Comentário enviado por djair132 em 09/11/2007 - 20:27h
Cara Otimo mano boa boa Gostei hehe
#139 Comentário enviado por heroes em 12/11/2007 - 22:10h
Muito bom o tutorial...
Vou testar no fedora 7...
#140 Comentário enviado por MarcoSlack em 17/11/2007 - 11:54h
vou testar no servidor que eu vou montar SLACKWARE!! ;D
#141 Comentário enviado por rodrigosalmeida em 04/01/2008 - 01:10h
Tutoria bem explicado...vou utiliza-lo agora...
#142 Comentário enviado por didiminho em 25/02/2008 - 21:51h
ótimo tutorial...

bem explicado...

vou testa agora
#143 Comentário enviado por Ditador Nicastro em 18/04/2008 - 09:41h
Pessoal, para que está com problema no authdaemond que inicia com a extenção pgsql, eu consegui resolver este problema apagando o arquivo:

/usr/lib/courier/authlib/authdaemond.pgsql

e reiniciando os serviços:

/etc/init.d/imap stop
/etc/init.d/pop3d stop

/etc/init.d/imap start
/etc/init.d/pop3d start
#144 Comentário enviado por Ditador Nicastro em 18/04/2008 - 10:48h
Mais uma coisa, no main.cf onde está:

fallback_transport = /usr/bin/maildrop

eu mudei para:

fallback_transport = maildrop

Pois o postfix me retornava o seguinte erro:

Apr 18 11:30:25 www postfix/local[6918]: warning: connect #1 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:30:35 www postfix/local[6918]: warning: connect #2 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:30:45 www postfix/local[6918]: warning: connect #3 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:30:55 www postfix/local[6918]: warning: connect #4 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:05 www postfix/local[6918]: warning: connect #5 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:15 www postfix/local[6918]: warning: connect #6 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:25 www postfix/local[6918]: warning: connect #7 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:35 www postfix/local[6918]: warning: connect #8 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:45 www postfix/local[6918]: warning: connect #9 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:31:55 www postfix/local[6918]: warning: connect #10 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:32:05 www postfix/local[6918]: fatal: connect #11 to subsystem private//usr/bin/maildrop: No such file or directory
Apr 18 11:32:06 www postfix/qmgr[6907]: warning: premature end-of-input on private/local socket while reading input attribute name
Apr 18 11:32:06 www postfix/qmgr[6907]: warning: private/local socket: malformed response
Apr 18 11:32:06 www postfix/qmgr[6907]: warning: transport local failure -- see a previous warning/fatal/panic logfile record for the problem description
Apr 18 11:32:06 www postfix/master[6891]: warning: process /usr/libexec/postfix/local pid 6918 exit status 1
Apr 18 11:32:06 www postfix/master[6891]: warning: /usr/libexec/postfix/local: bad command startup -- throttling
Apr 18 11:32:06 www postfix/qmgr[6907]: 05D25D4079: to=<roberto.nicastro@www.emailsecreto.com>;, relay=none, delay=2131, status=deferred (delivery temporarily suspended: unknown mail transport error)

E fazendo esta alteção o problema foi resolvido.
#145 Comentário enviado por iago@kz em 06/05/2008 - 08:48h
Voces ja tentaram o thunderbird,e bem rapido é quase igual a esse galera,tenta la que vc me falao t+.=D
#146 Comentário enviado por carlosczar em 21/05/2008 - 10:49h
Bom dia.

Alguém conseguiu colocar o SASL v2 para funcionar com o PAM mysql?
No meu log do MySQL diz que não há permissão para o usuário e por esse motivo a autenticação usando um user do BD não funciona. Alguém pode me ajudar?

Grato.
Carlos.
#147 Comentário enviado por kamadrax em 21/06/2008 - 22:03h
Tutorial exelente! Muito útil.
#148 Comentário enviado por srfurlan em 14/07/2008 - 17:20h
Parabens muito bem feito
#149 Comentário enviado por msscesario em 29/07/2008 - 17:18h
Galera !!!

O ideal não é escutar no message, e sim colocar alguns echo dentro do script !!!

[]'s
Marcelo
#150 Comentário enviado por wictor em 19/08/2008 - 12:31h
seguindo este tutorial no fedora 7, 8 ou 9 é possivel fazer esse serviço de email funcionar...
#151 Comentário enviado por jansen.kurumin em 12/01/2009 - 15:17h
Ai fica ruim pra hacker hackear huehuersrsrsrsrsrsr
#152 Comentário enviado por Mr_Ciber em 03/02/2009 - 12:11h
preciso fazer relay no terra com smtp externo no meu postfix . alguem sabe como ?
#153 Comentário enviado por paulopmt1 em 29/05/2009 - 12:03h
Olá Marco, quero lher dar meus parabéns ao artigo! Excelente! Tive várias dificuldades para instalar no debian, já que várias coisas mudam, mas com pesquisas consegui resolver todos os problemas, e depois de quase uma semana consegui seguir toda sua metodologia. Muito interessante e muito bem elaborado seu tutorial, meus parabéns novamente!

Se alguém tiver dúvidas para implementá-lo em distribuições derivadas de debian, posso ajudar...
Paulo Trentin
#154 Comentário enviado por thiagosc em 16/06/2009 - 11:20h
Olá Marco muito bom esse artigo,

Esse artigo se aplica para um servidor de e-mail interno em uma rede baseada em 2003 server?

[]´s

Thiago
#155 Comentário enviado por Makoy.felipe em 19/06/2009 - 09:56h
D+ este artigo
Obrigado mesmo !

Vlw
#156 Comentário enviado por manoserpa em 20/07/2009 - 16:58h
Cara parabéns pelo empenho, vou entar implementá-lo.

Abraços.
#157 Comentário enviado por rr.paulo em 07/09/2009 - 14:38h
Kra muito 10 esse seu artigo, apesar de um pouco desatualizado ... estou apanhando um pouco com a configuração do maildrop, não consegui achar maildropmysql.conf .
Do resto está tudo funcionando, espero ...

Muito obrigado pelas dicas iniciais
#158 Comentário enviado por removido em 18/10/2009 - 21:26h
Muito Bom.
Postfix Bem Configurado = Sucesso na Rede.
#159 Comentário enviado por credson isaac em 19/10/2009 - 09:45h
Muito Bom , apesar de alguns conceitos incorretos , porem ná prática está muito bom!
#160 Comentário enviado por andrezc em 05/03/2010 - 23:15h
Parabéns. O artigo realmente ficou bom.
#161 Comentário enviado por wendel123 em 22/03/2010 - 22:09h
Parabéns. Otimo artigo e muito bem explicado !!
#162 Comentário enviado por dhill em 23/03/2010 - 14:03h
Parabens, pelo tutorial e bom divulgar os sistemas GNU/LINUX
#163 Comentário enviado por tiago_es em 05/05/2010 - 10:54h
Alguém pode me ajudar, não estou conseguindo copilar courier-authlib, surge esses erros:

/usr/include/libpq-fe.h:29:26: error: postgres_ext.h: No such file or directory
In file included from authpgsql.h:8,
from authpgsql.c:18:
/usr/include/libpq-fe.h:307: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PQftype'
/usr/include/libpq-fe.h:312: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PQoidValue'
/usr/include/libpq-fe.h:358: error: expected declaration specifiers or '...' before 'Oid'
/usr/include/libpq-fe.h:363: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'lo_creat'
/usr/include/libpq-fe.h:365: error: expected declaration specifiers or '...' before 'Oid'
/usr/include/libpq-fe.h:366: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'lo_import'
/usr/include/libpq-fe.h:367: error: expected declaration specifiers or '...' before 'Oid'
make[2]: *** [authpgsql.lo] Error 1
make[2]: Leaving directory `/home/toolmai/courier-authlib-0.62.4.20091218'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/home/toolmai/courier-authlib-0.62.4.20091218'
make: *** [install] Error 2

Não sei oque fazer.....

Obrigado,
#164 Comentário enviado por BrunoEstevao em 05/05/2010 - 14:15h
Cara, Muito Bom!!!!!!!!!
Vou Testar agora mesmo e depois Posto pra dizer se funcionou 100%.
valeu pelo Artigo.

Bruno Estevao
www.sempihost.com.br

#165 Comentário enviado por tiago_es em 10/05/2010 - 08:20h
Bom dia a todos,

Estou com o seguinte problema;
tenho postgre e mysql no meu servidor, ao tentar conectar telnet localhost 143 surge o seguinte erro:

May 10 09:48:55 darkstar authdaemond: Connection to server 'pgsql.example.com' userid 'admin' database 'template1' failed.
May 10 09:48:55 darkstar authdaemond: could not translate host name "pgsql.example.com" to address: Name or service not known
.
May 10 09:48:55 darkstar imapd: LOGIN FAILED, user=tiago, ip=[::ffff:127.0.0.1]
May 10 09:48:55 darkstar imapd: authentication error: Input/output error

OK, pelo que entedi ele esta tentando fazer a conexão pelo postgre e não pelo mysql.
Já alterei o meu authdaemonrc e mesmo assim ele esta tendado conectar pelo postgre e não pelo mysql.

Este é o meu authdaemonrc:

authmodulelist="authmysql authpwd authshadow"
authmodulelistorig="authmysql authpwd authshadow"
authmodules="authmysql"
daemons=5
authdaemonvar=/usr/var/spool/authdaemon
DEBUG_LOGIN=0
LOGGEROPTS=""

O meu authmysqlrc esta configurado corretamente.

A pergunta é, existe mais algum arquivo que devo configurar para que ele busque o mysql e não o postgre?

Grato,
#166 Comentário enviado por leandrod_86 em 11/06/2010 - 17:20h
Ai Galera blz, seguinte, estou instalando um servidor de e-mail, seguindo este how-to, tava indo tudo muito bem, até eu travar na parte 3.11(testar a entrega de mensagens para o usuario), quando executo o comando:
#maildrop -v <meu>

ele me devolve:
maildrop 2.5.0 Copyright 1998-2005 Double Precision, Inc.
GDBM/DB extensions enabled.
Maildir quota extension are now always enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.

teria que dar:

# maildrop -v
GDBM extensions enabled.
Maildir quota extension enabled. <-- SUPORTE A COTA DE CAIXA DE MENSAGENS
Virtual user database via MySQL extension enabled. <-- SUPORTE A MYSQL
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.


Ou seja meu maildrop não está configurado com suporte a mysql. Mas quando editei o arquivo "configure" inseri a linha --enable-maildropmysql antes de compilar o mesmo,

testei no Debian 5.04, ubuntu 10.4-server, e ubuntu 9.04.
usei o maildrop 2.05.
testei tambem com o maildrop 1.6.3 e não deu certo tambem.

alguem pode me dar uma dica, estou precisando, valew.
#167 Comentário enviado por edd.37-fenix em 19/07/2010 - 20:23h
Muito bom este artigo é o que eu estava a procura para começar a criar o meu servidor de e-mail.
Marco A. S. Máximo você esta de parabéns meu brother vou começar a configura-lo desde de já.
Um forte abraço e continue contribuindo para a comunidade Linux Brasil.
#168 Comentário enviado por consultech em 05/09/2010 - 22:06h
Muito bom o artigo!! Parabéns.

Visitem: www.consultech-al.com.br


Forte abraço a todos.
#169 Comentário enviado por jamiro em 03/02/2011 - 16:22h
solução rápida está nesse site aqui http://store.jbpserver.com.br

Meu ajudou muito !

#170 Comentário enviado por jujuzao em 23/05/2011 - 13:10h
ola ta show de bola o artigo!!! meus parabens

visitem nosso site: www.guiademudancas.com.br
#171 Comentário enviado por Mguft em 21/06/2011 - 10:13h
Fala galera!

Primeiramente, ótimo tutorial! Parabéns!

Gostaria de saber se consigo seguir esse mesmo tutorial usando o FreeBsd 8?

Abraços...
#172 Comentário enviado por ysquyty em 19/12/2011 - 16:54h
Ótimo tutorial! Parabéns!

Vinicius

dedcomponentes.com.br

dedcomponentes.com
#173 Comentário enviado por Denis Roberto em 11/03/2012 - 23:20h
so uma pequena duvida, estou muito afim de montar um servidor de email mais pela experiencia de aprender e ver funcionar, dei uma olhada por cima e achei muito bem explicado, porem uma duvida, no meio do tutorial tem a instalação do ambiente grafico para web? se nao existe algum recurso free para aplicar a parte grafica web para o servidor de e-mail?
#174 Comentário enviado por OLIVAM em 16/05/2012 - 17:06h
Gostaria de saber do pessoal, qual melhor autenticação Mysql ou Ldap, Ótimo Artigo. Parabéns!
#175 Comentário enviado por pharaohgt em 30/05/2012 - 22:54h
Valeu pelo artigo ira ajudar muita gente leiga nisso (eu)!
#176 Comentário enviado por gusmarucci em 16/06/2012 - 01:53h

[174] Comentário enviado por OLIVAM em 16/05/2012 - 17:06h:

Gostaria de saber do pessoal, qual melhor autenticação Mysql ou Ldap, Ótimo Artigo. Parabéns!


Olivam,

Depende do seu ambiente. Se for fazer um servidor simples o melhor é o MySQL. Porque complicar? Agora se vc tem um AD, ou um banco de dados de diretorio enorme ou uma rede grande, porque não fazer a consulta dos usuários pelo LDAP?
#177 Comentário enviado por gusmarucci em 16/06/2012 - 01:55h

[173] Comentário enviado por Denis Roberto em 11/03/2012 - 23:20h:

so uma pequena duvida, estou muito afim de montar um servidor de email mais pela experiencia de aprender e ver funcionar, dei uma olhada por cima e achei muito bem explicado, porem uma duvida, no meio do tutorial tem a instalação do ambiente grafico para web? se nao existe algum recurso free para aplicar a parte grafica web para o servidor de e-mail?


Denis,

Eu bolei um ambiente web muito legal. Até para o aprendizado do SpamAssassim alem de implementar o Captchas no email.
#178 Comentário enviado por gusmarucci em 16/06/2012 - 02:00h

[163] Comentário enviado por tiago_es em 05/05/2010 - 10:54h:

Alguém pode me ajudar, não estou conseguindo copilar courier-authlib, surge esses erros:

/usr/include/libpq-fe.h:29:26: error: postgres_ext.h: No such file or directory
In file included from authpgsql.h:8,
from authpgsql.c:18:
/usr/include/libpq-fe.h:307: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PQftype'
/usr/include/libpq-fe.h:312: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PQoidValue'
/usr/include/libpq-fe.h:358: error: expected declaration specifiers or '...' before 'Oid'
/usr/include/libpq-fe.h:363: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'lo_creat'
/usr/include/libpq-fe.h:365: error: expected declaration specifiers or '...' before 'Oid'
/usr/include/libpq-fe.h:366: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'lo_import'
/usr/include/libpq-fe.h:367: error: expected declaration specifiers or '...' before 'Oid'
make[2]: *** [authpgsql.lo] Error 1
make[2]: Leaving directory `/home/toolmai/courier-authlib-0.62.4.20091218'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/home/toolmai/courier-authlib-0.62.4.20091218'
make: *** [install] Error 2

Não sei oque fazer.....

Obrigado,




Tiago, parece que vc está tentando complilar o Courier Authlib com suporte ao PostgreSQL só que vc não tem as bibliotecas C do Postgre instaladas no seu sistema. Verifique se, na hora do ./configure há uma opcao de cancelar suporte ao PG ou baixe uma versão do Postgre que seja compativel ao Authlib que vc está tentando instalar.
#179 Comentário enviado por pharaohgt em 27/06/2012 - 14:53h
ACHO Q VAI FICAR LGL VO FAZER NO MEU AKI ,ABRAÇO
#180 Comentário enviado por liciomz em 15/10/2012 - 11:31h
Bom dia, comecei a estudar linux tem pouquíssimo tempo, gostaria de saber se eu consigo criar um servidor de Email em casa para fins de estudo, sem ip valido e sem domínio registrado?

Obrigado, desculpe a ignorância.
#181 Comentário enviado por romulobosco em 06/05/2013 - 10:24h
Excelente, parabéns pelo artigo!
#182 Comentário enviado por mudancasecia em 26/06/2013 - 16:41h
Muito esclarecedor! Agora eu consigo.
www.mudancasecia.com
#183 Comentário enviado por srdavidsilva em 22/04/2014 - 00:38h
Excelente, amigo!
Eu sempre sofria com o Postfix, devia ter achado seu artigo antes. rs
Mas fico feliz em saber que já onde buscar caso precise..

Abraços
#184 Comentário enviado por unibrasrp em 04/09/2014 - 10:22h
Bom Dia Pessoal,
Estou com um problema em meu servidor de emails, possivelmente nos serviços postfix,
quando abro a tela de processos me aparece esses erros, e o servidor acaba travando:


ficam aparecendo os processos error e bounce - sendo executado pelo usuário postfix
#185 Comentário enviado por jPrioli em 30/03/2018 - 15:15h
Obrigado mesmo amigo! Estava realmente precisando do Postfix para trabalhar com vários domínios, não estava conseguindo de jeito nenhum, mas agora consegui.

Atenciosamente,
Joao Prioli
www.jprioli.com

Contribuir com comentário

Entre na sua conta para comentar.