Pesquisar neste blog

sexta-feira, 30 de dezembro de 2011

Acaba distinção entre trabalho na empresa, em casa ou a distância

Lei 12.551, de 15 de dezembro, altera a CLT para incluir o teletrabalho e garantir direitos aos profissionais fazem trabalho remoto.


Lei 12.551, sancionada no meio de dezembro, alterou o artigo sexto da CLT para equiparar os efeitos jurídicos do trabalho exercido por meios telemáticos e informatizados ao exercido por meios pessoais e diretos. Significa que, no Brasil, deixa de haver distinção entre trabalho na empresa, em casa ou a distância. A lei é uma tentativa de acompanhar o avanço da tecnologia e o aumento da preocupação com qualidade de vida. Agora, oficialmente, não importa mais o local de trabalho, mas se o trabalhador executa a tarefa determinada pela empresa.
O funcionário com carteira assinada que trabalha longe do escritório passa a ter os mesmos direitos dos outros, como hora extra, adicional noturno e assistência em caso de acidente de trabalho. O controle das horas e a supervisão do trabalho podem ser feitos por meios eletrônicos.
Desde o dia 15 de dezembro, data de publicação da Lei 12.551, o artigo sexto da CLT passa a ter a seguinte redação:
“Art. 6o Não se distingue entre o trabalho realizado no estabelecimento do empregador, o executado no domicílio do empregado e o realizado a distância, desde que estejam caracterizados os pressupostos da relação de emprego.
Parágrafo único. Os meios telemáticos e informatizados de comando, controle e supervisão se equiparam, para fins de subordinação jurídica, aos meios pessoais e diretos de comando, controle e supervisão do trabalho alheio.”

Agora vamos ver se as empresas resistentes vão mudar suas culturas e também seguir aos avanços  da Tecnologia.

Fonte: CIO UOL

sexta-feira, 23 de dezembro de 2011

How to Disable Linux and Unix Cron Jobs (Crontab) Email Sending

Cron jobs in Unix, Linux, Solar, BSD or other Unix-like operating system is similar to scheduled tasks in Windows OS. Cron utility allows tasks (aka cron jobs) to be automatically run in the background at regular intervals or preset and predetermined time by the cron daemon. All cron jobs or tasks are defined in crontab (cron table) file, which contains the schedule and specified times of the cron entries to be run.

When an cron job runs, cron daemon will send an email to the user account that executing the cronjob. The notification or result mail messages normally contains output result or respond of the task or command executed by the cron job.

Administrator or cron jobs schedulers who do not want to receive any email every time cron jobs are run can easily turn off and disable the email sending by crontab. To disable email delivery on execution of cron jobs, just append the following command to the end of the cron job line in crontab. Each cron job that does not need email sending will have to be added.

> /dev/null 2>&1

For example,

30 8 * * * command > /dev/null 2>&1

Tip: To edit cron jobs, type “crontab -e” in most system.

Restart cron jobs deamon when done.

terça-feira, 20 de dezembro de 2011

Uma Rapidinha nos Principais Sabores de Shell

Visão do shell em relação do Kernel do Linux
O Ambiente Shell
Bom já que para chegar ao núcleo do Linux, no seu kernel que é o que interessa a todo aplicativo, é necessária a filtragem do Shell, vamos entender como ele funciona de forma a tirar o máximo proveito das inúmeras facilidades que ele nos oferece.
O Linux por definição é um sistema multiusuário - não podemos nunca esquecer disto – e para permitir o acesso de determinados usuários e barrar a entrada de outros, existe um arquivo chamado /etc/passwd que além fornecer dados para esta função de "leão-de-chácara" do Linux, também provê informações para o login daqueles que passaram por esta primeira barreira. O último campo de seus registros informa ao sistema qual Shell a pessoa vai receber ao se "logar" (ARGH!!!).

Lembra que eu te falei de Shell, família, irmão? Pois é, vamos começar a entender isto: o Shell, que se vale da imagem de uma concha envolvendo o sistema operacional propriamente dito, é o nome genérico para tratar os filhos desta idéia que, ao longo dos anos de existência do sistema operacional Unix foram aparecendo. Atualmente existem diversos sabores deShell, dentre estes eu destaco o sh (Bourne Shell), o ksh (Korn Shell), bash (Bourne Again Shell) e o csh (C Shell).



