Câmeras de monitoramento: como funciona o controle PTZ

Câmeras de monitoramento estão cada vez mais presentes em cidades grandes, com finalidades voltadas a segurança e controle. Dentro das diversas tecnologias existentes, câmeras com controle PTZ (Pan/Tilt/Zoom) – também conhecidas como “speed dome” – são as mais sofisticadas para uso profissional.

Câmeras PTZ são controladas a partir de mesas controladoras com joystick ou DVRs. Cada câmera possui 3 conjuntos de cabos: alimentação, sinal de vídeo e controle. O sinal de vídeo deve ser conectado da maneira tradicional, através de cabo RG-59 ou par trançado/video balun, e está ilustrado abaixo:

Os cabos de controle PTZ, por sua vez, devem ser ligados em cascata, conforme ilustração abaixo:

Os sinais de controle são enviados pela mesa controladora ou DVR às câmeras usando interface serial RS-485. Esta interface, também conhecida como EIA-485, é um padrão internacional, o qual define as características elétricas de geradores e receptores de sinais digitais envolvidos em um sistema de comunicação digital. Usando pares de fios trançados, EIA-485 permite implementar comunicação digital eficiente entre um gerador e múltiplos receptores como uma sequência de estações interligadas entre si, formando uma topologia linear ou de barramento. A taxa de transmissão é elevada, de até 35Mbits/s a 10m e até 100kbits/s a 1.200m, e a imunidade a ruído elétrico é grande.

Quando várias câmeras com controle PTZ compõem um sistema de monitoramento, cada uma deve receber uma identificação única para que seja endereçada corretamente pela mesa controladora ou DVR. Normalmente esta identificação é configurada via DIP-switchs dentro das câmeras; estas DIP-switchs selecionam também o protocolo de comunicação a ser usada.

Há diversos protocolos de controle utilizados para comunicação entre mesas controladoras ou DVR e câmeras. Um dos mais populares é PELCO-D, que tem comandos formados por 7 bytes, no seguinte formato (valores em hexadecimal):

  • byte 1: sincronização inicial, FF.
  • byte 2: endereço da câmera (câmera 1 tem endereço 01).
  • byte 3 e 4: comando1 e comando2 como descritos abaixo.
  • byte 5: data 1, velocidade para PAN, variando de 00 – parado a 3F – velocidade alta e  FF – turbo.
  • byte 6: data 2, velocidade para TILT, variando de 00 – parado a 3F – velocidade alta.
  • byte 7: checksum, soma dos bytes 2 a 6 e depois módulo 100.
Os bytes 3 (comando1) e 4 (comando2) codificam os reais controles desejados. Por exemplo, quando comando2 tiver o valor de 0000.0100 binário (ou 04 hexa), a câmera endereçada deve realizar uma operação de PAN à esquerda; se tiver valor 0000.0010 binário, a operação será PAN à direita; se tiver valor 1000.0000, o foco será ajustado para longe.
Em resumo, sistemas de câmeras com controle PTZ são sofisticados sistemas de comunicação digital, e sua correta instalação requer pessoal técnico bem qualificado.

Segurança

Em um passado não muito distante, um servidor configurado corretamente tinha seus riscos de ser invadido, mas esse risco era fisicamente dimencionado até os limites da sua rede local. Mas nos dias de hoje isso não é mais possível, por causa da chegada da Internet.

O grande crescimento de computadores interconectados, o crescimento de serviços virtuais e a quantidade de softwares com finalidades ilícitas, trazem como consequência a preocupação de se defender dessas pessoas mal intencionadas que posso utilizar esses softwares que tentam de várias formas invadir seu computador.

Existem vários aplicativos voltados a detectar a invasão do seu sistema, mas existem dois tipos de IDS, o que trabalha na user space (nível de usuário) ou kernel space (nível de kernel).

Podemos dizer que os IDS do tipo tripware que trabalha na camada de usuário podem ser mais vulneráveis, sendo assim burlados com mais facilidade, porque a maioria desses IDS tem arquivos de configuração, onde é informado , quais diretórios ou arquivos que precisam ter a proteção do IDS.

