SOCKS – Acesso Seguro e Confiável para Hosts através de Firewalls

Começamos explicando o que é um Proxy . Proxy é um servidor que recebe as requisições de um usuário e as passa para frente, dessa forma alterando o remetente da mensagem com o objetivo de filtrar o conteúdo ou enviar dados anonimamente. O proxy pode realizar várias funções como filtrar conteúdo, inspecionar contra vírus, bloquear acesso a determinados recursos, etc.

O SOCKS é um protocolo proxy para aplicações de rede baseadas no TCP/IP. O protocolo SOCKS provê um framework flexível para estabelecer comunicações seguras em razão da facilidade de integração com outras tecnologias de segurança.

O SOCKS é baseado na arquitetura cliente/servidor e consiste em dois componentes:

  • SOCKS CLIENT: é um software residente no dispositivo do usuário (laptop/workstation). Contém uma série de regras configurada pela área de TI que garante ou bloqueia acesso a hosts específicos, aplicações ou serviços.
  • Servidor SOCKS (Servidor proxy): tipicamente é um appliance, como Blue Coat e Cisco, que age como um intermediário para as requisições dos clients aos recursos de hosts além das fronteiras do firewall.

A vantagem do SOCKS sobre outros métodos de proxying é que é um padrão formalizado na IETF num número de RFC, e trabalha com qualquer dado TCP e UDP ao contrário de outras tecnologias que são limitadas para um tipo de dados, como proxies HTTP.

O protocolo SOCKS tem cinco funções:

  • Fazer requisições de conexão
  • Criação de circuitos proxy
  • Retransmissão de dados de aplicação
  • Promover a autenticação de usuário
  • Adicionar segurança/criptografia entre o client e o servidor

E o SOCKS executa todas as funções de forma transparente para o usuário.

Quando uma aplicação cliente necessita conectar-se a um host numa outra rede, o SOCKS Client dinamicamente intercepta a tentativa de conexão e a redireciona para o servidor proxy SOCKS. O servidor proxy funciona como uma ponte, um filtro, e direciona a requisição do client.  Caso a requisição seja validada (via autenticação para verificar se o usuário tem permissão e se está de acordo com as regras de filtros), o servidor proxy conecta-se ao host e requisita o serviço em nome do client.

As principais funções do servidor SOCKS são:

  • Controlar quem tem acesso aos hosts, aplicações e serviços
  • Agir como uma ponte e prover acesso a aplicações que residam em hosts que não estão conectados à rede corporativa
  • Manter as identidades das máquinas seguras e anônimas

Grande parte dos servidores proxy SOCKS são providos pelos próprios fabricantes de appliances de firewall e proxy como Cisco e Blue Coat mas não os SOCKS Clients. Existem alguns clients para MAC e Linux, normalmente gratuitos e outros pagos apenas para uso pessoal. Para ambientes Windows existem alguns gratuitos e outros pagos, mas todos estes não foram estruturados para a implantação num ambiente corporativo com todas as suas peculiaridades. A fiandeira tecnologia representa no Brasil a divisão de conectividade e segurança da OpenText. A OpenText tem um software Socks Client designado para uso de grandes corporações, para uso pessoal e até mesmo para desenvolvedores de sistemas e aplicativos que podem embutir o socks client em seus produtos.

Um caso de uso típico para um SOCKS CLIENT como o da OpenText é quando uma empresa tem um servidor de aplicações cliente, onde clientes e servidores estão locados em diferentes pontas de um firewall e as portas utilizadas pelo servidor de aplicações cliente são bloqueadas pelo firewall. Como mencionado antes, muitas soluções de firewall suportam o protocolo SOCKS, mas o servidor de aplicações não é necessariamente habilitado ao uso deste protocolo.

O OpenText SOCKS Client permite que uma empresa dinamicamente “socksify” seu servidor de aplicação cliente, permitindo que a aplicação comunique através do firewall de uma maneira segura. A alternativa ao uso do SOCKS é abrir a porta ou portas no firewall para habilitar a comunicação direta entre o cliente e o servidor, mas isso mata a finalidade de se ter um firewall. O valor do OpenText SOCKS Client reside no fato que habilita a qualquer aplicação Windows como “SOCKS-enable” sem a necessidade de recodificar a aplicação para ser compatível com o SOCKS.

Esta é uma tremenda vantagem de se usar o OpenText SOCKS Client porque aplicações não compatíveis com SOCKS podem tornar-se compatíveis de forma rápida e sem esforço. Nenhum código necessita ser recompilado e nenhum ajuste é necessário nas configurações das aplicações. Quando a aplicação tentar comunicar-se pela rede, o SOCKS Client vai filtrar dinamicamente os dados sendo enviados e os encaminha para o servidor SOCKS apropriado (de acordo com as configurações do SOCKS Client definidas durante a instalação).

Em certo grau e porque provê tunelamento e criptografia da comunicação, o SOCKS pode ser visto como competidor de outras tecnologias de segurança como o Secure Shell (tunelamento e criptografia) ou SSL (criptografia). A razão pela qual uma empresa escolhe uma tecnologia em detrimento de outra é por causa de sua atual infraestrutura de rede e o “estilo” de seus arquitetos de redes.

Alguns exemplos de uso do SOCKS:

  • Conexão Segura para a Receita Federal usando aplicação em Java
  • Conexão Segura para aplicações ofertadas por Prefeituras e órgãos governamentais com constante alterações de endereçamento
  • Controle de Acesso para informações de cartões de crédito, foco na conformidade PCI
  • Acesso Limitado para Informações no Thompson Reuters através de client Web
  • Criptografar a comunicação e sessão de aplicações de chat para proteger as informações de clientes
  • Uma solução que substituI o Servidor Microsoft TMG para permitir o acesso controlado ao servidor proxy
  • Habilita o acesso aos sistemas de registros de vôo para planejamento de tráfego

Então, podemos afirmar que o OpenText SOCKS cliente traz vantagens únicas:

  • OpenText SOCKS Client controla o acesso por aplicação, por nome, IP ou range de endereço do host destino, utilizando os protocolos atuais Socks v4/v5, além de ser governado por configurações simples de regras;
  • OpenText SOCKS Client também funciona como um firewall pessoal baseado em Socks para plataformas 32 e 64-bit incluindo Windows 10;
  • OpenText SOCKS Client integra-se com sistemas Blue Coat, com sistemas com suporte ao protocolo Socks (Cisco, etc), Microsoft Active Directory ou outros ambientes de autenticação baseado em Kerberos;
  • Suporte para iniciativas de Single Sign-On e balanceamento de Carga de Servidores;
  • Open Text SOCKS Client é preparado para deployment centralizado com suporte para o Windows Installer framework (MSI);
  • Blue Coat e outros fabricantes como Cisco recomendam apenas a Open Text como a única solução de Socks Client para trabalhar com seus sistemas;
  • Open Text SOCKS Client é a única solução de Socks Client criada por uma grande e estabelecida empresa de software;
  • Open Text SOCKS Client é a única solução suportada e compatível com Windows 7 e 10

Gostaria de conhecer mais sobre o OpenText SOCKS Client e testá-lo em seu ambiente?  Contate-nos pelo email f[email protected] ou pelo telefone (11) 4063-8333.