Podemos controlar o número de E-mails que cada cliente envia por hora, dia, semana ou mês. Isto ajuda a proteger o seu servidor de clientes que tentam enviar Spam.
# cd /home/progs
# tar xjf selor_rquota_src_1.0.tar.bz2
# cd selor_rquota_1.0
# gcc selor_rquota.c -o selor_rquota -lmysqlclient
Copie o programa, o arquivo de configuração e o arquivo
.sql para o diretório do Selor:
# mkdir /usr/local/selor/uteis
# cp selor_rquota selor_rquota.conf selor_rquota.sql /usr/local/selor/uteis
# cd /usr/local/selor/uteis
Crie a base de dados no seu MySQL com um usuário e uma senha.
Vamos supor que o usuário seja "selor_user" e a senha "minhasenha":
# mysql
mysql>
create database selor_rquota;
mysql>
grant all privileges on selor_rquota.* to selor@localhost identified by 'minhasenha';
mysql>
flush privileges;
mysql>
quit
Agora, vamos criar as tabelas no banco:
# mysql selor_rquota < selor_rquota.sql
Edite o arquivo
selor_rquota.conf, deixando-o da seguinte forma:
Host= localhost
Db= selor_rquota
Table= rquota
User= selor
Pass= minhasenha
User_field= user
Sent_field= sent
Quota_field= quota
Quota_default= 1000
Obs.: lembre-se de colocar o usuário e senha que especificou no comando:
grant all ...
Abra o arquivo referente ao evento Event.from (
/usr/local/selor/rules_from) e acrescente o seguinte conteúdo no COMEÇO do arquivo:
Auth? !From? "" Exec! "/usr/local/selor/uteis/selor_rquota --conf /usr/local/selor/uteis/selor_rquota.conf -c -u %f"
Exec_resp? "1" Reply! "500 Limite de envio de emails foi excedido" Deny!
Abra o arquivo referente ao evento Event.data (
/usr/local/selor/rules_data) e acrescente o seguinte conteúdo no arquivo. (Note que é tudo em uma única linha):
Auth? !From? "" Exec! "/usr/local/selor/uteis/selor_rquota --conf /usr/local/selor/uteis/selor_rquota.conf -a %n -u %f -d 1000"
O valor 1000, é a quota padrão que o programa vai usar para cadastrar o remetente, caso ele ainda não esteja cadastrado.
Agora, é hora de você decidir como quer a sua quota: por hora, dia, semana ou mês. Tudo depende do intervalo em que você roda o
selor_rquota com a opção
-z, que ZERA os valores de e-mails enviados de todos.
Use o
cron para fazer este serviço pra você.
Escolha umas das linhas do cron para a sua necessidade:
Por hora:
00 * * * * /usr/local/selor/uteis/selor_rquota -z
Por dia:
00 0 * * * /usr/local/selor/uteis/selor_rquota -z
Por semana:
00 0 * * 0 /usr/local/selor/uteis/selor_rquota -z
Por mês:
00 0 1 * * /usr/local/selor/uteis/selor_rquota -z
Está feito. Seu servidor está pronto!
Conclusão
Grande parte das opções e recursos do Selor e do Sceo, eu fiz devido a pedidos de quem os usou.
Se você tem ideias, técnicas, dúvidas ou sugestões, por favor, entre no fórum do Selor e pronuncie-se para contribuir com o projeto.
Obrigado a todos e à equipe do Viva o
Linux.