Bourne Shell (sh)
Desenvolvido por Stephen Bourne da Bell Labs (da AT&T onde também foi desenvolvido o Unix), este foi durante muitos anos o Shell default do sistema operacional Unix. É também chamado de Standard Shell por ter sido durante vários anos o único e até hoje é o mais utilizado até porque ele foi portado para todos os ambientes Unix e distros Linux.


Korn Shell (ksh)
Desenvolvido por David Korn, também da Bell Labs, é um superset do sh, isto é, possui todas as facilidades do sh e a elas agregou muitas outras. A compatibilidade total com o sh vem trazendo muitos usuários e programadores de Shell para este ambiente.


Boune Again Shell (bash)
Este é o Shell mais moderno e cujo número de adeptos mais cresce em todo o mundo, seja por ser o Shell default do Linux, seu sistema operacional hospedeiro, seja por sua grande diversidade de comandos, que incorpora inclusive diversos instruções características do C Shell.


C Shell (csh)
Desenvolvido por Bill Joy da Berkley University é o Shell mais utilizado em ambientes *BSD e Xenix. A estruturação de seus comandos é bem similar à da linguagem C. Seu grande pecado foi ignorar a compatibilidade com o sh, partindo por um caminho próprio.
Além destes Shells existem outros, mas irei falar contigo somente sobre os três primeiros, tratando-os genericamente por Shell e assinalando as especificidades de cada um que porventura hajam.


Explicando o funcionamento do Shell
O Shell é o primeiro programa que você ganha ao se "logar" no Linux. É ele que vai resolver um monte de coisas de forma a não onerar o kernel com tarefas repetitivas, aliviando-o para tratar assuntos mais nobres. Como cada usuário possui o seu próprio Shell interpondo-se entre ele e o Linux, é o Shell quem interpreta os comandos que são teclados e examina as suas sintaxes, passando-os esmiuçados para execução.


    - Êpa! Esse negócio de interpreta comando não tem nada a haver com interpretador não, né?
    - Tem sim, na verdade o Shell é um interpretador (ou será intérprete) que traz consigo uma poderosa linguagem com comandos de alto nível, que permite construção de loops (laços), de tomadas de decisão e de armazenamento de valores em variáveis, como vou te mostrar.


Vou te explicar as principais tarefas que o Shell cumpre, na sua ordem de execução. Preste atenção nesta ordem porque ela é fundamental para o entendimento do resto do nosso bate papo.


Exame da Linha de Comandos
Neste exame o Shell identifica os caracteres especiais (reservados) que têm significado para interpretação da linha, logo após verifica se a linha passada é uma atribuição ou um comando.


Atribuição
Se o Shell encontra dois campos separados por um sinal de igual (=) sem espaços em branco entre eles, identifica esta seqüência como uma atribuição.




Fonte: Wiki Softwarelivre

segunda-feira, 19 de dezembro de 2011

Analisadores de Espectro Entenda a importância desse instrumento

A compatibilidade eletromagnética (EMC) é um conjunto de características que garantem que determinado equipamento não emite interferências eletromagnéticas (EMI) acima dos níveis permitidos pelos órgãos internacionais competentes. A EMC passou a ser um fator de qualidade do produto. Por isto o Analisador de Espectro é cada vez mais encontrado na indústria.


Série de Fourier
Sabemos que a análise espectral é tão importante quanto a análise de sinais no domínio do tempo, pois um sinal puro pode gerar infinitas harmônicas. Dependendo da amplitude e da ordem dessas harmônicas, elas podem se sobrepor ao sinal fundamental, distorcendo sua forma de onda (figura 1). Abaixo, nesta mesma figura, temos um pequeno comparativo da natureza do sinal em relação a faixa de frequência que suas harmônicas podem atingir.


Os domínios do tempo e da frequencia podem ser relacionados entre si através da “transformada de Fourier”. A equação dessa transformada, embora complicada a primeira vista calcula, fisicamente, o espectro das frequências de um sinal através de uma análise contínua e infinita no tempo. Fica claro que isso é impossível em tempo real.