Caso a pessoa que efetuar a invasão não precisar fazer nenhuma alteração em arquivos, que estão relacionados no arquivo de configuração do IDS, somente fizer alterações em arquivos não configurados no IDS ou na camada de kernel ela possivelmente ela não será notada,tudo depende do contexto como o acesso arbitrário ocorreu.

Já com um sistema configurado com um IDS que esteja na camada de kernel, a dificuldade aumenta porque tudo o que a pessoa estiver tentando executar, gerará uma chamada no kernel(systemcall), assim como o IDS está na camada de kernel, todas as chamadas feitas geram mensagens de logs.

O registro das atividades dos usuários e serviços dos sistemas é, notoriamente, muito importante para os administradores e como foi citado o fato de todas as chamadas ao sistema que são negadas serem registradas, cria um cenário muito importante para auditorias futuras.

A importância de registro dos eventos do sistemas é tanta, que na norma NBR ISO/IEC 17799, o item 9.7.1 é todo dedicado ao “Registro (log) de eventos. Deixando claro que registro de eventos são também prioridade em uma política de segurança.

Em um sistema de log, oficialmente somente o root poderia alterar os arquivos de log, já com o Lids aplicado, nem o root teria o poder de alterar esses arquivos.

Lids é um path de segurança no nível de kernel, ou seja, é necessário a recompilação do kernel para a aplicação do path. Esse patch pode ser encontrado no site oficial do LIDS “www.lids.org” e o fonte do kernel em “www.kernel.org”
As ferramentas que acompanham o patch do Lids “lidsadm e lidsconf” são fáceis de utilizar e de configurar, elas estão no nível de usuário e servem para configurar as ACLs que serão determinadas pelo root, que, dependendo da configuração das ACLs do Lids, não será mais o dono do sistema, mas sim somente um usuário comum.

Como o Lids está no nivel de kernel, ele é acionado já no início do boot do sistema, portanto, já na inicialização o sistema se encontra protegido.

Com esse sistema de proteção no boot, ela nega permissão a muitos serviços padrões do sistema, como o dmesg, que gera um relatório de todo a inicialização do kernel. Isso é muito importante, por isso que se deve liberar o dmesg a gravar no diretório /var/log/.

# lidsconf -A BOOT -o /var/log/dmesg -j WRITE

 

Todos sabem que o arquivo /etc/shadow contém as senhas de todos os usuários do sistema e que as senhas estão criptografadas. Mesmo assim, existe um grande risco de alguém descobrí-las.

Por esse motivo, o LIDS trabalha da seguinte forma: ainda como usuário root é possivel determinar que nenhum binário vá conseguir o acesso a esse arquivo de senhas, colocando uma regra de DENY (proibido), por exemplo:

# lidsconf -A -o /etc/shadow -j DENY

 

Mas o mais importante é que para toda regra existem as exceções, podendo assim liberar qual binário poderá acessar o /etc/shadow como READONLY (somente leitura). Um exemplo claro, seria o binário /bin/login, que precisa ter permissão de leitura no arquivo para que possa efetuar o login normalmente.

# lidsconf -A -s /bin/login -o /etc/shadow -j READONLY

 

Mas caso se tente visualizar o conteúdo do arquivo com outros binários (por exemplo: vi, cat, more, etc..), o IDS acusará que esse arquivo não existe.
Da mesma que é possivel proibir o acesso as arquivos para todos os binários e liberar para alguns, também existe a possibilidade de ocultar processos, isso mesmo esconder os processos. Veja por exemplo como ocultar o processo do serviço ssh.

# ldisconf -A -s /usr/sbin/sshd -o CAP_HIDDEN -j GRANT

 

Quando tentar listar os processos da máquina, esse processo do serviço ssh não aparecerá, mas o serviço está ativo.

Diante desse poder de fogo sugiro como a melhor opção seria utilizar os dois sistemas de IDS, para que vc esteja protegido na camada de usuário e na camada de kernel. Assim dificultado em muito possiveis atividades arbritárias.

