BEM VINDO AO BLOG DO MARCOS CARRARO CRIADOR DO "CARRARO DASHBOARD". MUITO MAIS QUE UM SIMPLES BLOG.

terça-feira, 25 de fevereiro de 2014

Diminuindo Boa parte dos Spans recebidos Postfix

Buenas,

Lá vai um pente fino que criei para poder reter um pouco de spam enviado a empresa.

Vamos lá,

No arquivo main.cnf adicione a seguinte linha.

header_checks = regexp:/etc/postfix/cabecalho.regexp

# vim /etc/postfix/cabecalho.regexp

# Esconde algumas informações
/^Received:/    IGNORE
/^User-Agent:/  IGNORE
/^X-Mailer:/    IGNORE
/^X-MimeOLE:/   IGNORE
/^X-MSMail-Priority:/   IGNORE
/^X-Spam-Status:/   IGNORE
/^X-Spam-Level:/    IGNORE
/^X-Sanitizer:/     IGNORE
/^X-Originating-IP:/    IGNORE
/^Received: from 127.0.0.1/  IGNORE/^Subject: .*    / REJECT Muitos Espacos.

# Bloqueia charset estranhos
/^Content-Type:.*charset=.*(big5|euc-kr|gb2312|iso-.*-jp|ks_c_5601-1987)/ REJECT  Email com charset diferente.
/^Subject:.*=\?(big5|euc-kr|gb2312|iso-.*-jp|ks_c_5601-1987)\?/ REJECT Email com charset diferente.
/^Subject:.*=?KOI8/ REJECT Email com charset diferente.

# Bloqueia emails com data antigas
# Uma atenção especial, nesta parte tem que alterar todo ano :D
/^Date:.*200[0-13]/ REJECT Email com data antiga .
/^Date:.*19[0-9][0-9]/ REJECT Email com data antiga .

# Bloqueia extensões não legais
/^content-(type|disposition):.*name[[:space:]]*=.*\.(exe|bat|avi|vbs|cmd|asd|pif|scr|cpl|cmd|vxd|dll)/ REJECT Email com anexo nao permitido.

# Rejeitado email mal formado
/^Return-Path: <>/ REJECT Email mal formado.


Compilar para o bom funcionamento

# postmap /etc/postfix/cabecalho.regexp

Algumas restrições para quem vai receber os e-mails
smtpd_recipient_restrictions = permit_mynetworks,
                permit_sasl_authenticated,
                reject_unauth_pipelining,
                reject_invalid_hostname,
                reject_non_fqdn_hostname,
                reject_non_fqdn_sender,
                reject_non_fqdn_recipient,
                reject_unknown_sender_domain,
                reject_unknown_recipient_domain,
                reject_unauth_destination,
                reject_rbl_client sbl.spamhaus.org,
                reject_rbl_client sbl-xbl.spamhaus.org,
                reject_rbl_client bl.spamcop.net,
                reject_rbl_client zen.spamhaus.org,
                reject_rbl_client pbl.spamhaus.org,
                reject_rbl_client cbl.abuseat.org,
                check_relay_domains,
                permit


Se alguém tiver mais dicas são bem vindas para ajudar a melhorar.

abraços


Read More

terça-feira, 18 de fevereiro de 2014

Criando uma "rule" regra no form_validation no codeigniter - Codeigniter parte 4?

Buenas,

Se falando de CodeiGniter ele já tem uma base e tanto de regras de validação, mas muitas vezes precisamos imcorporar alguma validação a mais no mesmo, porém não existe, e você deseja seguir a mesma lógica, então lá vamos nos...

no arquivo
system/librarires/form_validadion.php


Lá pelas ultimas linhas adicione as suas regras, no meu caso criei uma regra para impedir o uso de espaço apenas texto e numero.

    // --------------------------------------------------------------------

    /**
     * Não permite digiar espaços
     *
     * @access public
     * @param string
     * @return string
     */
    public function no_space($str) {
        return (!preg_match("/^[A-Za-z0-9]+$/", $str)) ? FALSE : TRUE;
    }


Até ali tudo beleza, porém ao aplicar no form, o erro dela vai estar como desconhecido, pois não existe uma tradução do erro para a regra no_space. Para isso...


application/languages/pt-BR/form_validation_lang.php