O que acontece na prática, entretanto, é a análise do sinal através do processamento digital de amostras. Por meio de uma certa quantidade de amostras (leituras em um determinado intervalo de tempo), podemos ter uma boa aproximação do sinal real. O único cuidado a ser tomado é o que chamamos de “lei de Shannon”. Ela diz que para obtermos uma boa precisão de leitura, a frequência da amostragem (sampling frequency “fs”) deve ser, no mínimo, duas vezes maior que a frequência do sinal de entrada (ßin) (sinal sob análise). A figura 2 mostra um exemplo da combinação das frequências de amostragem e de sinal.


E como fazer essas análises, afinal?
Concretizar os cálculos mostrados acima e transformá-los em medidas que possam ser utilizadas em uma tela são funções do analisador de espectro. Podemos encontrar dois tipos de analisadores: FFT e heteródino.

Analisador de espectro FFT
A “grosso modo” podemos dizer que a diferença entre o analisador tipo FFT (Fast Fourier Transform) e o heteródino é a faixa de frequências em que cada um pode operar. O FFT é destinado para baixas frequências (ordem de 1000 kHz) e o heteródino para altas (e extra-altas) frequências (vários GHz).
figura 3 apresenta o diagrama de blocos de um analisador de espectro tipo FFT. A primeira etapa é um filtro “passa-baixas”, que limita a frequência do sinal de entrada. Após a filtragem, o sinal é enviado a um conversor analógico/digital e, por ser de natureza transitória, é, então, armazenado temporariamente no bloco de memória RAM.



O quarto bloco do instrumento é composto pelos circuitos de processamento, cujo software possui um algoritmo de cálculo de acordo com a equação citada anteriormente para determinação da série de Fourier. Esse bloco, segundo as taxas de amostragem, resgata os dados armazenados na RAM e, após os cálculos da FFT, mostra através de um diagrama de barras, as respectivas amplitudes das frequências harmônicas de um sinal em uma tela.
A FI, então, passa por um filtro passa-faixa e, para que o sinal possa ser mostrado com máxima largura, ela é amplificada através de um amplificador logarítmico. Até essa etapa o sinal ainda está modulado em RF. A próxima etapa exerce a função detectora, transformando o sinal de RF em um sinal de vídeo. Após o filtro passa-baixas, esse sinal é mostrado na tela, a qual pode ser do tipo LDC (cristal líquido) ou TRC (tubo de raios catódicos). Um circuito “gerador de campo” sincroniza o sinal detectado com as frequências de varredura da tela do instrumento.

Analisador heteródino
O analisador de espectro heteródino, como o próprio nome sugere, tem sua estrutura de funcionamento muito similar à do receptor de rádio tipo heteródino. A figura 4 ilustra seu diagrama de blocos.


Notem que, por funcionar em altíssimas frequências, não há um filtro para o sinal de entrada. O sinal é combinado com outro, gerado internamente por um oscilador local, através de um circuito “mixer”. O sinal diferença entre ambos, assim como no receptor heteródino recebe o nome de frequência intermediária.


Principais Parâmetros do Analisador de Espectro
Os analisadores modernos possuem inúmeras funções (e controles), porém, as quatro principais são:

Faixa de frequência exibida na tela
Esse parâmetro (frequency display range) determina o “tamanho” da figura a ser mostrada na tela do analisador. A figura 5 mostra um exemplo, onde podemos notar que o sinal ocupa, aproximadamente, sete divisões no eixo Y. Esse ajuste assemelha-se ao “volts/div” nos osciloscópios.



Faixa de nível
Esse parâmetro determina os limites do sinal exibido. Ainda com base na figura 5, notamos que o exemplo mostra um “patamar” inferior de -100 dBm, e superior a 0 dBm.

Resolução da frequência
O ajuste da resolução de frequência é uma função do circuito de filtro da frequência intermediária (FI), e é análogo ao controle “tempo/div” nos osciloscópios.

Sweep time”
Esse controle é específico para os analisadores de espectro operando em modo heteródino, e determina o tempo necessário para a gravação do espectro de frequências a ser estudado.

O Analisador de Espectro na Indústria