Mesmo hoje tendo recursos como LIDS e outros como o SELinux, GrSecurity, devemos pensar sempre de forma estratégica em tudo que for possivel e viável tanto na Kernel Space como na User Space, pois em algumas situações como uma estação de trabalho fica impraticavel o uso de um recurso com LIDS.

O Lids também é um mecanismo a mais para aumentar o nível de segurança de um sistema operacional buscando atender também as diretrizes inerentes ao nível C2 de segurança no que diz respeito o Sistema Operacional.

O nivel C2 recomendado pelo TCSEC ” Trusted Computer System Evaluation Criteria”, que é nível de segurança minimo requerido pelo governo Americano e utilizada em algumas instituições no Brasil.

Outro valor agregado nessa história é que somente conhecendo profudamente como o sistema funciona e as respectivas aplicações que estejam sendo executadas, conseguimos tirar proveito de um recurso como LIDS, pois do contrário, simplesmente nada vai funcionar corretamente, ou seja, além de melhoramos a segurança do sistema, nossa base de conhecimento se aprimora.

Storage corporativo

Empresas de médio porte, e até de pequeno porte, já tem se beneficiado da tec­nologia de sistemas de armazenamento de alta capacidade, conhecidos como sto­rages. Estes equipamentos já são parte padrão do ambiente de TI de empresas de grande porte, e são peça essencial para projetos de virtualização ou para as polí­ticas de continuidade de negócios.

Um storage é um equipamento que serve para concentrar toda necessidade de armazenamento de um grupo de servidores, provendo uma solução flexível, de alta velocidade e confiabilidade. Em vez de colocar HDs diretamente nos servidores, todos os HDs ficam no storage, e a capacidade combinada pode ser distribuída entre as máquinas. Isso reduz o desperdício de espaço e permite também que a ca­pacidade seja realocada de acordo com a necessidade, sem que seja preciso des­ligar um servidor para instalar mais HDs. O storage também possui sistemas de proteção que garantem que em caso de falha de um HD, seja possível fazer a troca sem perda de informação e sem necessidade de interrupção do serviço.

Dentro do datacenter, o storage é ligado aos servidores por meio de cabos di­retos, usando uma tecnologia apropriada. A opção mais comum é o Fibre Channel, que permite acesso de alta velocidade aos discos de forma muito parecida com uma conexão local utilizando o protocolo SCSI. O Fibre Channel opera em taxas tí­picas de 1 Gbps até 8 Gbps. Recentemente vários fabricantes começaram a in­vestir mais pesado em outras formas de interligação, para reduzir o custo. As princi­pais são o iSCSI (interface de disco SCSI sobre IP) e o FCoE (Fibre Channel over Ethernet). Em ambos os casos, o transporte passa a ser feito por uma rede Gigabit Ethernet padrão.

A interligação de servidores e storages dentro do datacenter é simples, e pode ser feita com cordões ópticos diretos. Porém, muitas empresas tem necessidade de interligar prédios distantes, dentro de uma cidade ou até mesmo entre cidades. Esta interligação permite que as empresas tenham um datacenter de reserva, ga­rantindo a continuidade de negócios em caso de desastres. Além de ser uma boa idéia, também é uma obrigação legal de empresas do setor financeiro (graças à Re­solução 3380 Banco Central), e de empresas listadas em Bolsa de Valores desde a lei Sarbanes-Oxley.
A ligação de storages exige um protocolo compatível. Storages menores e mais modernos (que utilizam tecnologia iSCSI ou FCoE) podem ser interligados por meio de uma rede Metro Ethernet padrão. A taxa de transmissão deve ser suficiente para as necessidades do cliente; a velocidade típica fica entre 100 Mbps e 1 Gbps, que permite a replicação dos dados em tempo real. O atendimento neste caso pode ser feito com um Connect Flex, que é um link dedicado de alta velocidade.