Adicione a tradução do erro.

$lang['no_space'] = 'O campo %s não pode ter espaços.';


Para utilizar a regra use da maneira normal em que é chamado as demais...

        $this->form_validation->set_rules('campo_name', 'Descricao do Input', 'required|no_space');


Forte Abraço
Marcos Carraro

Read More

quarta-feira, 12 de fevereiro de 2014

Shell Script para Calcular Eficiencia do Squid

Buenas,
Script saindo do forno para efetuar o calculo altere apenas o local dos logs e ta feito.

É feito apenas um calculo matemático consultando os logs do squid.


#!/bin/bash
TOTAL=`grep TCP /var/log/squid/proxy2_log.log | wc -l`;
HIT_GERAL=`grep HIT /var/log/squid/proxy2_log.log | wc -l`;
HIT_HTTPS=`grep -i https /var/log/squid/proxy2_log.log | grep HIT | wc -l`;

EFICIENCIA_GERAL=`echo " ($HIT_GERAL * 100)/ $TOTAL" | bc`;
EFICIENCIA_HTTPS=`echo " ($HIT_HTTPS * 100)/ $TOTAL" | bc`;

echo "Eficiencia no GERAL: " $EFICIENCIA_GERAL"%"
echo "Eficiencia com HTTPS: " $EFICIENCIA_HTTPS"%"

Abraços
Marcos Carraro

Read More

sexta-feira, 7 de fevereiro de 2014

Integrando CodeiGniter com jDataTables - CodeiGniter parte 3

Buenas Turma...

É muito bom utilizar o datatables em projetos, ainda mais hoje nessa web 6.0 v12 biturbo HAHAH,

Então para inegrar é barabada.

Projeto:
https://github.com/IgnitedDatatables/Ignited-Datatables

Ali tem todas as partes para fazer a integração, lembre-se que após isto você deve ativar a biblioteca no application/config/autoload.php

em librarires, assim não precisa carregar na mão.

Para emitir o json compativel com o datatalbes...

    function getservicosremotos() {
        $this->datatables
        ->select('a.id,a.descricao_sr,
                b.range_ip,b.host,
                b.descricao_ips,
                c.porta,
                c.descricao_porta')
        ->from('tb_servico_remoto a,tb_ips b,tb_portas c')
        ->where('a.host = b.id_ip and a.porta = c.id_porta') ;    
        echo $this->datatables->generate();
    }

Desta maneira ele vai retornar o json correto.

{"sEcho":0,"iTotalRecords":4,"iTotalDisplayRecords":4,"aaData":[["5","Conexao intranet","10.0.0.1","fw","Firewall principal","80","HTTP"],["6","TESTE","10.0.0.1","fw","Firewall principal","80","HTTP"],["7","ASD 2","172.16.1.1","TS","TS w2k8 SERVER2","8080","HTTP-ALTERNATIVE"],["8","teste dns google","8.8.8.8","google-dns","google-dns","53","DNS-TCP"]],"sColumns":"a.id,a.descricao_sr,b.range_ip,b.host,b.descricao_ips,c.porta,c.descricao_porta"}

// OBS:
wiki https://github.com/IgnitedDatatables/Ignited-Datatables/wiki

para adicionar uma coluna no json com algum link, alguma imagem, alguma informação html, utilize esta m

    function getservicosremotos() {
        $this->datatables
                ->select('
                b.descricao_ips,
                b.range_ip,
                c.descricao_porta,
                c.porta,
                a.descricao_sr,
                ')
                ->add_edit('a.id', '<a href="url/opcao/editar/$1">Editar</a>', 'a.id')
                ->from('tb_servico_remoto a,tb_ips b,tb_portas c')
                ->where('a.host = b.id_ip and a.porta = c.id_porta');
        echo $this->datatables->generate();
    }

->add_edit('COLUNA_ORIGINAL', '<a href="url/opcao/editar/$1">Editar</a>', 'COLUNA_ORIGINAL')

Então, vai ser alterada a coluna_original para o seguinte conteudo <a href="url/opcao/editar/$1">Editar</a> onde $1 é o valor original da mesma.

Abraços

Read More

Posts que a turma mais esta lendo...

Posts que a turma mais esta lendo...

Marcos Carraro