Como, onde, e por que utilizar o analisador de espectro?
É fato que a análise de espectro no domínio das frequências é mais comum no campo das telecomunicações, onde o estudo (e posterior ajuste) da frequência dos sinais transmitidos é fundamental para a boa performance do sistema. Contudo, recentemente, um novo modo de aplicação ganhou muita importância para o analisador de espectro: a automação industrial. Não é raro o encontrarmos em empresas nacionais, fabricantes de equipamentos de automação, cujo faturamento é devido em grande parte a exportação. Uma exigência comum dos consumidores internacionais é a “compatibilidade eletromagnética”.
A compatibilidade eletromagnética (EMC) é um conjunto de características que garantem que determinado equipamento não emite interferências eletromagnéticas (EMI) acima dos níveis permitidos pelos órgãos internacionais competentes. A EMC passou a ser um fator de qualidade do produto.

Ora, mas como um fabricante pode saber se seu produto está ou não dentro da compatibilidade?
Aí é que entra a utilidade do analisador de espectro. Esse instrumento é capaz de avaliar o nível de emissão eletromagnética e, o mais importante, determinando qual (ou quais) sua(s) faixa(s) de frequência(s). De posse dessa informação, a engenharia pode projetar filtros e adequar as técnicas construtivas do seu produto para que esse torne-se compatível. Caso o fabricante não possua esse instrumento, ele será obrigado a recorrer a entidades de Consultoria externas a empresa, o que nem sempre é uma boa opção econômica. Claro que a compra de um analisador de espectro deve ser estudada em relação ao custo da sua ausência. Nem sempre a compra é a melhor opção.

Opções de ligação do Analisador
Semelhante à maioria dos instrumentos utilizados em telecomunicações, o analisador de espectro tem sua entrada de RF com uma impedância de 50 Ω.
Algumas medidas, entretanto, exigem impedâncias de 75 Ω (circuitos de CATV, por exemplo). Diversos modelos de analisadores possuem entrada extra de 75 Ω para essa finalidade, porém, caso ela não esteja disponível, é possível fazer o casamento das impedâncias através de um pequeno transformador. Esse dispositivo é conhecido como “matching pad” (Diagrama a).
Ainda sim, no caso de nem ele estar disponível, um resistor de 25 Ω ligado em série com a entrada poderá fornecer bons resultados (Diagrama b).




Conclusão
Alguns analisadores de espectro podem operar em ambas as modalidades (FFT, e heteródino). Como o leitor deve ter percebido, no modo heteródino, o instrumento funciona como um receptor de rádio, sendo comuns modelos que disponibilizam uma saída de áudio onde podemos ligar um pequeno alto-falante. Caso façamos o ajuste da frequência entre 560 kHz e 1600 kHz, por exemplo, poderemos ouvir as estações de AM.

* Matéria originalmente publicada na revista Mecatrônica Atual; Ano: 10; N° 53; Set / Out - 2011

Varnish Cache

Varnish Cache

- É um acelerador HTTP
- Melhor Configuração
- Melhor Gerenciamento
- Rápido
- Características de Gerenciador de Conteúdo
- Licença BSD



Alta performance

  • O Varnish foi desenvolvido especificamente para servir de proxy reverso para sistemas de gerenciamento de conteúdo ( CMS ) lentos. Não foram incluídas no Varnish funcionalidade extras normalmente encontradas em outros servidores de proxy, com suporte a diversos protocolos.
  • Foco 100% em performance, Kamp utilizou todo o seu conhecimento sobre o funcionamento do Kernel para fazer com que o Varnish trabalhe sempre junto com o Kernel, aproveitando suas qualidade de gerenciamento de memória ao máximo.
  • Capacidade de trabalhar em 32 ou 64 bits aproveitando ao máximo cada operação do processador. Kamp  contabiliza que o Varnish é capaz de responder a uma requisição Web utilizando aproximadamente 11 syscalls e 7 locks.
  • Multi-cpu e multi-core escalonando pools de threads por todos os núcleos, aproveitando toda a capacidade de processamento.
  • Os arquivos de configuração do Varnish são compilados e executados juntamente com a aplicação.
  • Execução em dois processos para garantir o reinício automático da aplicação em caso de falha.



