Pular para o conteúdo

Adicionar conta de e-mail - Postfix com domínios virtuais no MySQL

Script para adicionar manualmente contas de e-mail em um servidor Postfix com domínios virtuais.

Usage: adduser_postfix.pl email@dominio.com.br
Geovanny Junio da Silva geovannyjs
Hits: 10.714 Categoria: Perl Subcategoria: Correio eletrônico
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Script para adicionar manualmente contas de e-mail em um servidor Postfix com domínios virtuais.

Usage: adduser_postfix.pl email@dominio.com.br
Download adduser_postfix.pl Enviar nova versão

Esconder código-fonte

#!/usr/bin/perl
#
# (c) 2008 Geovanny Junio <geovanny@eutsiv.com.br>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

use strict;
use warnings;
use DBI;

my $mail = shift;
my $home_base = '/mail/spool/correio';
my $user;
my $domain;

($user, $domain) = split('@', $mail);

my $userdir = "$home_base/$domain/$user";

unless( -e "$home_base/$domain" ) {
   mkdir("$home_base/$domain", 770) or die "Nao foi possivel criar o diretorio $home_base/$domain: $!\n";
}

unless( -e "$userdir" ) {
   mkdir($userdir, 770) or die "Nao foi possivel criar o diretorio $userdir: $!\n";
}

system("maildirmake $userdir/Maildir");
system("chmod -R 770 $userdir");
system("chown -R maildrop:www-data $userdir");


my $dsn = 'DBI:mysql:postfix:localhost';
my $db_user_name = 'user';
my $db_password = 'password';
my $dbh = DBI->connect($dsn, $db_user_name, $db_password);

$dbh->do("insert into mailbox(username, password, name, home, maildir, quota, domain) values('$mail',encrypt('juridica'),'$mail','$home_base/','$domain/$user/Maildir/','20480000S','$domain')");

$dbh->disconnect();

Apagar spam na fila do postfix por palavra

Retorna apenas emails válidos com MX válidos

Remover caixas postais do Cyrus IMAP

Retornar somente e-mails válidos

Apagar MAILER-DAEMON da fila de email

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.