Para storages de maior capacidade (que utilizam o protocolo Fibre Channel) é ne­cessário dispor de um canal óptico totalmente transparente. Isto pode ser feito com uma fibra apagada, ou seja, uma fibra óptica que não passa por nenhum equipa­mento da operadora. O problema é que este tipo de ligação depende da disponibili­dade do serviço na região. A maioria das operadoras não oferece a fibra escura como parte do seu portfolio por questões estratégicas; é um produto caro, que uti­liza de forma exclusiva um recurso valioso que poderia ser “multiplicado” pela opera­dora para atender muito mais clientes. Mas existem algumas alternativas, como a oferta de serviços sobre tecnologia WDM.

O Storage Connect, que permite interligar storages entre prédios distantes dentro da sua área de atuação. Vários clientes corporativos já uti­lizam o Storage Connect, incluindo bancos, empresas do segmento de saúde e ór­gãos públicos. Através desta solução, é possivel interligar diretamente tanto a rede LAN como os storages, sem passar por nenhum equipamento ativo de rede, de forma totalmente transparente.

Solução Storage Connect com Enlace CWDM Simples

O Storage Connect oferece a mesma performance e flexibilidade da fibra apa­gada, mas permite o gerenciamento da solução (algo impossível com a fibra apa­gada normal). A solução utiliza a tecnologia de multiplexação de comprimentos de onda (WDM). O sistema permite que o cliente disponha de até 8 canais ópticos transparentes, que podem ser utilizados para interligação de storages, redes locais, ou qualquer outro sistema que possa ser ligado a uma fibra óptica. A solução também pode ser oferecida de forma redundante, utilizando para isso duas rotas distintas.

 

Solução Storage Connect com Enlace CWDM Redundante

A solução Storage Connect é customizada para cada cliente, de acordo com o número de canais e a velocidade desejada em cada canal. A solução é indicada para ligação em Fibre Channel, em taxas de 1 Gbps a 8 Gbps, ou de rede local (LAN) a 1 Gbps ou 10 Gbps.

Onde instalar um novo servidor Linux para email?

Frequentemente recebemos contato de clientes interessados em instalar servidores Linux de email para uso próprio, pelas mais diversas razões:

  • o provedor atual não tem backup, seu servidor de email sofreu pane de hardware e gigabytes de mensagens foram para o espaço;
  • novamente, o provedor não tem backup, e um colaborador dispensado deletou anos de histórico de email da empresa;
  • necessidade de copiar todas as mensagens enviados e recebidos, como cópia oculta (CCO), para fins de arquivamento, auditoria e “compliance”.

Muitos pensam em hospedar “in-house” o servidor Linux de email, especialmente aqueles que passaram por um evento trágico (“servidor do meu provedor pifou”). Mas para muitas empresas, uma decisão deste tipo requer um grande planejamento: contratar um link Internet com IP fixo, preparar a energia elétrica com nobreak que dure 3 a 4 horas, reforçar o sistema de ar condicionado quando possível (em muitos prédios comerciais, o ar condicionado é central e fica desligado fora do horário comercial), etc.

Para quem quer evitar preocupações desta natureza, um caminho natural é considerar o “cloud computing”: custos de operação contidos, fácil manejo, desempenho sob medida. Há também a alternativa de contratar um serviço de “hosting” em datacenters tradicionais, mas estes sempre apresentam custos de operação elevados e amarrações contratuais de longa duração.

Qualquer que seja a decisão, há um item que não pode ser relegado ao segundo plano: planejar e operar um sistema eficiente de backup, contendo informações de configuração, as caixas de email, as senhas dos usuários e as próprias mensagens. Esta assinatura de um fórum técnico diz uma verdade incontestável: “Existem dois tipos de usuários de computadores, aqueles que fazem backup, e aqueles que nunca tiveram problemas com HDs”.

Servidor Linux e vários links Internet de banda larga

Cada vez mais aplicações para negócios estão disponíveis como serviços Internet. No jargão de “cloud computing”, é o modelo SaaS – “Software as a Service”, onde o programa aplicativo e seu dado ficam hospedados em servidores “cloud”, e os usuários os acessam através de browser e pagando pelo uso.