Controle sobre cada passo na resposta às requisições

  • Possibilidade de sobrescrever o TTL dos pacotes, adicionar ou remover cabeçalhos, remover cookies, reescrever urls e invalidar objetos no cache.
  • Possui uma linguagem de configuração VCL, específica para configurações de domínio, possibilitando a intervenção em praticamente todas as fases do tratamento da requisição.
  • Permite a inserção de códigos C dentro de seus arquivos de configuração, de forma transparente. No site do sistema, inclusive, é possível se encontrar um método para interligar, através deste recurso, o sistema de proxy Varnish com a ferramenta de localização de IP's GeoIP(1) para criar desta forma um balanceamento de carga geo referenciado.
  • Capacidade de trabalhar com múltiplos arquivos de configuração VCL, podendo inclusive carregar novos arquivos ou alternar entre diversas configurações em tempo de execução.
  • Suporte a balanceamento de carga inclusive com checagem da saúde dos servidores.
  • Mesmo após vencido o tempo de vida de um objeto em memória, o sistema permite se configurar um tempo de vida extra (grace) a objetos para que, caso o servidor Web não responda, este possa continuar atendendo as requisições sem paradas no serviço.



Controle sobre o que deverá ser cacheado

  • Implementa parcialmente a tecnologia ESI, a qual permite se definir, no código da aplicação, como deverá funcionar o cache para as diversas partes de uma página Web. Com o uso desta tecnologia, é possível se definir propriedades de cache diferentes para partes diferentes de uma mesma página Web.


Diversas ferramentas de apoio e controle para o sistema de cache

  • Possui um conjunto de ferramentas em modo texto muito completo possibilitando uma fácil administração e monitoria do serviço.
  • Oferece uma interface telnet para um fácil gerenciamento da aplicação

Diversos módulos de gerenciamento Web

  • O Varnish possui um módulo próprio para gerenciamento de seu sistema Online bem como módulos para integração dele com o Webmin, Nagios e Munin.

Log centralizado em memória

  • A fim de evitar chamadas para gravação em disco desnecessárias, todo o gerenciamento do log é feito em memória.
  • O sistema oferece ferramentas completas para visualização do log de formas variadas permitindo uma análise profunda do seu funcionamento.
  • Serviço para armazenamento do log em disco em um formato compatível com o Apache / NCSA para integração com outras ferramentas como o Awstats2.


Varnish Cache deixa seu blog ou site muito mais rápido, através do cache de carregamento de páginas na Web.É um serviço que aumenta a rapidez de abertura das páginas de seu site ou blog em até 300 vezes. É um serviço acelerador de requisições HTTP deixando seu site muito mais rápido.

Conheça como funciona o Serviço Varnish Cache

O Serviço Varnish Cache fica entre o usuário e o servidor web, ele faz análise dos conteúdos mais acessados, depois armazena tudo em cache e depois faz todo o gerenciamento da páginas mais acessadas.

O que o Varnish Cache faz?

O serviço Varnish Cache guarda em cache as páginas mais acessadas diretamente na memória RAM, que é milhões de vezes mais rápido que o acesso em disco (HD) ou mesmo em outro servidores, com isso o ganho de performance poderá aumentar em até 300 vezes.

O Varnish Cache funciona em qualquer linguagem

O serviço Varnish Cache funcionada em qualquer tipo de linguagem e banco de dados, é o melhor é que quase não necessita de modificação para o serviço funcione corretamente.

Conheça a documentação oficial:

https://www.varnish-cache.org/

VARNISH - SERVIDOR WEB CACHE
http://brito.blog.incolume.com.br/2011/10/varnish.html

Varnish: Uma camada de velocidade
http://www.vivaolinux.com.br/artigo/Varnish-Uma-camada-de-velocidade?pagina=2

sexta-feira, 16 de dezembro de 2011

PHP Arrays + Checkbox

Um array em PHP é, na realidade, um mapa ordenado. Um mapa é um tipo que mapeia valores de chaves. Este tipo é otimizado de várias maneiras, assim você pode usá-lo como um array real, ou uma lista (vetor), hashtable (que é uma implementação de um mapa), dicionário, coleção, pilha, fila e provavelmente mais. Como você pode ter outro array PHP como um valor, você também pode facilmente simular árvores.

