Servidores de rede local

Dentro de uma rede local, tudo começa com o cabeamento, onde você pode empregar uma combinação de rede cabeada e pontos de acesso wireless. As rede cabeadas oferecem como vantagem a velocidade e a estabilidade da conexão, enquanto as redes wireless primam pela praticidade, de forma que o ideal acaba sendo usar uma combinação das duas. Dessa maneira, você pode usar a rede cabeada para interligar os desktops e a rede wireless para os notebooks e dispositivos móveis em geral.

Com a rede funcionando, o primeiro passo é compartilhar a conexão, o que no Linux pode ser feito de forma bastante simples. Ao ativar o compartilhamento, seu servidor passa a funcionar como um roteador, encaminhando os pacotes da rede local para a Internet e vice-versa. As duas redes continuam sendo separadas, de forma que os micros da rede interna podem acessar os servidores disponíveis na Internet, mas não podem ser acessados diretamente de fora, a menos que você ative o roteamento de portas no servidor.

Em muitas situações o acesso à web precisa ser controlado. Em um ambiente de trabalho, normalmente não é desejado que os funcionários fiquem acessando o Orkut durante o expediente, e nenhum diretor vai querer que os alunos fiquem usando os micros da biblioteca para baixar filmes e música, por exemplo. Entra em cena, então, a possibilidade de monitorar e limitar o acesso à web, o que pode ser feito de forma bastante eficiente utilizando o Squid, o Sarg, o Ntop e o SquidGuard, que veremos em detalhes no capítulo 2.

O Squid é um servidor proxy, que serve como um intermediário entre a rede local e a Internet. Dependendo da configuração, ele pode se limitar a otimizar a conexão, utilizando um sistema de cache para reduzir o volume de dados transferidos, pode ser usado para logar os acessos, fornecendo a você um relatório detalhado do que foi feito, ou pode ser usado para efetivamente bloquear sites indesejados, bloquear determinados tipos de arquivos, restringir o acesso baseado no horário e assim por diante.

Completando o time, você pode incluir um servidor DHCP, que automatiza a configuração da rede (permitindo inclusive fornecer IPs fixos para as estações), e um servidor DNS local, que permite que você acesse os micros da rede através de nomes, ao invés dos endereços IP. Embora a função de um servidor DNS seja simples (fornecer os endereços IP relacionados com cada nome de domínio), a configuração está longe de ser intuitiva, de forma que teremos um capítulo inteiro dedicado ao tema.

Continuando, a partir do momento em que você tem um servidor diretamente conectado à Internet, surge a necessidade de protegê-lo usando um firewall. O servidor Linux pode, então, desempenhar também a função de border firewall, ou seja, um firewall colocado entre a rede local e a Internet, destinado a protegê-la de acessos externos.

No Linux, temos a opção de manipular a configuração do firewall diretamente, através de regras do Iptables. Além de fechar portas e controlar o tráfego, o firewall pode ser usado para inúmeras outras funções (tais como o bloqueio de sites), como veremos em detalhes no capítulo 3.

Temos aqui um exemplo de script simples de firewall que poderia ser expandido com as dicas que veremos ao longo do livro:

# Compartilha a conexão, disponível na interface eth1:
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

# Permite o acesso dos micros da rede local, ligados na interface eth0:
iptables -A INPUT -i eth0 -j ACCEPT

# Permite que o servidor seja acessado remotamente via SSH (porta 22):
iptables -A INPUT -p tcp –dport 22 -j ACCEPT

# Permite pacotes transmitidos através da interface de loopback
iptables -A INPUT -i lo -j ACCEPT

# Bloqueia conexões nas demais portas, protegendo o servidor:
iptables -A INPUT -p tcp –syn -j DROP

Como pode ver, ele segue uma lógica simples, começando com o carregamento do módulo “iptable_nat” (que expande os recursos do firewall, adicionando o suporte a NAT) e a ativação do suporte ao encaminhamento de pacotes. A partir daí, são usadas 5 regras de firewall, que compartilham a conexão, permitem o acesso da rede local, permitem o acesso remoto via SSH e bloqueiam as demais conexões.

Embora a função principal do firewall seja proteger os micros da rede interna, é possível também criar exceções, criando regras de encaminhamento (port forwarding) de forma a direcionar acessos em determinadas portas para micros dentro da rede local. Isso abre uma grande gama de possibilidades, permitindo que você acesse os micros remotamente, mantenha abertas as portas usadas por aplicativos específicos (como no caso dos jogos multiplayer ou do bittorrent) ou mesmo que disponibilize um servidor web.