Para quem usa aplicativos desta natureza, ter acesso Internet sem interrupção é primordial. Com a popularização de acesso Internet de banda larga a preço acessível, empresas de qualquer tamanho podem contratar 2 ou mais links Internet (exemplo, acesso via cabo de TV e rádio), de provedores diferentes, para ter acesso Internet com redundância, e, como bônus, balancear o tráfego entre eles.

Desde kernel 2.2, servidores Linux sempre ofereceram recursos avançados de de roteamento e controle de tráfego antes restritos a roteadores. Neste “howto” clássico, o roteamento para múltiplos links Internet com balanceamento de tráfego é claramente demonstrado, além de outros mecanismos não-usuais (controle de banda, priorizar tráfego de voz e vídeo, etc.). Mas o manuseio destes recursos sempre exigiram grande domínio sobre TCP/IP, iptables e Linux, e algumas ferramentas tentam simplificar isto (por exemplo, Shorewall tem suporte a múltiplos links Internet, e Zentyal permite usar 2 links Internet facilmente).

Recentemente, roteadores de banda larga de baixo custo incorporaram estes recursos de múltiplos links Internet e balanceamento. Um bom exemplo é TP-Link R480T+, que permite conectar até 4 links Internet de banda larga; D-Link tem um produto para 2 links Internet, DI-LB604; D-Link ainda oferece um produto sofisticado, DSR-1000N, com 2 portas para links Internet de banda larga e uma porta para Internet via modem 3G. Estes equipamentos ajudam a popularizar uma tecnologia antes restrita a grandes empresas, e, conjugados a servidores Linux com função proxy, aumentam a produtividade de médias e pequenas empresas a um custo reduzido.

 

Servidor Linux com Gerenciador Web – Zentyal

Recentemente adotamos Zentyal Community Edition como solução de servidor Linux para clientes que não têm equipe própria de TI.

Administrar servidores Linux/Unix tem sido domínio de quase-nerds. Executar comandos em terminal de texto, múltiplos arquivos de configuração com dezenas ou centenas de parâmetros, mensagens de erro obscuros assustam a maioria das pessoas, inclusive profissionais de TI experientes.

Zentyal é uma das alternativas para facilitar o uso de Linux como servidor. Construído sobre Ubuntu Server, apresenta uma interface web muito atraente e polida, e empacota funções pré-definidas de servidor (arquivos, proxy, firewall, email, etc.). Ao esconder detalhes de configuração de pouca utilidade na maioria das situações, torna o servidor Linux muito mais simples de administrar.

No entanto, a opção pela simplicidade tem seu preço: Zentyal é um aplicativo fechado, e não permite intervenções por administrador Linux/Unix em configurações geradas por ele. Nestes casos, nossa opção recai no Webmin.

Novo Cliente: Log Express

Após um processo rigoroso de seleção de empresas de tecnologia Linux e avaliação da solução proposta, a Intercom foi escolhida como empresa parceira para fornecimento de solução Linux da Log Express, cuja matriz está localizada na cidade de São José dos Campos, SP.

Além da matriz, a Log Express possui diversas filiais localizadas no Vale do Paraíba e litoral norte do Estado de São Paulo, e tem uma lista de necessidades não-triviais: autenticação centralizada na matriz; controle de acesso centralizado no acesso Internet; interligação de filiais à matriz via VPN para execução de aplicações corporativas; sistemas centralizados de chamados (este integrado ao sistema de email) e inventário; e facilidade de gerenciamento.

A solução proposta pela Intercom, vencedora no processo de avaliação tecnológica, está baseada em servidor Linux Ubuntu, interface Webmin, OpenVPN com firewall iptables, autenticação winbind integrada ao MS Active Directory, Request Tracker e OCS Inventory.

Além da solução tecnológica, a Intercom propôs transferir “know-how” especializado à equipe de TI da Log Express, para operação própria pós-implantação, assim demonstrando total transparência na parceria formada.