PHP Array Syntax: Criar um Array

language-construct array() é usado para criar um array em PHP. Veja um exemplo
array( [key =>] value
, …
)
key: chave pode ser um inteiro ou string
value: Um valor pode ser de qualquer tipo PHP

Examples
$arr = array(”foo” => “bar”, 12 => true);
echo $arr["foo"]; this will print bar
echo $arr[12]; this will print 1
Se você fornecer os parênteses com nenhuma tecla especificado, então o valor máximo dos índices existentes inteiro 1 é tomada como chave. veja abaixo
$arr = array(5 => 1, 12 => 2); Isto irá criar um array com 2 elementos
$arr[] = 56; nova chave será máximo chave + 1 i.e $arr[13] = 56
$arr["x"] = 42;
Isto acrescenta um novo elemento para a matriz com a tecla “x”
array(5 => 43, 32, 56, “b” => 12); This array is the same as following.
array(5 => 43, 6 => 32, 7 => 56, “b” => 12);
Seguindo exemplo, irá mostrar que podemos utilizar um array de formulário HTML insumos.
Manipulando arrays de formulário HTML insumos para scripts PHP
HTML formulário com array
<-input type=”checkbox” name=”selected_ids[]” value=”1″>
<-input type=”checkbox” name=”selected_ids[]” value=”2″>
<-input type=”checkbox” name=”selected_ids[]” value=”3″>
<-input type=”checkbox” name=”selected_ids[]” value=”11″>
<-input type=”checkbox” name=”selected_ids[]” value=”12″>
<-input type=”checkbox” name=”selected_ids[]” value=”13″>

OBS: se for usar este exemplo aqui escrito retirar o '-' de '<-input type=' ficando assim 'input type=' OK? o '-' foi adicionado para melhor visualização do codigo no blogspot
Quando se apresentar acima forma, irá gerar US $_POST['selected_ids'] [] array ao formulário movimentação php script. Essa matriz mantém todas as checkbox selecionadas valores acima de formulário HTML. foreach () construir pode ser usado para extrair valores da matriz. Seguinte código de exemplo irá mostrar como é que podemos extrair destes valores a partir do regresso array.
foreach ($_POST['selected_ids'] as $key => $value) {
echo “Key: $key; Value: $value
”;
}

por exemplo, 1,2 e 12 são selecionados a partir do formulário HTML acima então código acima irá imprimir

Key: 0 Value: 1
Key: 1 Value: 2
Key: 2 Value: 12
bom é isso ai qualquer duvida email!
Abraço a todos...

Ferramentas Essenciais para Testes de Segurança

Olá pessoal, sem muitas palavras porque não há muito o que dizer sobre o tema, quem for responsável pela segurança da infraestrutura, também pode começar a fazer os testes com o que se tem em casa.
Nesse sentido, há três coisas que pode transferir, ler, experimentar e apontar. São as seguintes:
  1. OSSTMM, uma metodologia aberta para testes de segurança;
  2. Nessus, uma ferramenta para identificação de vulnerabilidades técnicas ao nível de uma primeira mão; e
  3. BackTrack, uma colecção extensa de ferramentas que podem ajudar-nos a completar o trabalho, muito além.
Mínimo dos mínimos.
Mas há mais coisas. Livros para aprender algumas técnicas, para acompanharem os testes no sistema de informação? Segue a lista:
  1. Hacking Exposed: Network Security Secrets & Solutions;
  2. Hacking Exposed: Web Applications;
  3. Hacking Exposed: Windows
  4. Hacking Exposed: Linux
  5. Hacking Exposed: Cisco Networks
  6. Hacking Exposed: Wireless
  7. Hacking Exposed: VoIP
  8. Hacking Exposed: Computer Forensics
  9. Hacking Exposed: Malware & Rootkits
A segurança dos nossos sistemas começa com o trabalho de casa. Em vez de passarem o tempo a lastimar ou a temer os ataques, podemos preparar-nos para evitá-los. Estas referências são úteis para começarmos.
Abraços