Um dos usos mais comuns para o port forwarding é o acesso remoto, que permite a você acessar seu micro de trabalho e rodar aplicativos, mesmo enquanto está em transito. Antigamente, rodar aplicativos remotamente era muito lento (pergunte para alguém das antigas, que já tenha tentado usar o PC Anywhere via modem), mas, hoje em dia, existem tecnologias de compressão e cache muito eficientes, que realmente permitem rodar aplicativos gráficos confortavelmente via ADSL ou qualquer outro tipo de acesso rápido. Um dos melhores exemplos é o NX Server, que combina a segurança do SSH com um sistema bastante avançado de compressão e cache, tornando a sessão remota surpreendentemente responsível e agradável de usar, mesmo quando usado através de conexões lentas. Veremos mais detalhes sobre ele no capítulo 10:

Outra necessidade comum é configurar uma VPN, de forma a unificar duas redes distantes. A VPN pode ser usada tanto em situações em que você precise acessar a sua rede local remotamente quanto em situações onde você realmente precise unificar duas redes, como no caso de uma empresa com dois escritórios, situados em cidades diferentes; ela permite que todos os recursos da rede sejam acessados de forma segura, mesmo via Internet. No capítulo 4 aprenderemos a usar o OpenVPN, uma solução open-source bastante segura e completa, que permite que a VPN seja acessada tanto por clientes Linux quanto Windows.

Temos, em seguida, outra área essencial, que é o compartilhamento de arquivos e impressoras. Em um grupo onde várias pessoas necessitam trabalhar nos mesmos arquivos (dentro de um escritório de arquitetura, por exemplo, onde várias pessoas trabalham no mesmo projeto), é muito útil centralizar os arquivos em um só lugar, pois assim pois temos apenas uma versão do arquivo circulando pela rede, de forma que os usuários passam a automaticamente trabalhar com a versão mais recente. Em uma situação mais corriqueira, você pode usar a rede para assistir um filme ou ouvir arquivos de música que estão em outro micro, sem precisar primeiro transferir tudo para o seu.

Centralizar e compartilhar arquivos permite também economizar espaço no HD, já que, ao invés de uma cópia do arquivo em cada máquina, passamos a ter uma única cópia localizada no servidor de arquivos. Com todos os arquivos no mesmo local, manter um backup de tudo também torna-se muito mais simples.

O Windows utiliza os protocolos SMB e CIFS para o compartilhamento de arquivos e impressoras. Você ativa o “Compartilhamento de Arquivos para redes Microsoft” nas configurações da rede e, a partir daí, surge a opção “Compartilhar” nas propriedades das pastas e impressoras. No Linux, usamos o Samba, que permite tanto compartilhar arquivos e impressoras com os micros Windows da rede quanto acessar os compartilhamentos disponibilizados por eles. O servidor Samba participa da rede exatamente da mesma forma que faria um servidor Windows, exibindo os compartilhamentos no ambiente de rede e (caso configurado como PDC) autenticando os usuários:

O Samba suporta uma série de opções avançadas e incomuns, o que adiciona uma enorme flexibilidade. Por outro lado, todos esses recursos tornam a configuração um pouco mais complicada que no Windows, por isso o capítulo 5 é dedicado a explicá-la em detalhes.

Em muitas situações, é mais prático rodar todos os programas a partir de um servidor central do que ter vários PCs separados, onde você precisa instalar e configurar o sistema em cada um. Isso é útil tanto para facilitar a administração da rede quanto para aproveitar máquinas antigas, lentas demais para rodar aplicativos como o Firefox e o OpenOffice.

Dar manutenção e instalar qualquer sistema operacional em uma máquina antiga é muito mais complicado e demorado do que em um PC com mais recursos. Em muitos casos, essas máquinas acabam sendo doadas a escolas e outras instituições, mas, mesmo assim, nem sempre são aproveitadas.

Ao invés de ter o trabalho de instalar o sistema e configurar cada micro individualmente e, ainda assim, ter que conviver com um sistema limitado e lento; é possível transformar micros a partir de 486 em terminais leves, onde um servidor mais rápido executa os aplicativos e envia apenas as imagens a serem mostradas na tela para os terminais:

Isso é feito usando uma combinação de servidor de arquivos e servidor de acesso remoto, instalada através do LTSP, que veremos em detalhes no capítulo 11. Ele é uma excelente opção para a criação de laboratórios de baixo custo e de fácil manutenção.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X