Cloud Computing: razões para adoção

Dados recentes de uma pesquisa do Fórum da Indústria “Cloud” (CIF) dos Estados Unidos indicam que 31% das corporações adotam “cloud computing” pelas oportunidades de redução de custos TI, e 28% fazem a adoção pela flexibilidade oferecida. A pesquisa foi feita entre 400 gestores de TI de corporações americanas e empresas médias e pequenas.

Na mesma pesquisa, 98% dos entrevistados relatam elevado nível de satisfação com os fornecedores de serviços “cloud” escolhidos.

Recentemente, vários líderes do mercado de “cloud computing” reduziram seus preços: Amazon reduziu seus custos de armazenamento, e a Microsoft também reduziu seus custos do Office 365 e Azure.

No entanto, a preocupação com segurança de dados e privacidade continua grande, e as empresas ainda hesitam muito em migrar seus dados para “cloud computing”. Outras preocupações são conectividade e latência na transmissão de dados.

Linux e câmeras IP

Desenvolvemos recentemente um projeto de monitoração patrimonial distribuída baseada em câmeras IP e Linux.

Os pré-requisitos foram:

  • Transmissão de imagens para Internet, para permitir sua visualização por várias pessoas em vários locais distintos.
  • Gravação de imagens por eventos. Os eventos de gravação devem ser definidos de forma flexível.
  • As câmeras estão espalhados em vários bairros de São Paulo e cidades do Interior de SP; suas imagens devem ser centralizadas em uma única interface. Novas câmeras serão adicionadas com frequência.

A solução implementada está baseada no uso de câmeras IP wireless Foscam FI8905W, uma câmera em cada localidade, usando links de banda larga existentes para transmitir suas imagens para um servidor Linux executando o software Zoneminder.

Zoneminder é um conjunto integrado de aplicativos que fazem a captura, análise, gravação e monitoração de qualquer câmera IP, USB ou CFTV (via placa de captura Geovision). É construído sobre Video For Linux (V4L), e possui vários “daemons” que fazem a captura e análise de imagens. Sua interface web, baseada em Apache, PHP e MySQL, permite a monitoração das câmeras em tempo real e a organização e visualização de eventos gravados.

Zoneminder foi instalado em uma instância m1.small de servidor Ubuntu Lucid 64-bits,  criada na Amazon Web Services São Paulo, com armazenamento EBS inicial de 50GB que poderá ser expandido incorporando novos volumes EBS conforme necessidade. As câmeras IP foram configuradas para transmitir suas imagens a 4 quadros por segundo, um compromisso entre o tráfego de vídeo gerado e a banda disponível para upload Internet.

Este projeto foi executado em 2 semanas e contou com a flexibilidade da Amazon Web Services. O custo mensal de operação é da ordem de R$ 250,00, para 7 câmeras IP.

Amazon Web Services – Novidades EC2

A Amazon Web Services anunciou neste começo de Março/2012 três novidades bem-vindas para EC2 (“Elastic Compute Cloud”):

  1. Todas as instâncias EC2 podem rodar imagens de sistemas operacionais de 64 bits. Isto facilita o crescimento linear dos recursos computacionais para aplicações baseadas em “cloud computing”, pois a mesma imagem de 64 bits pode ser usada desde instâncias pequenas até as super-instâncias conforme sua evolução.
  2. Foi introduzida a instância m1.medium, preenchendo uma lacuna que existia entre a instância m1.small e m1.large. A instância m1.medium tem como recursos 2 ECUs (EC2 Compute Units), 3,75GB de RAM e 410GB de storage temporário. A listagem completa de tipos de instâncias EC2 está aqui.
  3. Os usuários agora podem conectar às instâncias EC2 diretamente a partir do browser, a partir de aplicativos Java, sem necessidade de instalar programas de emulação de terminal ou acesso remoto Windows.

Estas novidades indicam o rápido amadurecimento dos produtos da Amazon Web Services, adequados a uma grande gama de projetos “cloud computing”.