CURSO ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS AUGUSTO DE QUEIROZ LIMA
AMBIENTE DE TRABALHO REMOTO COM LTSP
FORTALEZA 2009
AUGUSTO DE QUEIROZ LIMA
AMBIENTE DE TRABALHO REMOTO COM LTSP
Monografia apresentada ao Departamento de PósGraduação da Faculdade Integrada do Ceará como requisito para a obtenção do grau de especialista em Administração e Segurança de Sistemas Computacionais. Sob a orientação do Professor Oscar Thyago José Duarte Dantas Lisboa Mota, Ms.
FORTALEZA 2009
TERMO DE APROVAÇÃO AMBIENTE DE TRABALHO REMOTO COM USO DO LTSP Por AUGUSTO DE QUEIROZ LIMA
Este estudo monográfico foi apresentado no dia 03 do mês de agosto de 2009, como requisito parcial indipensável para a obtenção do título de especialista em ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS da Faculdade Integrada do Ceará, tendo sido aprovado pela Banca Examinadora composta pelos professores:
BANCA EXAMINADORA
_________________________________________________ Profº Ms. Oscar Thyago José Duarte Dantas Lisboa Mota Orientador – FIC
________________________________________________ Profº Ms. Eliseu Castelo Branco Júnior Coordenador – FIC
AGRADECIMENTOS
À minha esposa, Ivete Maia Pinheiro Lima que me cercou de incentivos e cuidados enquanto eu trabalhava. Ao juiz federal, Dr. José Parente Pinheiro, em nome da Justiça Federal no Ceará, pelo apoio necessário. Ao Ms. Thyago Lisboa Mota que apontou caminhos.
RESUMO
Esta monografia estuda a necessidade e conveniência da implantação de um ambiente de trabalho remoto, utilizando Software Livre, tendo em vista as necessidades das empresas em expansão, sejam elas públicas ou privadas, sejam elas grandes, de médio porte ou pequenas. Quando uma empresa expande seu negócio para praças outras que a da matriz, soluções de conectividade precisam ser implementadas de forma que a comunicação com suas unidades distantes seja simples, econômica, eficaz, rápida e segura, sempre com a máxima de mais produtividade com menos custos. Estabelecer filiais com estações de trabalho plugadas em servidores na matriz reduz custos de manutenção e preocupações afins uma vez que toda gerência estará concentrada em apenas um local, dispensando pessoal técnico especializado nas unidades longínquas. Este trabalho faz um estudo e levantamento do ambiente tecnológico necessário à implementação de uma solução de terminal remoto, que poderá facilmente ser adaptada para atender organizações que necessitam interligar redes em outras localidades. Palavras-chave: Remoto. Terminais. Servidor. Rede. Virtualização
ABSTRACT
This monograph examines the need and desirability of establishing a remote desktop, using Free Software in view the needs of growing companies, public or private, whether large, medium-sized or small. When a company expands its business to other places than the matrix, connectivity solutions must be implemented so that communication with its remote units is simple, economical, efficient, fast and secure, with a maximum of more productivity with less cost . Establish subsidiaries with work stations, servers connected to the matrix reduces cost of maintenance and related concerns since management is all concentrated in one place, with specialized technical staff in remote units. This work is a study and survey of the technological environment needed to implement a solution for remote terminal, which can easily be adapted to serve organizations that require interconnect networks in other locations. Keywords: Remote. Terminals. Server. Network. Virtualization.
SUMÁRIO
1 INTRODUÇÃO.....................................................................................
9
2 BREVE HISTÓRICO..........................................................................
11
3 REFERENCIAL TEÓRICO................................................................
13
3.1 Ambiente de multiterminais.................................................................
14
3.1.1 Thin client.........................................................................................
15
3.1.2 Terminal............................................................................................
17
3.1.3 Thin client X terminal.......................................................................
18
3.2 Protocolos para acessar ambientes remotos.........................................
18
3.2.1 O sistema X11...................................................................................
19
3.2.2 Citrix ICA.........................................................................................
20
3.2.3 O RDP...............................................................................................
21
3.2.4 O VNC...............................................................................................
22
3.2.5 Tecnologia NX...................................................................................
23
3.3 Solução em softwares para ambientes remotos...................................
24
3.3.1 O LTSP (Linux Terminal Server Project)..........................................
25
3.3.2 Microsoft Terminal Services.............................................................
27
3.4 Virtualização de desktop ou terminal...................................................
28
4 DESENVOLVIMENTO, ESTUDO DE CASO E PROJETO DE IMPLANTAÇÃO.....................................................................................
31
4.1 A experiência do TRF 5ª Região com Terminal Services....................
31
4.2 Segurança, gastos e recomendações com ambientes remotos.............
32
4.2.1 Considerações sobre TCO................................................................
33
4.2.2 Verificação da situação atual...........................................................
34
4.2.3 Requisitos mínimos de hardware e software.....................................
35
4.3 Implementando um ambiente de trabalho remoto...............................
37
4.3.1 Instalando o servidor local LTSP......................................................
39
4.3.2 Configurando a estação LTSP..........................................................
40
4.3.3 Instalando e configurando o servidor remoto Windows Server 2003...........................................................................................................
41
4.3.3.1 Instalando e configurando o Serviço de Terminal.............................................
42
4.4 Consideração sobre link de transmissão de dados...............................
42
4.4.1 Link para topologia ponto-a-ponto..................................................
45
4.4.2 Tecnologia MPLS..............................................................................
46
4.4.3 Tecnologia para aumento de capacidade de link.............................
47
5 CONSIDERAÇÕES FINAIS...............................................................
49
REFERÊNCIAS.......................................................................................
51
ANEXOS...................................................................................................
57
9
1 INTRODUÇÃO
A cada momento são descobertas novas tecnologias com o claro objetivo de melhorar o modo de viver humano e o mundo da computação é um dos que mais corrobora para isso, numa velocidade surpreendente, difícil por vezes de ser acompanhada pela comunidade mundial como um todo. Empresas, públicas ou privadas, que necessitam expandir seus negócios, precisam de medidas eficazes na hora de implementar sua rede de comunicação. Apesar do alto custo de uma solução completa que integrem dados, voz e até mesmo vídeo, essas soluções estão sendo estudadas pela maioria das organizações, no intuito único de inovar com simplicidade, independência tecnológica e economicidade. Por exemplo, de posse de uma boa tecnologia de videoconferência, uma grande corporação que possua várias filiais economizará grande soma em despesas relacionadas a deslocamentos, sem falar no tempo ganho e na diminuição da fadiga de seus colaboradores. Para montar uma nova unidade (filial), além do habitual suporte técnico em recursos humanos e mobiliários, de uma maneira geral, uma empresa também precisaria dos recursos computacionais para o processamento de seus dados. Pela tradição, deveriam ser adquiridos novos e completos microcomputadores, com processadores eficientes, dispositivos de armazenamento de dados e sistemas operacionais embarcados, proprietários ou não, além de uma infraestrutura de servidores para suportar e repassar toda comunicação de dados com a matriz. Entretanto, com as atuais tecnologias, entre elas a virtualização, essa mesma empresa pode dispor de recursos bem mais enxutos e baratos o suficiente para que suas máquinas servidoras permaneçam na matriz, com algum upgrade, é claro, deixando nas pontas (filiais) maquinário com um mínimo de recursos, simples e suficiente para a realização do seu negócio. Não se pode falar de simplicidade, independência tecnológica ou redução de custos sem considerar o mundo do Software Livre. E a tecnologia LTSP1 se apresenta oportuna, pois permite integrar máquinas antigas ou thin clients que se transformam em desktops quando ligados a um servidor LTSP. 1 Linux Terminal Service Project. Disponível no site oficial em: <http://www.ltsp.org>. Acesso em 10 jul. 2009.
10 Neste trabalho, abordam-se casos de sucesso e analisam-se soluções existentes no mercado, apresentam-se outras e comparam-nas, de forma a prover o maior número de informações a respeito de ambiente de trabalho remoto, que é o foco principal. Não se deterá em amiudar termos e conceitos computacionais de conhecimento corrente ou mesmo detalhar um glossário, uma vez que se estar pressupondo que quem ler este trabalho já tem convivência com o mundo da Informática. Ademais, ambiente de trabalho remoto, por si só, é um tema de razoável profundidade. Há softwares, protocolos de comunicação e tecnologias como a virtualização, por exemplo, que é apresentado neste estudo, senão exaustivamente, mas satisfatório. O trabalho está estruturado de modo que, no capítulo I, haja uma compreensão histórica dos modelos de computação adotados desde os primórdios até os dias atuais. No capítulo II, trazem-se um referencial teórico com os principais ambientes de multiterminais, protocolos para acessar a esses ambientes remotamente; soluções em software conhecidas, bem como uma visão geral sobre a virtualização e seu emprego para o caso em estudo. No capítulo III, desenvolve-se o projeto monográfico propriamente dito.
11
2 BREVE HISTÓRICO
Nos primórdios da computação, devido ao custo do hardware e a incipiente popularização do computador pessoal, o modelo empregado era o centralizado, ou seja, uma máquina de grande processamento chamada mainframe2 agregava e era totalmente responsável pelo funcionamento de outras máquinas de menor porte (vide Figura 1). Neste sistema, o mainframe oferecia processamento para centenas e até milhares de terminais conectados, diretamente ou por meio de uma rede local ou até mesmo por extensas áreas geográficas.
Com o crescimento das redes de computadores e o acesso fácil aos chamados computadores pessoais ou PCs (Personal Computers), ocorre uma mudança de paradigma, evoluindo-se para a era da computação descentralizada ou distribuída, em que o PC divide uma parcela do processamento de informações com um computador central ou servidor. A título de ilustração, ver Figura 2.
2 O termo mainframe se refere ao gabinete principal que alojava a unidade central de processamento nos primeiros computadores.
12
Mais do que a simples subdivisão de tarefas, este paradigma permite a repartição e a especialização das tarefas computacionais conforme a natureza da função de cada computador. Um exemplo típico é a chamada arquitetura cliente-servidor, onde muitos computadores clientes se comunicam com computadores servidores que nada mais são do que processos especializados na execução de certas tarefas, como cuidar de arquivos ou administrar bancos de dados. […] O cliente (browser) especializa-se em obter e apresentar páginas, enquanto o servidor especializa-se em montar e disponibilizar as páginas na rede. (SIMON, 1997)
Apesar de continuar a tendência e disseminação do uso de PCs, existem casos em que a computação centralizada ainda é a melhor opção para o negócio de uma organização ou mesmo de um usuário particular, como se vê, por exemplo, com as instituições financeiras e grandes redes de supermercados. Além disso, o mercado está-se deparando com conceitos novos como de “cloud computing” (computação nas nuvens), em que os programas computacionais estão concentrados num “Datacenter” ou Centro de Processamento de Dados e disponibilizados pela Internet, bastando apenas que o cliente possua um PC com recursos de navegação pela WEB. Há notícias de que “até mesmo a Microsoft, que dominou a era do PC, está correndo para criar uma das maiores “nuvens” do mundo, embora insista que isso vai conviver, no futuro, com as formas já existentes de computação” (WATERS, 2009). Nesse cenário de evolução e mudanças de modelo, enfatiza-se a tecnologia da virtualização, que recentemente tem merecido um maior destaque e é uma das que mais pode contribuir para o novo modelo de computação centralizada que se vislumbra em um futuro próximo.
13
3 REFERENCIAL TEÓRICO
Em razão do foco deste trabalho estar no novo modelo de computação centralizada, é feito um apanhado dos modelos de computação mais importantes, bem como uma explanação pormenorizada das tecnologias cliente/servidor, suas definições e empregos, de forma que se possa passar à prática, a partir de um satisfatório embasamento teórico. Inicia-se a explanação pela computação cliente/servidor, modelo de arquitetura surgido no início da década de 70, com o advento do microcomputador e das redes de baixo custo. Na computação cliente/servidor, um computador especializado, denominado de servidor, caracteriza-se por compartilhar recursos acessados por clientes remotos, seja por intermédio de uma rede privada ou pública, como a Internet, por exemplo. Esses recursos podem ser físicos, como uma impressora, ou serviços de uma maneira geral, como o acesso a um banco de dados, por exemplo. Ressalta-se que há vários tipos de servidores, dependendo do negócio da empresa. Para informatizar uma organização, vários serviços são indispensáveis, entre esses, correio eletrônico, tradução de nomes na Internet, segurança3, impressão em rede, serviços de diretórios e arquivos, distribuição de IP, transferência de arquivos, serviços de sítios de Internet e Intranet, bem como aplicações de comércio eletrônico, para citar as mais conhecidas. Há casos em que vários serviços podem ser aglutinados por afinidade e providos por apenas uma máquina servidora, a exemplo de um servidor contendo todas as aplicações relativas à segurança, como aplicações de Firewall, IPS e Filtro de Conteúdo WEB. A computação cliente/servidor é um modelo arquitetural já consolidado, sendo ainda um modelo bastante presente atualmente. Em contraste à computação cliente/servidor, tem-se o modelo de computação centralizada, que tem experimentado um ressurgimento nos últimos anos, sendo o enfoque deste trabalho.
3 Aqui compreendidos os serviços de Firewall, IDS, IPS, Filtro de Conteúdo WEB, Antivírus, Anti-Spam etc.
14
3.1 Ambiente de multiterminais
Regra geral, um ambiente de serviço de terminal remoto se insere no modelo de computação centralizada, em que uma máquina servidora ou computador de grande porte conecta vários microcomputadores ou terminais de baixa capacidade computacional, que carregam seu sistema operacional e as aplicações nele contidas. Quando os usuários utilizam este ambiente, a execução da aplicação dá-se no servidor, e somente informações de teclado, mouse e monitor são transmitidas pela rede. Cada estação estabelece uma sessão de trabalho remota utilizando os recursos computacionais do servidor, este concentrando todas as preocupações com segurança, atualização, manutenção etc. Conectando-se a um servidor de terminal, os usuários podem executar programas e usar recursos de rede nele, independente se nas plataformas Windows, Citrix ou de código aberto (LTSP, por exemplo). É importante, no entanto, considerar que em um ambiente de multiterminais, cada terminal é uma seção de um mesmo sistema operacional. Isto significa que não existe um real isolamento. Schäffer (2008) comenta que se um usuário de uma seção executar algum aplicativo que consuma 100% de processamento, todos os demais usuários serão afetados. Se um usuário ou aplicação executar uma operação que cause uma falha de sistema operacional, igualmente todos os usuários conectados àquele servidor serão prejudicados. Como forma de contornar estes problemas, é comum o uso da técnica de virtualização, que consiste na execução de uma ou mais máquinas virtuais ou VMs (Virtual Machines) e uma máquina física.
Uma VM pode ser entendida como uma máquina implementada por software que se encarrega de simular, total ou parcialmente, os recursos disponíveis em uma outra máquina. Ao sistema operacional que é executado em cada VM chama-se de “guest” ou convidado. Já o sistema operacional que controla a própria virtualização chamase de “host” ou hospedeiro (WOLF; HALTER, 2005).
Com o emprego das técnicas de virtualização, tem-se a possibilidade de prover o isolamento necessário entre os sistemas operacionais de cada usuário em um ambiente de serviço de terminal remoto. Ou seja, os microcomputadores agora transformados em “guest” são virtualizados e hospedados no servidor, todos no Datacenter. Desta forma, grandes
15 benefícios são obtidos como será visto mais adiante. Ao contrário da implementação do serviço de terminais tradicional, neste caso os microcomputadores não são seções de uma mesma instalação, mas sim máquinas virtuais isoladas e encapsuladas. O encapsulamento proporciona mobilidade, o que significa que as máquinas podem ser migradas, possivelmente “a quente”, ou seja, sem a interrupção do serviço, de um servidor para outro, ou, como mais comumente, de uma área de armazenamento para outra (como ocorre quando se emprega armazenamento centralizado com storage). Com o isolamento conseguido, problemas em um microcomputador não afetarão os demais, assim como uma máquina virtual nunca usará mais do que os recursos permitidos para ela de uma máquina física.
3.1.1 Thin client
Thin client é um conceito de computador em uma rede que tem pouco ou nenhum aplicativo instalado, de modo que depende exclusivamente de um servidor central para o processamento de atividades. A palavra “thin” se refere a uma pequena imagem de boot que tais clientes tipicamente requerem talvez não mais do que o necessário para fazer a conexão com a rede e iniciar um navegador web dedicado ou uma conexão de “Área de Trabalho Remota”. Para esta, no entanto, são necessárias tecnologias gerenciadoras de conexão como as ferramentas X114, Citrix ICA (Independent Computing Architecture)5, RDP6 e VMware VDI7, entre outras, que se abordará mais adiante. Vale menção aos produtos Wyse Thin Clients and Zero Clients da empresa Wyse e Sun Ray da empresa Sun Microsystems, que, como outras empresas, também apresentam soluções interessantes na utilização de thin clients na emulação de PCs configurados em servidores. O que caracteriza um thin client é a sua configuração ser mínima e suficiente para a execução de serviços remotos, sem deixar de ter processamento local. Desta forma, ele tem 4 O X11 é um protocolo inicialmente utilizado pelo projeto Xfree86 (http://www.xfree86.org/) e logo depois também pelo (http://www.x.org/wiki/). 5 Protocolo proprietário de domínio da http://www.citrix.com/ 6 O RDP foi inicialmente divulgado pela Microsoft Maiores informações no site http://support.microsoft.com/kb/186607 7 Virtual Desktop Infrastructure (Infraestrutura de Desktop Virtual). Tecnologia da empresa VMware que cria PC's virtuais, ao invés de servidores virtuais.
16 comparativamente menos recursos de processamento ou memória quando frente a computadores desktop tradicionais. Muitas vezes um think client pode nem mesmo dispor de disco rígido, sendo assim chamado de diskless. Pode-se afirmar que o thin client ainda não é bem visto pelas organizações em razão de seu custo ser comparável ao dos atuais desktops básicos, sobretudo quando se leva em conta que eles possuem apenas dispositivos extremamente necessários e singelos para interfacear com seu processamento local. Enquanto que os computadores desktop presentes no mercado trazem modernos dispositivos de leitores/gravadores de CD/DVD e maior quantidade de portas USB, entre outros recursos. No mercado eletrônico, por exemplo, pode-se encontrar um computador de mesa Celeron D430, 1.8GHz, 2GB de RAM, HD de 160GB, dispositivo DVD-RW, monitor LCD Widescreen, com Linux instalado e 12 meses de garantia. A Americanas8 oferece esse computador por R$999,00, com monitor de 15” e a Saraiva9 também disponibiliza pelos mesmos R$999,00, sendo que com monitor de 17”. Para os thin clients, no entanto, devido a sua menor popularidade, o mercado é mais seletivo, com fornecedores especializados. O produto consiste de um pequeno gabinete, sem monitor, teclado, mouse e demais periféricos. Também no mercado eletrônico encontrase a marca Wyse S10, com processador AMD Geode GX 533 (400MGz), saída de vídeo VGA (DB-15) e áudio estéreo de 16 bits full, com Fast Ethernet, uma porta serial e quatro USB, alimentação 100-240 VCA, 50/60 Hz, medindo altura de 34mm, largura de 177mm e profundidade de 121mm, rodando um sistema operacional Wyse Thin OS, suportando os protocolos RDP e ICA e garantia de 3 anos. Enquanto no Altatech 10 esse thin client é oferecido por R$934,00, no 5ti11 seu valor está em oferta por R$919,00. Nesta mesma pesquisa encontrou-se o thin client Schalter12 com um preço promocional de R$499,00. Entretanto, estudos precisam ser mais bem elaborados, pois muitos acreditam que 8 Computador Qbex, código do produto 2790371. Disponível em: <http://www.americanas.com.br/AcomProd/590/2790371>. Acesso em 19 jun. 2009. 9 Kit computador ICC. Disponível em: <http://www.livrariasaraiva.com.br/produto/produto.dll/detalhe? pro_id=2646465&PAC_ID=25369>. Acesso em: 19 jun. 2009. 10 Thin Client Wyse S10. Disponível em: http://www.altatech.com.br/product_info.php? products_id=53&osCsid=f131d8c21ccbb38a32a66a8c6aaef775> Acesso em: 19 jun. 2009. 11 Thin Client S10 902110-07L. Disponível em: <http://www.5ti.com.br/p41190-thin-clients-wyse-s10-90211007l.html>. Acesso em: 19 jun. 2009. 12 Thin Client Schalter. Disponível em: <http://www.schalter.com.br/promocao_thin.htm>. Acesso em 19 jun. 2009.
17 estão nas estações de trabalho as maiores distorções com custos da infraestrutura. No quesito consumo médio de energia, por exemplo, enquanto um thin client (conectado a 1 teclado USB, 1 mouse PS/2 e monitor) carrega em média 5,6 watts de potência, um PC13 (conectado a 1 teclado e 1 mouse PS/2, mais 1 monitor LCD) carrega em torno de 200 watts. Neste estudo, vale considerar que computadores legados também são bons candidatos para thin clients.
3.1.2 Terminal No mundo da computação, fez-se um apanhado de conceitos para descrever um terminal como sendo um dispositivo responsável pela comunicação física ou remota com um sistema de informação contido em um ou mais computadores servidores, de forma que seja uma extensão dos periféricos desses servidores. Geralmente um terminal está associado a sistemas muito simples, por vezes sem disco rígido, e cujo funcionamento depende da disponibilidade do sistema de informação. Em sistemas mais antigos consta a noção de console, com um mero monitor e teclado ligados a um comutador de consoles. Nestes casos, o utilizador estava diretamente ligado ao servidor de terminais, operando diretamente neste, como se estivesse fisicamente perante a máquina. O Colégio Militar de Brasília implementou uma solução de multiterminais baseada em Software Livre14, que merece consideração e cuja tecnologia discute-se com mais detalhes neste trabalho. Trata-se do Projeto Multilinux15. Conforme projeto interdisciplinar constante no site do Exército Brasileiro, a configuração ideal mínima para um terminal é de apenas “um Pentium 100[Mhz] com 16 MB [de RAM]” (ESCOM, [200?], p. 13).
13 No PC, o vilão no consumo de energia é o monitor. Com a substituição do LCD pelo CRT, o consumo caiu praticamente pela metade. 14 Software Livre “é o software disponibilizado, gratuitamente ou comercializado, com as premissas de liberdade de instalação; plena utilização; acesso ao código fonte; possibilidade de modificações/aperfeiçoamentos para necessidades específicas; distribuição da forma original ou modificada, com ou sem custos”. Esta definição foi adaptada de RIBEIRO, Daniel Darlen Corrêa. Software Livre na Administração Pública. Estudo de caso sobre adoção do SAMBA na Auditoria Geral do Estado de Minas Gerais. Lavras, UFLA, 2004.
15 Mais detalhes no title=Multiterminais_Ubuntu_7.04.
site
http://www.ronaldcosta.pro.br/sistemas/wiki/index.php?
18
3.1.3 Thin client X Terminal
Tanto a solução de “thin client” como a alternativa de “terminal” são indispensáveis no modelo de computação centralizada. Entretanto, conhecer a diferença entre um e outro é fundamental na hora de implementar um projeto, sobretudo quando envolver um quantitativo grande de usuários acessando simultaneamente aplicações como, por exemplo, OpenOffice, cliente de e-mail ou browser. Neste caso, o thin client ou computador legado pode ser a melhor solução, uma vez que ele traz o seu próprio sistema operacional, enquanto que o “terminal” depende do servidor para tudo.
3.2 Protocolos para acessar ambientes remotos
Há várias tecnologias e protocolos de emulação de terminal disponíveis e alguns com fortes recomendações, como é o caso dos já mencionados X11, Citrix ICA e RDP, assim como os VNC16 e a Tecnologia NX17. Têm também os Telnet18 e OpenSSH19. Vale menção especial ao sistema XDMCP20, que é o gerenciador de display utilizado pelo X. Morimoto (2008) afirma que “[o XDMCP] é um veterano entre as ferramentas de acesso remoto”. Registra-se que o Governo brasileiro fez um importante comentário com relação aos protocolos RDP e ICA, quando afirma que:
O Windows Terminal Server oferece funcionalidade similar ao Citrix, exceto por usar seu próprio protocolo, RDP. O cliente GNU/Linux para RDP é uma solução, porém, que ainda é considerado por alguns, como código beta. O RDP costumava ser 16 VNC (Virtual Network Computing) é um sistema para controle e acesso remoto de outro computador. 17 Comercialmente desenvolvida pela NoMachine (http://www.nomachine.com/) e no mundo do Software Livre desenvolvida pelo nome FreeNX (http://freenx.berlios.de/). 18 O Telnet permite acesso a qualquer máquina que esteja com seu módulo servidor ativo. Para mais informações, consultar o site oficial em http://www.telnet.org/ 19 O SSH é muito útil para comunicações criptografadas em tempo real numa arquitetura cliente/servidor. Mais informações no site http://www.openssh.com/ 20 XDMCP (X Display Manager Control Protocol). Este é o nome do protocolo de compartilhamento de desktop utilizado pelo X. Mais detalhes, consultar o site http://www.guiadohardware.net/termos/xdmcp
19 ineficiente em comparação ao ICA, porém agora a diferença é pequena, se não insignificante (GUIA LIVRE, 2005, p. 132).
Considerando o universo das tecnologias existentes, serão comentados apenas os protocolos que dizem respeito às estratégias tomadas neste trabalho.
3.2.1 O sistema X11
O X11 ou X Window System foi um sistema concebido inicialmente pelo MIT21 e que tinha como objetivo prover uma interface gráfica a computadores desktop, permitindo a interação e manipulações de aplicações que são exibidas em um monitor através da interação com um usuário, este se utilizando de dispositivos de entrada de dados como teclado e mouse. O numeral no final do “X” designa sua versão, portanto atualmente ele está na décima primeira. Desde 2004 que o X11 é mantido pela X.org22, que é responsável pela implementação do sistema, que se encontrava, quando da elaboração deste artigo, na versão X11R7.4. Diferente do Windows, da Microsoft, em que a interface gráfica é o próprio sistema operacional, nas distribuições Linux ela é apenas parte e é implementada pelo X. Vários desktops gráficos no ambiente Linux utilizam o X11 como o GNOME 23, o KDE24 e o Xfce25, para citar alguns. O X11 interessa porque foi desenvolvido no modelo cliente/servidor, para o emprego dos mecanismos que provem à interface gráfica. Seu mecanismo proporciona as ferramentas necessárias para desenhar janelas, lidar com usuários, desenhar gráficos usando cores etc. Simples assim, o sistema funciona em duas partes: um cliente que decide o que 21 MIT (Massachusetts Institute of Technology) é um centro universitário de educação e pesquisa privado localizado em Cambridge, Massachusetts, nos EUA. 22 Administrado pela X.org Fondation. Seu site oficial é: http://www.x.org/wiki/Home 23 GNU Network Object Model Environment é uma interface gráfica bastante elaborada, desenvolvida para GNU/Linux ou Unix nos termos da licença do software livre. Mais detalhes, no site oficial do GNOME: http://www.gnome.org/
24 KDE - Significa K Desktop Environment. Principal concorrente do Gnome, também é uma interface gráfica para executar aplicações em Unix. Mais informações, no site oficial do KDE: http://www.kde.org/ 25 Xfce é um ambiente de trabalho gráfico, executado sobre o sistema de janelas X em sistemas Unix e similares. Assim como GNOME, o Xfce utiliza a biblioteca GTK+ 2 para fazer a interface com o usuário, o que os tornam ligeiramente parecidos. Detalhes, no site oficial: http://www.xfce.org/
20 fazer, e um servidor que responde lendo a entrada desse cliente e desenhando na tela sua tradução gráfica. Tratando sobre a inovação do X, Meyran (2009, p. 1) afirma que:
[...] o mundo do X vive um momento de transição no qual o 3D não é mais a preocupação principal. O 2D e o 3D cada vez se misturam mais e vão sendo considerados em um nível maior do que antes, enquanto as placas de vídeo são consideradas mais como CPUs e RAMs auxiliares e que precisam de tratamento diferenciado; a enorme reformulação pela qual o projeto Xorg e seus afiliados passaram pode causar problemas de suporte, perdas de desempenho e muitas complicações agora, mas o que o novo Xorg reserva para nós no futuro vai valer muito a pena.
Dentro do sistema X11 não se pode deixar de mencionar as implementações do Xfree8626, atualmente encontrado na versão 4.8.0. Sobre o Xfree86 Butler (2004) comenta que, a partir da versão 4.4, com uma mudança na cláusula de licenciamento de algumas bibliotecas, o próprio fundador e presidente da Free Software Fontadion, Richard M. Stallman declarou o Xfree86 incompatível com a GPL, celeuma culminada com a bifurcação do projeto, em que, além do Xfree86, caminharia também o Xorg. Este, sim, totalmente de acordo com a filosofia GPL. De fato, apesar do exagero, em fóruns como o GdH.net, encontram-se informações de que “O XFree86 está sendo abandonado pelas distros Linux em favor do Xorg por causa do licenciamento de algumas bibliotecas” (FORUM ..., 2007).
3.2.2 Citrix ICA
O ICA (Independent Computing Architecture)27 é um protocolo proprietário da empresa Citrix Systems, utilizado como um padrão de comunicação entre equipamentos. Na sua origem, tornou-se rapidamente parte integrante de várias plataformas das quais destacam26 O Xfree86 é outra implementação do X Window System. Seu site oficial é: http://www.xfree86.org/ 27 O ICA permite que as informações sejam trocadas, obedecendo-se uma regra geral entendida por todos os equipamentos que fazem o seu reconhecimento. Significado disponível em: <http://support.citrix.com/proddocs/index.jsp?topic=/xenapp/ps-glossary.html>. Acesso em: 20 jun. 2009.
21 se (Kanter, 1998):
• Windows NT (32 bits); • Windows 95 (32 bits); • Windows 3.x (16 bits); • MS-DOS (texto); • OS/2 (texto); • POSIX (texto); • implementações de aplicativos X-Windows emuladas via software.
Sua principal função é permitir a exibição no cliente do resultado dos processos executados no servidor de uma forma muito eficiente e necessitando pouca taxa de transmissão da rede. “É robusto o bastante para continuar operando mesmo que a capacidade de transmissão da rede torne-se mais limitada” (MACHADO Júnior, 2006, p. 30). No site da Citrix28, encontra-se que:
[...] o protocolo ICA transforma qualquer dispositivo cliente complexo em um thin client, de forma a entregar aplicações corporativas para a ampla variedade de desktops instalados, em variadas plataformas e redes. No servidor, o ICA tem a capacidade de atender pedidos separados logicamente a partir da interface do usuário. No cliente, os usuários vêm e trabalham com a aplicação exibida na interface, sendo que cem por cento da aplicação é executada no servidor. Com o ICA, as aplicações consomem apenas 20 Kbps de largura de banda, ou seja, um décimo da disponibilidade de rede e largura de banda disponível. Isto lhe permite operar consistentemente, mesmo através de uma conexão discada ou conexões ISDN, como no uso de aplicações móveis, por exemplo, que geralmente requerem uma quantidade muito menor de interatividade e, por conseguinte, velocidades de conexão a um nível tão baixo como 9,6 Kbps, como as disponíveis nas redes móveis, tais como GSM. O ICA pode, portanto, prover o desempenho exigido para executar o Citrix MetaFrame hospedados nas aplicações (CITRIX, jul. 2005, p. 1).
3.2.3 O RDP
O RDP (Remote Desktop Protocol)29 é uma ampliação da família T-12030 de 28 Tradução nossa. 29 ENTENDENDO o RDP. In: Artigo. Microsoft, out. 2005. Disponível em: <http://support.microsoft.com/kb/186607/pt-br>. Acesso em: 21 maio 2009. 30 T.120 é uma recomendação ITU (International Telecommunication Union = União Internacional de Comunicações) que descreve uma série de protocolos de comunicação multiponto para suporte a aplicações e serviços compartilhados em tempo real. Disponível em: <http://www.itu.int/rec/T-REC-T/e>. Acesso em: 21
22 protocolos que, por padrão, se utiliza da porta 3389, implementada na camada 5 (aplicação) da pilha TCP/IP, permitindo a conexão remota de um computador cliente a um servidor de terminal. É muito comum a implementação do RDP em ambiente Windows, sendo o protocolo empregado por um cliente para acessar a um serviço de terminal da Microsoft (referência). Atualmente o RDP encontra-se na versão 6.0. Há que se distinguir o RDP da Microsoft do Software Livre RDESKTOP, este disponível para todas as distribuições Linux. Necessitando de recursos de banda e pouca latência, ele permite a leitura de entrada de dados, via teclado e mouse, por exemplo, como se o cliente fosse o próprio servidor. A própria Microsoft, a seu respeito, explica que:
Os dados de um aplicativo ou de um serviço são transmitidos por meio das pilhas do protocolo, sendo seccionados, direcionados a um canal [...], criptografados, quebrados automaticamente, enquadrados, empacotados no protocolo de rede e finalmente endereçados e enviados ao cliente. Os dados retornados funcionam da mesma maneira, porem em ordem inversa, sendo que o pacote é eliminado de seu endereço, quebrado automaticamente, descriptografado e assim por diante, até que os dados sejam apresentados ao aplicativo para serem utilizados (MICROSOFT, 2005).
3.2.4 O VNC
O VNC (Virtual Network Computing)31, na realidade, é um sistema que permite o acesso remoto a interfaces gráficas de maneira independente de plataformas. Baseado no protocolo RFB (Remote Frame Buffer)32, o VNC tem sido amplamente empregado como solução de suporte remoto de estação de trabalho. Oliveira et al. (2006, p. 27) afirmam que:
maio 2009. 31 VNC (Computação em Rede Virtual). Os autores do VNC podem ser encontrados no site: http://www.realvnc.com/index.html 32 RFB - Protocolo padrão para acesso remoto das aplicações em VNC.
23 o protocolo RFB permite somente a transmissão de quadros, sem possibilidades de transmissão de som ou arquivos, ou mesmo de uma forma segura de transmissão. Mas o protocolo aberto dá a liberdade de implementações específicas dele de proverem tais recursos, através da utilização de outros protocolos paralelamente.
Ilustra-se este artigo com uma solução simples e prática de terminais inteligentes, baseada em servidores VNC, desenvolvida pela UFMG, Faculdades Doctum e Prodabel (UFMG, 2005). Mais informações poderão ser obtidas junto ao Projeto LibertasBR Telecentro33. Lá há um manual de instalação de telecentros, descrevendo os passos para instalação do sistema LibertasBR em um servidor de telecentro, do servidor de autentição OpenLDAP e da solução de Etherboot (LibertasBoot), além de tratar sobre os serviços de impressão, sobre o monitoramento de rede e sobre o funcionamento dos telecentros. Comparando com o sistema X, Morimoto desaconselha o VNC para uso em terminais remotos, quando diz:
Se você colocar uma imagem de 64x64 pixels como papel de parede, ladrilhada para que ocupe a tela toda, o VNC simplesmente capturará a tela toda e enviará como se fosse uma única imagem. O X por sua vez será mais esperto e enviará a imagem de 64x64 apenas uma vez, junto com uma instrução dizendo que ela deve ser replicada na tela toda. Ou seja, a comunicação é muito mais rápida e o uso da rede brutalmente menor, a ponto de você ter terminais funcionais mesmo numa rede de 10 megabits (MORIMOTO, 2002).
3.2.5 Tecnologia NX
A tecnologia NX tem basicamente as mesmas funcionalidades do Windows Terminal Services. Comercialmente desenvolvida pela NoMachine34 e no mundo do Software Livre desenvolvida pelo nome FreeNX, esta tecnologia consente ainda conjugar o parque informático com tecnologias já existentes, como RDP ou RFB, possibilitando obter os mesmos ganhos de desempenho. No site do Guia do Hardware35, encontra-se que:
33 http://www.libertasbr.org.br 34 http://www.nomachine.com/ 35 http://www.guiadohardware.net/
24 o FreeNX Server é uma espécie de sucessor do VNC. Ele é mais prático de usar e utiliza uma forma mais inteligente de compressão dos dados. Ao invés de simplesmente tirar screenshots da tela e comprimir as imagens, como faz o VNC, ele abre uma seção remota do X (como ao usar o XDMCP), onde são transmitidas as instruções e pixmaps usados para montar a tela que será exibida no cliente. Estes dados são compactados usando o Zlib e encriptados usando o SSH, o que torna o FreeNX mais rápido e mais seguro que o VNC. […] A principal limitação é que o servidor em si existe apenas em versão Linux, já que o objetivo é acessar máquinas Linux remotamente. Se você precisar acessar uma máquina Windows, o VNC ainda é a melhor opção (GUIA..., [200?]).
Fuzzer (2008) comenta que, enquanto o VNC é uma simples aplicação que permite controlar desktops remotamente, o FreeNX fornece um desktop independente e totalmente funcional sem bloquear, para uma única sessão, o computador acessado. A tecnologia NX é apropriada, sobretudo para acessar máquinas remotas por meio de conexões lentas, vez que utiliza um sistema de cache, que armazena para uso posterior os pixmaps (ícones, por exemplo) já carregados, evitando que eles precisem ser retransmitidos a todo momento. Como eles formam a maior parte dos dados transmitidos (os demais são instruções para montar as janelas e posicionar seu conteúdo), isso faz com que após alguns minutos a latência fique menor e a velocidade comece a ficar melhor. Esse cache é reutilizado ao acessar a mesma máquina de outra vez. Appel (2007) diz que o protocolo NX é bem mais eficiente que o XDMCP, uma vez que este exige muita vazão de dados e o NX, com compactação, é extremamente eficiente, funcionando bem com até 40kbps. Oliveira ([200?], p. 13) descreve que “todo programa X já é auxiliado pelo NX, mesmo programas Windows”.
3.3 Soluções em softwares para ambientes remotos
Há diversos softwares de arquitetura cliente/servidor, proprietários ou livres, que implementam o acesso remoto entre computadores, com tecnologia de criptografia ou não, seja para o objetivo de efetuar uma manutenção, seja para se utilizar dos recursos existentes em outra máquina na rede local (LAN), na WAN ou até mesmo na Internet. Dentre os
25 proprietários mais conhecidos, citam-se o DameWare36, o Ultra VNC37, o RealVNC38, o LogMeIn39, o iRemotePC40 e o CrossLoop41, entre outros. Como o foco está em softwares que trabalham no modo cliente/servidor para multiusuários, com ênfase em Software Livre, será analisada a tecnologia LTSP, mesmo sabendo que há outras soluções baseadas em GNU/Linux para clientes magros, tais como: PXES42, X2go43, ThinStation44, DRBL45 e BooteX46.
3.3.1 O LTSP (Linux Terminal Server Project)
O Projeto Servidor de Terminal Linux, mantido por vários desenvolvedores no mundo, é um conceito que permite conexões gráficas entre os clientes e o servidor usando o protocolo XDMCP (ver item 3.2), por meio da utilização de uma ou mais máquinas servidoras de grande capacidade computacional para centralizar o processamento de aplicações mais pesadas, sendo que na parte do cliente usa máquinas bem mais modestas para console, de forma que simples estações de trabalho carregam e processam as informações dentro de um servidor, conforme a Figura 3.
36 37 38 39 40 41 42 43 44 45 46
http://www.dameware.com/ http://www.uvnc.com/ http://www.realvnc.com/ https://secure.logmein.com/ https://www.iremotepc.com/ http://www.crossloop.com/ PXES Universal Linux Thin Client é um projeto de Software Livre da COD Technologies Ltd para uso em thin clients. Mais informações pode ser obtido no site http://pxes.org/ X2go é um projeto para uso em clientes magros. Para obter mais informações acessar o site http://www.x2go.org ThinStation é um pequeno sistema operacional para thin clients com suporte aos protocolos: Citrix ICA, NoMachine NX, 2X ThinClient, Windows Terminal Services(RDP), Cendio ThinLinc, Tarantella, X, Telnet, tn5250, VMS terminal e SSH. Para mais informações, consultar o site http://www.thinstation.org/ DRBL (Diskless Remote Boot in Linux) é uma solução para gerenciar a implantação do GNU/Linux em muitos clientes. Seu site oficial é: http://drbl.sourceforge.net/ BooteX. Distribuição de GNU/Linux bootável que cabe num único disquete de 1.44Mb. Mais informações no site oficial http://bootex.sarava.org/Main/HomePage
26
Na aplicação típica do LTSP, a máquina servidora processa serviços como Distribuição Dinâmica de IP, Autenticação de Usuários, Compartilhamento de Diretórios e Sistema de Arquivos Raiz, além de aplicações do OpenOffice, navegador Firefox, cliente de e-mail Thunderbir, entre outras. O LTSP surgiu para otimizar recursos de hardware em projetos de escolas, empresas e organizações afins, de forma que possam utilizar computadores, com um mínimo de capacidade local, para rodar aplicações como se fossem máquinas abastadas. Uma vez que seu ambiente é predominantemente multiusuário, o projeto deu substancial importância à utilização de thin clients, também como forma de implantar desktops Linux em grande escala, de forma que o usuário, ao trabalhar, não note qualquer diferença entre um desktop comum e um thin client, sem falar no fato de que esse usuário será o mínimo possível perseguido por problemas de vírus. Conforme artigo de Castro (2006) sobre o futuro do LTSP, foram diagnosticadas várias necessidades de adicionamentos de novas funcionalidades ao projeto, com a utilização pelo maior número de distribuições Linux, de forma que a tendência é disponibilizar no thin client, além das atuais integrações USB, serial e PS/2, o maior número de interfaces gerenciáveis como dispositivos de gravação de CDs, por exemplo, funções essas já disponíveis na última versão 5. Passando para o lado sociológico da Informática, o LTSP é também uma excelente
27 oportunidade para que se viabilize a tão proclamada inclusão digital, ou seja, a disponibilização dos recursos computacionais como a Internet e outras tecnologias digitais para camadas da sociedade que não têm possibilidades para tal. A implantação de telecentros com thin clients é uma alternativa que vem se multiplicando, fazendo com que a informação seja cada vez mais difundida e, assim, elevando o valor da cidadania.
3.3.2 Microsoft Terminal Services
Basicamente os Serviços de Terminal da Microsoft possibilitam aos usuários estabelecer um sistema centralizado que lhes permite fornecer acesso rápido e seguro por meio de aplicações Microsoft RDP (também conhecidas como “Conexão de Área de Trabalho Remota”), a partir de qualquer local conectado por rede local, WAN ou até mesmo pela Internet. Quando os usuários executam uma aplicação com os Serviços de Terminal, a execução dessa aplicação se dá no servidor e somente informações de teclado, mouse e monitor são transmitidas pela rede. Os usuários podem apenas ver suas sessões individuais, gerenciadas de maneira transparente pelo sistema operacional do servidor, e permanecem independentes de qualquer outra sessão de cliente (Technetbrasil. [200?], p. 35).
Com o lançamento do Windows Server “Longhorn” (também chamado de Windows Server 2008) e do software Conexão de Área de Trabalho Remota 6, a Microsoft anuncia várias novas funcionalidades (Technetbrasil. [200?], p. 36), entre essas: • Fazer usuários se conectarem a um servidor de terminal e fazer o computador remoto se parecer mais com a experiência da área de trabalho Windows Vista local do usuário; • Garantir que os dados de monitor, teclado e mouse passados através de uma conexão remota não sejam afetados de maneira adversa por ações que exijam muita largura de banda, como grandes tarefas de impressão; • Permitir que usuários com uma conta de domínio efetuassem o login uma vez, usando uma senha ou smart card, e então obtenham acesso a um servidor de terminal, sem a necessidade de apresentar as credenciais novamente.
28
3.4 Virtualização de desktop ou terminal
Empurrada pela evolução da tecnologia e pela força produtiva do capitalismo, os microcomputadores hoje chegam ao mercado com recursos computacionais geralmente desnecessários para um usuário comum e mais desnecessários ainda para uma organização em que seus funcionários utilizam apenas duas ou três aplicações, incluindo um navegador web, e não precisam de grande volume de memória de massa local, vez que todos os dados são armazenados no storage corporativo. É visando à diminuição dessa ociosidade de processamento, espaço em disco etc. que a técnica da virtualização se apresenta importante. Garfinkel (2003, p. 3) destaca resumidamente quatro vantagens, a saber: o isolamento de cada máquina virtual, sendo que o processamento de uma não afeta a outra; a compatibilidade com sistemas operacionais variados; o pequeno overhead introduzido pela camada de virtualização e o gerenciamento da segurança simplificado. Na virtualização de desktops ou terminais, em vez da utilização de várias máquinas com seus sistemas operacionais respectivos, utiliza-se apenas um computador servidor de grande capacidade, abrigando máquinas virtuais como se fossem simples arquivos, cada qual com seus serviços e aplicações próprias, sendo que essas máquinas virtuais compartilham recursos de hardware como CPU, memória RAM, disco rígido e rede. Daí encontram-se no mercado expressões como VDI (Virtual Desktop Infrastructure), da empresa VMware, que nada mais é do que uma solução que garante uma capacidade de administração e controle de nível empresarial com uma experiência familiar ao usuário, e DaaS (Desktop as a Service), esta, seguindo a mesma direção da VMware, uma das mais recentes novidades da empresa Citrix. Assim, compartilha-se da opinião de Ezequias Sena, diretor administrativo e comercial da Online Brasil (www.onlinebrasil.com.br), noticiada por Valério (2009), quando enumera 8 principais vantagens da virtualização de desktop, a saber:
1. Cada usuário tem seu próprio ambiente de trabalho, podendo instalar ou deletar aplicações quando e se necessário; 2. Todo ambiente pode ser customizado com diferentes aplicações sem comprometer os demais usuários;
29 3. Mesmo aplicações que não podem ser compartilhadas por diversos usuários têm condições de ser instaladas; 4. Capacidade de acessar desktops remotamente e com segurança; 5. Acesso seguro e rápido a periféricos como impressoras e scanners; 6. Maior economia no espaço de armazenamento, nos custos gerais de datacenter, no resfriamento e no espaço físico; 7. Interação mais ágil com o mercado, permitindo apresentar produtos, serviços e projetos com mais rapidez; 8. Possibilidade de fazer backup regularmente e restaurar dados em
poucos instantes.
Jamil (2001, p. 387), em seu trabalho “Repensando a TI na empresa moderna”, traz argumentos favoráveis na virtualização de desktop quando aponta “[...] o custo administrativo, […] e a segurança, uma vez que apenas o servidor teria de ser protegido contra ataques e invasões”. De acordo com a avaliação feita pela empresa Add IT Solution ([200?], p. 7), reproduz-se um quadro de vantagens dos seguintes quesitos (quadro 1 abaixo):
Quesitos
Desktop Virtual
Desktop Tradicional
Usabilidade
Executa aplicativos tradicionais. Executa aplicativos tradicionais.
Segurança
Ponto único de segurança, no Pontos distribuídos de segurança servidor, o usuário não executa em todos os desktops. nada que ele não tenha direito.
Gerenciamento
Ponto único, fácil de gerenciar e Requer gerenciamento administrar, somente no descentralizado e grandes equipes servidor. de TI.
Disponibilidade
Sempre disponível, aumento de Alto downtime, usuários com produtividade dos usuários que baixa produtividade e altos custos poderão acessá-lo até pela para a empresa. Internet.
Redução de custo no momento zero do projeto e economias de TCO (Total Cost of Ownership) até 75% nos gastos com aquisição, administração e manutenção. Quadro 1 – Quadro de vantagens da virtualização de desktop
Rápida depreciação, alto custo de aquisição e elevado custo de manutenção, baixa vida útil aproximadamente 3 anos.
A tecnologia de virtualização compreende, em síntese, o processamento de uma ou mais máquinas virtuais hóspedes (guest) em uma única máquina física hospedeira (host). A idéia do ambiente de trabalho virtual remoto equivale à utilização dos recursos
30 computacionais de uma máquina servidora instalada numa LAN, WAN ou mesmo na Internet, que emula várias outras máquinas virtualizadas, de forma que cada usuário pode acessar remotamente sua própria e única VM ou então multiusuários podem abrir sessões para uma única VM, neste caso ilustrado pela tecnologia do Microsoft Terminal Service. Diferente dos Serviços de Terminal da Microsoft, as VMs podem não ser seções de uma mesma instalação, mas sim máquinas virtuais isoladas e encapsuladas. O encapsulamento proporciona mobilidade, o que significa que as máquinas podem ser migradas a quente de um servidor para outro, ou, atualmente também, de um storage para outro. No isolamento, problemas em uma máquina não afetarão as demais, assim como uma VM nunca usará mais do que os recursos permitidos para ela de uma máquina física. Mota (2009) afirma que
há de se destacar o aumento do grau de flexibilidade e disponibilidade nos ambientes que empregam virtualização. Uma VM pode, por exemplo, ser facilmente copiada de uma máquina física para outra na presença de falhas, por exemplo. Imagens de VMs em produção podem ser salvas e restauradas sempre que se fizerem necessárias. Em uma outra situação, recursos computacionais podem ser alocados sob demanda para uma determinada VM em momentos de maior carga. Finalmente, ambientes de teste podem facilmente ser configurados usando-se as facilidades da virtualização.
Portanto, optando pela virtualização de desktop ou terminal, sabe-se que a estratégia maior é o compartilhamento de recursos computacionais do host, objetivando os inegáveis benefícios da redução de custos com a infraestrutura.
31
4 DESENVOLVIMENTO, ESTUDO DE CASO E PROJETO DE IMPLANTAÇÃO
Como já foi apresentada à base teórica que referencia este trabalho, passa-se ao desenvolvimento do estudo sobre “Ambientes de Trabalho Remoto” propriamente dito, de forma a prover toda documentação necessária para sua implementação em ambientes semelhantes ao encontrado na Justiça Federal, neste momento a implantação de novas Varas Federais no interior do Estado do Ceará. E, para isso, inicialmente, será útil a experiência do Tribunal Regional Federal da 5ª Região (TRF5), que utiliza essa solução para atender aos desembargadores federais nas suas sessões de plenário.
4.1 A experiência do TRF5 com Terminal Services
A experiência do TRF5 (Tribunal Regional Federal – 5ª Região) não é propriamente em um ambiente de WAN, mas serve de referência para este estudo. Conforme documento técnico disponibilizado no Anexo A deste trabalho, o TRF5, embora empregue como arquitetura predominante a cliente/servidor, teve uma experiência de uso do modelo de computação centralizada, baseado em Terminal Services. Para esta configuração, foi empregada uma máquina servidora IBM xSeries336, com processador Intel Xeon 3.60GHz/800MHz de 2 núcleos, 2 Gb de RAM, com Sistema Operacional Windows Server 2003 instalado, utilizando 40 licenças de terminal services, e 40 equipamentos thin clients HP Compact da série t5000, todos compilados com a já citada distribuição Thinstation47. Cada pequeno thin client traz configurado um processador/velocidade: VIA Eden 400 Mhz; 32 MB Flash; placa de rede 10/100 Base T; emulação original do protocolo X; dimensões com suporte: H230 x W100 x D195 m; portas: 4 USB 2.0, 1 serial, 1 paralela, 1 PS/2, 1 RJ-45; e consumo de energia: 100-240 VAC, 50-60 Hz.
47 Na ocasião a versão utilizada foi a 2.2. Enquanto este artigo estava sendo desenvolvido, encontrou-se o Thinstation na versão estável 2.2.2.
32 Apesar das várias possibilidades do Thinstation, o sistema foi configurado para rodar apenas um processo, que até agora se mostra eficiente e muito simples: quando o thin client é ligado, ele faz o download da imagem do sistema operacional, inicializa e em seguida abre uma sessão Windows Terminal Services (RDP) com o Windows Server 2003, por meio de boot pela interface de rede (etherboot), conforme ilustra a Figura 4. Daí em diante, os usuários têm acesso à aplicação que conecta o Banco de Dados do Tribunal e podem efetuar seus acessos normalmente como se cada um tivesse sua própria e única máquina.
O referido Anexo 1 apresenta um singelo passo-a-passo a respeito da instalação e configurações efetuadas no TRF5, tanto no servidor LTSP quanto nos thin clients.
4.2 Segurança, gastos e recomendações com ambientes remotos
Nesta seção, passa-se às preocupações com o ambiente que se está estudando, no caso, a instalação de uma unidade remota da Justiça Federal no Ceará, que pode ser tanto na capital como no interior do Estado. Serão feitas considerações sobre aspectos de segurança, seleção, implantação e uso, levantamento da situação atual, previsão de problemas futuros,
33 requisitos e avaliação de hardware, recomendações técnicas, custos, benefícios e viabilidade, entre outras.
4.2.1 Considerações sobre TCO
Para uma corporação, toda nova implementação tem que ser baixa geradora de TCO, apesar de nem sempre isso ser possível, sobretudo na área de Informática. “O TCO [...] não é um modelo exato, mas uma sugestão de princípios que permitirá à organização usuária de Informática fazer a montagem de um sistema de consumo de recursos, que poderá resultar na priorização de medidas estratégicas no sentido da redução de custos” (JAMIL, 2001, p386). Quando o negócio de uma organização fica cada vez mais dependente da informática e o investimento nessa área é inevitável, as estimativas financeiras e estudos de custo precisam ser muito bem avaliados. Magalhães (2007) adverte que
as decisões tomadas sem compreender e ter em conta os custos existentes de propriedade ou o custo da mudança tendem: 2. a ser subotimizadas; 3. a fazer com que os custos apenas passem de uma área para outra da organização; 4. a subestimar os recursos; 5. a não perceber os benefícios de forma antecipada (MAGALHÃES, 2007, p. 83).
Afinal, devem-se ter cuidados quanto aos objetivos a serem atingidos, uma vez que “a tecnologia, por si só, nada garante: é preciso também assegurar que os recursos sejam usados de forma produtiva pelas pessoas [...]”(ALBERTIN, 2004, p. 76).
34
4.2.2 Verificação da situação atual
Esta verificação considera que há uma decisão da administração em se prover implantar uma nova unidade institucional, Varas Federais mais especificamente, e que cabe ao Núcleo de Tecnologia da Informação (NTI) a responsabilidade de apresentar a solução técnica correspondente. Parte-se do pressuposto de que a solução de thin clients é a que melhor atende essa demanda. Para uma melhor visão da situação atual, Meireles (2004, p. 443) aponta alguns questionamentos importantes que devem ser ponderados. O primeiro diz respeito à “quem faz o que, quando e por quê?”. Assim, a função de fazer recai sobre a Justiça Federal no Ceará, como instituição que provê todos os recursos necessários, e a seu Núcleo de TI, que vai, na prática, gerenciar e acompanhar a instalação das estações de trabalho na nova unidade recém-criada, cabendo exclusivamente ao Núcleo de TI o estudo e implementação de toda infraestrutura necessária para o funcionamento das máquinas servidoras e suas 50 (cinquenta)48 estações clientes, trabalho esse que vai desde a passagem do cabeamento lógico até as configurações e orientações de manuseio. A resposta relativa à questão “o que acontece com a informação?” leva em conta que haverá dados armazenados na unidade situada no interior do Estado do Ceará, com fluxo local, e dados armazenados no Datacenter remoto da Justiça Federal, situado na matriz da instituição, na capital do Estado, estes com fluxo crítico, em razão de dependerem exclusivamente da qualidade do serviço de link contratado. A maior parte do processamento será local, porém as informações dos Sistemas Processuais49 deverão ser alimentadas em tempo real (on line) nos Bancos de Dados instalados no Datacenter, por meio de aplicações servidoras também rodando no Datacenter, o que responde à terceira questão “qual o fluxo das informações: entrada, processamento, armazenamento e saída?” No entanto, para responder à “qual a quantidade ou volume de dados em 48 50 estações é a média do quantitativo de equipamentos clientes necessários em um Fórum Federal no interior do Estado, por exemplo. Normalmente são instaladas 1 Vara Federal e 1 Juizado Especial Federal, cada qual com 25 estações em média. 49 Estamos falando dos Sistemas batizados de TEBAS e CRETA. O primeiro ainda em papel, mas com suas movimentações efetuadas virtualmente em Banco de Dados, e o segundo totalmente virtual.
35 transações e nos arquivos?”, pode-se disponibilizar no servidor LTSP um espaço em disco rígido suficiente para dar um bom espaço de manobra para rotacionar o armazenamento de dados sem preocupações por, no mínimo, cinco anos, ao mesmo tempo que leva a responder a questão “qual o espaço necessário para armazenar esses arquivos e programas?” Após a coleta dos dados necessários, estima-se um espaço de, no mínimo, 160GB na área de armazenamento. Para responder a última questão sobre “com que rapidez, quando a informação é necessária e onde?”, será disponibilizada uma rede Ethernet50 na unidade local, que terá uma conexão WAN de 2Mbits de banda com a matriz, utilizando otimização de tráfego pela tecnologia MPLS51, sendo esta atualmente uma das que melhor trabalha o transporte de dados com tratamento QoS52, não obstante haverem soluções no mercado capazes de otimizar tráfego de dados utilizando pequena capacidade de banda, como é o caso do produto chefe da empresa Expand Network53.
4.2.3 Requisitos mínimos de hardware e software
Com os atuais recursos tecnológicos, é indiscutível considerar que o servidor LTSP deve ter robusta consistência de hardware, podendo se valer de uma configuração mínima de um processador Dual ou Quad Core54, para dar cabo das inúmeras requisições 50 Tipo de rede local usada para comunicação de dados a alta velocidade (10 ou 100 Mbit/s) entre computadores. Informação disponível em: <http://w3.ualg.pt/~tpanago/glossario.htm>. Acesso em: 17 jun. 2009. 51 (MultiProtocol Label Switching) Protocolo que tem por objetivo a otimização de níveis de desempenho de uma rede de computadores (tipicamente uma rede IP), organizando recursos de maneira mais eficiente para maximizar a probabilidade de entrega de uma informação. Disponível em: <http://www.portaldigitro.com.br/pt/tecnologia_glossario-tecnologico.php?index=M>. Acesso em: 17 jun. 2009. 52 (Quality of Service) Qualidade de serviço. É um parâmetro de eficiência do serviço acertado previamente em contrato pela operadora de serviços de telecomunicações e o cliente. Por exemplo, disponibilidade de 99,9% significa que a conexão contratada não pode ficar mais de 0,1% (quase nove horas num ano) fora do ar, ou sem serviço, sob pena de multa ou outro tipo de ressarcimento. O QoS pode ser medido também em variáveis como tempo de atraso dos pacotes ou velocidade média da conexão. Disponível em: <http://www.portaldigitro.com.br/pt/tecnologia_glossario-tecnologico.php?index=M>. Acesso em: 17 jun. 2009. 53 Mais informações no seu site oficial da empresa disponível em http://www.expand.com/ 54 Um processador Dual ou Quad (com 2 ou 4 núcleos de processamento) oferece grande vantagem na utilização de muitos terminais, uma vez que o servidor pode executar aplicativos separados em cada processador, com mais tarefas simultâneas, eliminando o gargalo em momentos que muitos usuários resolvem utilizar aplicativos pesados ao mesmo tempo.
36 concomitantes provenientes das estações como, por exemplo, requisições de gravação em disco, abertura de aplicativos e fluxo de dados. No entanto, esses recursos elevados são necessários apenas no servidor. Vale dizer que o mercado hoje banaliza a oferta de processadores quando nivela um simples desktop com uma configuração de alto nível. O uso da Unidade Central de Processamento (CPU) em aplicações corriqueiras como editar um texto ou acessar a Internet é sempre modesto e é justamente isso que acontece com a maioria dos processadores de estações espalhados pelas empresas mundo afora: utilizam, no máximo, 10% de sua capacidade, conforme observação de Morimoto (2008) no Capítulo 9 do seu livro “Rede e Servidores Linux”. Neste mesmo capítulo, Morimoto ratifica que “o desempenho (subjetivo) ao utilizar um terminal ligado a um servidor com um processador de 3.0 GHz, compartilhado entre 20 terminais, é quase sempre melhor que utilizar um desktop com um processador (de desempenho por clock similar) de 1.5 GHz.” Do lado da memória RAM55, adotou-se 1GB só para o servidor, com acréscimos neste de 128MB para cada terminal incluído, apesar de haver divergências de alguns administradores que indicam acréscimos que variam de 50MB até 256MB para cada estação adicional. Não obstante isso, Carvalho (2005) explica que o uso da RAM é bastante racional, ou seja,
os aplicativos são carregados na memória do servidor apenas uma vez, independentemente do número de usuários que o utilizarem simultaneamente. O sistema carrega o aplicativo uma vez, e depois passa a abrir diferentes seções do mesmo programa, o que faz com que o carregamento seja bem mais rápido e o uso da memória seja otimizado. (CARVALHO, 2005, p. 20).
Quanto ao desempenho e capacidade da memória de massa ou memória em disco rígido (HD), ressalta-se apenas que o servidor LTSP armazenará todos os dados produzidos pelos terminais, precisando, então, de bastante espaço para isso. Um sistema RAID 56 se apresenta como opção interessante e recomendamos o RAID 5 (ou superior) visto que há ganho de desempenho no acesso aos dados, além da redundância e recuperação em caso de
55 Random Acces Memory (Memória de Acesso Aleatório). 56 RAID vem de Redundant Array of Inexpensive Disk, que resumidamente significa agrupamentos de discos rígidos em um sistema único, para proporcionar maior desempenho e integridade dos dados.
37 falha em um dos discos. Independente disso tem-se a infraestrutura de backup, que replica diariamente todos os dados para o armazenamento central na matriz. Assim, no Quadro 2 abaixo, se se considerar 50 terminais atrelados ao servidor, tem-se a seguinte configuração geral mínima:
Equipamentos
CPU
RAM
Qt.
Tipo
S.O.
Serviços básicos
Servidor c/2 placas 2 núcleos 7424MB57 de rede
1
Físico
Linux Ubuntu 8.04
Servidor c/1 placa de rede
2 núcleos 2048MB58
1
Virtual
Thin Client
400MHz
128MB
50
Físico
Linux
Monitor LCD 15”
---
---
50
Físico
---
Saída de dados
Teclado
---
---
50
Físico
---
Entrada de dados
Mouse
---
---
50
Físico
---
Entrada de dados
Switch Ethernet 10/100, 24 portas
---
---
3
Físico
---
Distribuição acesso
LTSP, DHCP, XDMCP, RDP
TFTP,
NFS,
Windows Sistema TEBAS, Editor de texto Server 2003(8) Word e Impresão para 25 acessos Estação de trabalho
dos
pontos
de
Quadro 2 – Quadro das configurações mínimas de hardware e software para ambientes remotos com LTSP
4.3 Implementando um ambiente de trabalho remoto
Para o ambiente de trabalho remoto desta monografia, adotou-se o LTSP, considerando seu fluxo de dados em uma rede mista LAN e WAN, conforme topologia desenhada na Figura 5.
57 1024MB do Servidor + 6400MB das estações de trabalho (128MB x 50 = 6400MB). 58 Fabiano de Santana afirma que cada sessão ativa com o Terminal Services utiliza 16 Megabytes de RAM. Fazendo a conta para 25 usuários, teremos 25 x 16 = 400. Ou seja, numa configuração mínima, precisaríamos de 400MB. (Nosso estudo sugere 2048MB) Disponível em: <http://www.juliobattisti.com.br/fabiano/artigos/terminalservices.asp>. Acesso em 23 jun. 2009.
38
Mais complexo que o adotado pelo TRF5, os thin clients deverão disponibilizar, no mínimo, os seguintes serviços de código aberto: Editor de texto, planilha eletrônica e apresentação, a exemplo da suite OpenOffice; Navegador para acesso aos sistemas Web e Webmail institucional, a exemplo do Firefox; Acessórios como calculadora, reprodutores de vídeos e músicas; Cliente para acesso ao Terminal Server, disponibilizado como um atalho na Área de Trabalho e configurado para abrir uma sessão Windows Terminal Services (RDP) com o Windows Server 2003, emulando numa máquina virtual no Datacenter da Justiça Federal no Ceará. É por meio deste Windows Server que o usuário terá acesso ao Sistema Processual TEBAS e ao processador de texto Microsoft Word, este vinculado a arquitetura do primeiro.
39
4.3.1 Instalando o servidor local LTSP
Para o sistema operacional, apesar da possibilidade de rodar em diversas distribuições Linux, escolheu-se a Ubuntu, ramificação da família Debian, por ter sua comunidade colaborativa muito forte e atuante, com aplicativo desenvolvido exclusivamente para ambiente LTSP, o que o eleva a um patamar de distribuição ideal para este caso. No geral, para uma implementação LTSP, Mcquillan (2005) considera estritamente necessários os serviços DHCP, TFTP, NFS e XDMCP, assim como três momentos para sua construção, a saber: • Instalação dos utilitários LTSP • Instalação dos pacotes dos clientes LTSP • Configuração dos serviços necessários ao LTSP Verificou-se que há ainda necessidade de configuração de scripts, telas, ícones, aplicativos, impressora, permissões e personalização, além de testes de performance em rede WAN, entre outros ajustes. Na instalação do sistema Ubuntu 9.04-alternate-i386 há o modo opcional “Instale um servidor LTSP”, em que é possível instalar todo o sistema LTSP. O melhor disso é que, diferente das outras distribuições, já fica tudo configurado, até a montagem dos dispositivos móveis dos terminais, sendo necessário apenas efetuar algumas alterações mínimas. Pela simplicidade dessa implementação na distribuição Ubuntu e considerando farto material de apoio, a exemplo de tutoriais escritos Morimoto59 (2008) e Silveira60 (2008), mais outro tutorial de instalação rápida constante na comunidade Ubuntu61, assim como documentação do Ubuntu 9.04 para Thin Clients62 e Manual do Edubuntu63, discriminados 59 Tutorial disponível em: <http://www.gdhpress.com.br/redeseservidores/leia/index.php?p=cap9-1>. Acesso em 07 jul. 2009. 60 Artigo disponível em: <http://www.vivaolinux.com.br/artigo/LTSP-5-no-Ubuntu-8.04/>. Acesso em 24 jun. 2009. Ver também o site: <http://audiovisualpro.blogspot.com/search/label/LTSP%20Ubuntu%208.04>. Acesso em 24 jun. 2009. 61 Site oficial do Ubuntu Community Documentation. Disponível em: <https://help.ubuntu.com/community/UbuntuLTSP/LTSPQuickInstall>. Acesso em 01 jul. 2009. 62 Ubuntu Desktop 9.04 para Thin Clients – Versão 1. Disponível em: <http://portal.educacao.mg.gov.br/webdtec/index.php? option=com_docman&task=doc_download&gid=3231&Itemid=441>. Acesso em: 01 jul. 2009. 63 Site oficial do Edubuntu Handbook. Disponível em: <http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/>. Acesso em 01 jul. 2009.
40 sucintamente no Anexo B os passos necessários para a implementação deste servidor, bem como alguns procedimentos de hardening64.
4.3.2 Configurando a estação LTSP
Em se tratando de LTSP, praticamente tudo é configurado no servidor, do processo de boot, passando pela tela de boas-vindas até a gravação dos dados. Entretanto, nas estações de trabalho, há procedimentos importantes a fazer como, por exemplo, fazer o seu mapeamento na rede e configurar suas opções de boot. Neste caso, explica-se a configuração da estação de trabalho propriamente dita, escolhida para trabalhar como thin client. Lembrando que há thin client com e sem disco rígido, podendo o boot ser iniciado a partir de um Disquete (Floppy), Pen Drive (Flash-disk), CD ou pela rede por meio do Etherboot, Syslinux ou PXE. Dar boot diretamente pela placa de rede oferece uma praticidade muito grande, pois basta apenas mudar uma opção no setup65 da placa-mãe ou pressionar uma tecla durante o boot ao em vez de ter que manter um drive de disquete ou CD em cada micro. O tipo de boot deverá ser o mais transparente possível, de forma que o usuário, na interação com o sistema, apenas se preocupe com ligar ou desligar seu computador. Num processo de aquisição do thin client, o próprio fornecedor já deve entregar o equipamento devidamente configurado com o tipo de boot solicitado, razão porque no Anexo C detalha-se apenas alguns procedimentos que podem ser implementados pelo administrador, sem a interferência de terceiros, utilizando solução de Software Livre, a exemplo dos conhecidíssimos projetos booteX66 e Thinstation67, este utilizado no TRF5 para dar boot no servidor LTSP por meio da rede, pelo protocolo Etherboot. 64 O conceito de hardening caracteriza medidas de ajuste e ações que visam proteger um determinado sistema de invasores. 65 interface de configuração do BIOS (Basic Input/Output System). 66 Minidistribuição GNU/Linux bootável que cabe num único disquete de 1.44Mb. Disponível no site oficial: <http://bootex.sarava.org/Main/HomePage>. Acesso em 02 jul. 2009. 67 Thinstation é uma pequena e mas poderosa distribuição GNU/Linux. Disponível no site oficial: <http://www.thinstation.org/>. Acesso em 02 jul. 2009.
41
4.3.3 Instalando e configurando o servidor remoto Windows Server 2003
O servidor remoto estará rodando um sistema operacional Windows Server 2003, mais especificamente o modelo “Enterprise”, e sua instalação padrão encontram-se devidamente documentada no Anexo D deste artigo. Após a instalação padrão, passa-se imediatamente para a fase de ajustes, com atualização do sistema operacional e providências de hardening, em que deverão ser implementadas medidas de instalação de algum Service Pack mais recente, além das configurações básicas de segurança e enxugamento do servidor, de modo a não deixar nada executando que não seja estritamente necessário. Rodrigues (2008) aponta 6 ações típicas de hardening, a saber:
•Remoção de logins, usuários, programas e serviços desnecessários; •Aplicação de patches nos programas e no kernel do sistema operacional; •Fechar portas da rede; •Adoção de sistemas de detecção e prevenção de intrusão; •Firewalls; e •Scripts de hardening. No Anexo E, apresentam-se as principais medidas que devem ser tomadas nesse processo de ajuste, ressaltando que essas medidas já vêm sendo praticadas pelo pessoal de Tecnologia da Informação (TI) da Justiça Federal no Ceará. Destaca-se o processo de criação de contas de usuários, que deve cercar-se de todas as prevenções possíveis. O simples fato de se limitar à conta de um usuário inibe a ação de vários exploits (falhas), que necessitam de privilégios elevados para explorarem falhas remotas. Com o conhecimento do usuário e senha do administrador, por exemplo, um intruso pode fazer total estrago no servidor. Para prevenir isso, basta utilizar senhas com alto grau de complexidade. Para reforço e aprofundamento no quesito segurança, indica-se o Centro e Orientação de Segurança da própria Microsoft68.
68 http://www.microsoft.com/brasil/security/guidance/prodtech/WindowsServer2003.mspx
42 4.3.3.1 Instalando e configurando o Serviço de Terminal
O Terminal Server (TS) é um serviço que permite o acesso e administração de um servidor Windows, por meio de qualquer computador cliente, trabalhando em modo gráfico como se nele estivesse. O TS utiliza o protocolo RDP (Remote Desktop Protocol) 5.2, que tem muitas melhorias em relação à versão 5.1 do Windows 2000 Server. Ele pode ser acessado apenas no modo administrador ou no modo de aplicação. Neste o servidor pode ser usado para executar aplicativos remotamente, tornando-se extremamente útil quando os clientes não possuem hardware suficiente para processar determinadas tarefas. Cada conexão efetuada com o servidor Terminal Services cria uma nova sessão, ou seja, vários clientes podem se conectar ao servidor simultaneamente, sendo que um não interfere no trabalho do outro. No Anexo F, há os detalhes de instalação do TS.
4.4 Considerações sobre link de transmissão de dados
O projeto desenvolvido é um típico caso de uma unidade organizacional que estará totalmente dependente de uma rede WAN para seu funcionamento e todas as atenções se voltam agora para o meio de transmissão e comunicação de dados a ser adotado, pois, diferente de uma LAN, na WAN o tráfego é naturalmente mais lento, uma vez que a distância inevitavelmente provoca latência. Moreira (2009), em seu editorial, empresta a opinião de Francisco Camargo, Presidente da empresa CLM, quando comenta que “a WAN é o 'patinho feio' das empresas, custando uma fortuna por mês e não é tão bem administrada quanto as LANs.” Antes da escolha do link de transmissão de dados, a equipe de TI precisa definir bem as exigências técnicas e comerciais da sua organização. Tal definição é peça-chave numa negociação satisfatória com as operadoras e na comparação das propostas. A TI precisa definir, por exemplo, se vai utilizar uma rede simples ponto-a-ponto, interligando a unidade
43 remota apenas com a matriz, ou se vai precisar de uma rede com roteamento simultâneo, interligando a unidade com a matriz e outras unidades. Conforme Gartner Group69: fontes a serem acessadas (bancos de dados, aplicações, Intranets, Internets etc.), velocidade máxima e média de transferência de dados (de e para os pontos em questão), velocidade mínima a ser garantida pela operadora em qualquer circunstância (de e para os pontos em questão), latência (demoras, pausas admissíveis), disponibilidade, taxas de erro, abrangência geográfica, tempo médio de reparo, requisitos de segurança, suporte ao usuário (help desk) e serviços de instalação, configuração e reparos. Enfim, é preciso fazer um levantamento o mais completo possível das carências das máquinas a serem interligadas pelas conexões de banda larga, porque máquinas, sem as carências satisfeitas, funcionam mal ou não funcionam. Sem um estudo mais aprofundado, a expectativa é ajudar na escolha da tecnologia de comunicação de bytes a ser adotada na solução de acesso entre redes remotos ponto-aponto, entre elas a Frame Relay70, ATM71, ISDN72, com enfoque especial ao roteamento MPLS73, todas disponibilizadas por muitos provedores de comunicação digital, que as consideram também como redes determinísticas (que dá ao cliente, de ponta a ponta, um circuito dedicado e exclusivo), deixando claro que os objetivos de uma rede de comunicação é tornar disponíveis aos seus usuários todos os aplicativos, dados e outros recursos, independente de sua localização física. Sendo cabeado ou não, um bom link de comunicação precisa garantir a interconexão dos pontos de acesso remoto, com altas taxas na transmissão, por meio de um serviço de comunicação digital integrado para tráfego de pacotes de dados (textos, elementos 69 A Gartner Group (sediada nos Estados Unidos) considera-se uma empresa líder mundial em assessoria na área de tecnologia da informação. Mais informações no site oficial em: <http://www.gartner.com/>. Acesso em 08 jul. 2009. 70 Encontramos a definição de frame relay como “um protocolo público de chaveamento por pacotes para redes de longa distância (WAN), que provê conectividade entre redes locais. Seu nome implica controle de quadros por uma rede entre dois sites.” (GALLO, Michael A. e HANCOCK, Willian M., 2003, p. 425) 71 ATM é sigla para Assynchronous Transfer Mode (Modo de Transferência Assíncrono). Tecnologia que integra a transmissão de dados (voz e vídeo), por meio de fibras óticas ou satélite, com taxas de transferência de até 2,4 GBps. Baseia-se no envio da informação dividida em pequenas unidades de tamanho fixo (53 bytes) e formato padronizado denominadas células. Disponível em: <http://www.dicweb.com/aa.htm>. Acesso em 07 jul. 2009. 72 ISDN é sigla para Integrated Services Digital Network. Ou seja, é uma rede de serviços integrados digitais que utiliza uma rede telefônica, habilitando uma taxa de transmissão de até 128 Kbps por meio de dois canais de 64 Kbitis/s. Disponível em: <http://www.saoinformatica.com.br/dicweb/>. Acesso em: 07 jul. 2009. 73 Multi Protocol Label Switching é uma arquitetura de comunicação muito mais eficiente que as convencionais e tem sua especificação na RFC 3031.
44 gráficos, som e vídeo), por meio de tecnologia de controle da Qualidade de Serviço diferenciada (QoS) e Acordo de Nível de Serviço (ANS), utilizando o protocolo TCP/IP, com a otimização de níveis de desempenho, organizando recursos de maneira mais eficiente de modo a maximizar a probabilidade de entrega de uma informação. O ideal seria contratar um serviço garantindo limites de disponibilidade, latência e perda de pacotes, conforme Quadro 3 abaixo:
Índices
Valores limites contratados para circuitos remotos
Disponibilidade
≥ 99,50% (maior ou igual a noventa e nove vírgula cinco por cento)
Latência
< 100ms (menor que cem milissegundos)
Perda de pacotes
< 10ˉ7 (menor que dez elevado a menos sete)
Quadro 3 – Quadro de valores limites de disponibilidade, latência e perda de pacotes
Onde: • Disponibilidade é o tempo em que cada circuito está ativo, ou seja, o serviço deverá suportar uma rede de transmissão de alta capacidade que possua um índice de disponibilidade igual ou superior a 99,5% (noventa e nove vírgula cinco por cento) do serviço para o encaminhamento do tráfego gerado pela empresa contratante, medido por mês de utilização; • Latência é velocidade de comunicação entre os pontos remotos. Pode ser entendida também como o tempo que os dados levam para atravessar um sistema. Seus valores não devem chegar a 100ms, sob o risco do usuário não conseguir interagir com o sistema em uso; • Perda de pacotes é a taxa entre os bits transmitidos e os bits com erros mostrados por meio de ferramenta própria para diagnóstico. Pacotes são transmitidos por um determinado sistema (que pode ser um roteador ou um servidor) e recebidos por outro sistema integralmente ou com determinado percentual de perdas. Em função do negócio da empresa e de seus recursos é que se poderá desenhar a melhor forma de se estabelecer uma rede de comunicação para seu sistema informatizado com alto grau de confiabilidade e desempenho, podendo até ser inserido um adendo para link
45 de contingência, como ocorre em muitas instituições financeiras que necessitam operar ininterruptamente. No caso específico deste projeto, basta apenas um link de comunicação determinística de 1Mbit, se possível utilizando tecnologia de otimização de WAN.
4.4.1 Link para topologia ponto-a-ponto
O modelo ponto-a-ponto refere-se a um rápido compartilhamento de recursos em uma determinada rede e tem a ver com pontos fechados, na verdade nós que se comunica com exclusividade, sem abertura para outros nós, o contrário do que ocorre com a Internet, por exemplo. Nada melhor que a tecnologia frame relay para atender a um cenário assim. Pimenta et al. (2003) dizem que o frame relay visa diminuir o tempo de processamento das células, além de usar técnica de comutação rápida de pacotes, desconsiderando uma grande parte do cabeçalho da célula original X.2574. O uso do frame relay subentende, também, uma qualidade boa na infraestrutura cabeada (com o uso crescente das fibras ópticas) e alto grau alcançado pela tecnologia de transmissão digital. Outra abordagem interessante é que num link para uma topologia ponto-a-ponto não há risco de invasão por outras redes, uma vez que isso é configurado pelo provedor por meio de tabelas de roteamento que amarram o endereçamento dos nós, conforme Figura 6 abaixo:
74 X25 é um conjunto de protocolos padronizados pela ITU (União Internacional de Telecomunicações) para redes de longa distância e que usam o sistema telefônico ou ISDN como meio de transmissão. A transmissão dos pacotes de dados é realizada por meio de um serviço orientado a conexão, garantindo assim a entrega dos dados na ordem correta, sem perdas ou duplicações. Disponível em: <http://www.redes.usp.br/conteudo.asp? assunto=24&formato=geral&secao=tecnologias>. Acesso em 08 jul. 2009.
46
4.4.2 Tecnologia MPLS
Em meio à necessidade de garantia de controle de fluxo, detecção de erro, administração no sequenciamento de quadros e confirmações de transmissão de pacotes IP é que a tecnologia MPLS desponta com a mais eficiente frente às demais. Em uma rede IP, por exemplo, os roteadores funcionam como distribuidores de pacotes ou pontos de triagem entre as estações (ver Figura 7). Se não houvesse um meio de marcar, classificar e controlar esses pacotes, o processamento das diferentes categorias de pacotes ficaria comprometido.
47 Gallaher (2001) explica que, após entrar numa nuvem MPLS, os pacotes são marcados com etiquetas especiais, a fim de designar diferentes classes ou prioridades de serviços. Os roteadores especialmente chamados de LER (Label Edge Routers) fornecem essa função de rotular, que funciona da seguinte forma: na entrada do pacote IP, o LER analisa para determinar se o pacote deve ser rotulado, após o que um banco de dados associa o endereço de destino do rótulo e garante sua entrega a seu destino. Assis (2002) afirma que o MPLS é
um padrão que foi feito com base em diversas tecnologias similares desenvolvidas por diferentes fabricantes. […] é referido como sendo uma camada intermediária entre as camadas 2 e 3, “do padrão OSI” (grifo nosso), fazendo com que estas se “encaixem” melhor.
A vantagem de uma rede MPLS é que ela elimina múltiplos roteadores, firewalls e administração de TI em locais remotos, uma vez que coloca o controle e gestão de toda a rede em um centro único, geralmente a sede da instituição ou empresa. A única desvantagem é que seu custo ainda é muito elevado se comparado as tecnologias de comunicação ponto-a-ponto oferecidas pelo mercado. Enquanto que um determinado link WAN frame relay de 1Mbit, interligando uma matriz e sua filial, é comercializado por R$2.500,00 (Dois Mil e Quinhentos Reais), os custos de uma rede MPLS para os mesmos locais chegam a R$6.300,00 (Seis Mil e Trezentos) pelo lado da filial; mais R$10.900,00 (Dez Mil e Novecentos) pelo lado da matriz, esta entrando agora como circuito concentrador75.
4.4.3 Tecnologia para aumento de capacidade de link
Melhorar o desempenho de uma rede de computadores é o objetivo perseguido por todo administrador de Informática que se preze. Otimizar os recursos de uma WAN por meio de aceleração de link, compressão de dados e QoS já é a superação desse sonho, 75 Conforme Proposta Comercial do provedor Oi (TNL PCS S/A), datada de 30de junho de 2009.
48 considerando que muitos dos problemas de uma WAN encontram-se no processo de comunicação entre seus roteadores (nós). Independente da tecnologia MPLS, há produtos no mercado para isso, a exemplo dos oferecidos pelas empresas Expand76, Peribit/Juniper77, Riverbed78, Silver Peak79, Blue Coat80 e assemelhadas. Utilizando hardware (com “appliance”81) ou aplicativos em software, essas soluções podem ser usadas entre WANs ou interagindo WAN com desktop. Para sua implementação, é preciso apenas verificar sua conveniência e recursos disponíveis.
76 77 78 79 80 81
Site oficial disponível em: <http://www.expand.com/>. Acesso em 08 jul. 2009. Site oficial disponível em: <http://www.juniper.net/us/en/>. Acesso em 09 jul. 2009. Site oficial disponível em: <http://www.riverbed.com/index.php?cnt=1>. Acesso em 09 jul. 2009. Site oficial disponível em: <http://www.silver-peak.com/>. Acesso em 09 jul. 2009. Site oficial disponível em: <http://www.bluecoat.com/>. Acesso em 09 jul. 2009. Equipamentos pré-configurados para executar uma atividade específica dentro de um sistema.
49
5 CONSIDERAÇÕES FINAIS
Ambiente de trabalho remoto com Linux Terminal Server Project é uma das mais oportunas soluções tecnológicas encontradas hoje para empresas, escolas e organizações afins, não só as em expansão, mas também aquelas que estão começando do zero. Nos Capítulos I e II, foram estudados os termos e concepções tecnológicas relacionadas a ambientes remotos, com um olhar na experiência do Tribunal Regional Federal da 5ª Região, inclusive discutindo a oportunidade da virtualização, que hoje está sendo utilizada tanto para servidores como para desktops. Observou-se que o crescimento da rede mundial de computadores, com seus milhares de recursos disponíveis em tempo real e o tempo todo, também corrobora para a adoção cada vez maior das técnicas de acesso remoto, quando, por meio de pequenos dispositivos de hardware como notebooks, netbooks82, smartphones etc., se tem acesso a poderosos recursos de edição de texto e imagem, planilhas eletrônicas, calculadoras de todos os tipos, correio eletrônico, entre muitos outros serviços, além de farto espaço para guardar trabalhos e dados, todo esse processamento realizado em servidores ao redor do planeta e oferecido gratuitamente, bastando apenas que o usuário tenha em mãos um pequeno dispositivo e comunicação de banda larga. Até as preocupações de segurança ligadas a ataques de softwares maliciosos (malware) e lixo eletrônico (spam), por exemplo, deixam de ser preocupação do usuário. Como tratado no Capítulo III, a solução LTSP é um reflexo dessa facilidade mundial, em que apenas um servidor torna-se o eixo central das atenções, tanto do administrador da TI como dos usuários finais, estes interagindo com o servidor por meio de equipamentos singelos (aproveitando, inclusive, aqueles considerados obsoletos), com apenas conhecimentos básicos em Informática. As facilidades de uma implementação LTSP são tamanhas que já há distribuição Linux totalmente customizada para isso, como ocorre hoje com a Ubuntu9.04-alternate-i386, bastando uma infraestrutura de rede adequada para suportála. Os anexos deste trabalho se propõem a ajudar nisso.
82 Netbook é um termo novo e designa um computador móvel de menor capacidade que um notebook padrão.
50 De tudo isso, entende-se que são inúteis para a maioria das organizações os cada vez mais poderosos computadores de mesa, cujos recursos passam a gerar problemas de segurança e exigências de manutenção que inclui desde a troca de peças até pessoal técnico capacitado para seu acompanhamento, o que eleva desnecessariamente o TCO dessas organizações. Não se está falando de empresas ou até mesmo setores de determinadas empresas que tem seu escopo na criação e desenvolvimento de aplicações e softwares, que necessitam de muito recurso de hardware para isso. Neste estudo nos dirigimos somente àquelas organizações ou setores organizacionais que, definitivamente, necessitam de poucos recursos computacionais para realizarem seus objetivos, como é o caso da Justiça Federal no Ceará. Assim, espera-se que este trabalho possa contribuir e se tornar uma opção legítima para qualquer Administrador que se interesse e patrocine sua implantação.
51
REFERÊNCIAS
ALBERTIN, Alberto Luiz; MOURA, Rosa Maria de (Org.). Tecnologia da informação. São Paulo: Atlas, 2004.
APPEL, Daniel. Computação leve: reduza o peso da informática no seu orçamento. PC & Cia. São Paulo, a. 6, n. 71, 2007.
ASSIS, Martin Seefelder de. MPLS. In: Artigo. UFRJ, 2002. Disponível em: <http://www.gta.ufrj.br/grad/01_2/mpls/>. Acesso em: 06 jul. 2009.
BENEFÍCIOS do Desktop Virtual: o que é virtualização de desktop corporativo. Add IT Solution, [200?]. Disponível em: <http://www.addit.com.br/imagens/Beneficios%20do %20Desktop%20Virtual.pdf>. Acesso em: 11 maio 2009.
BUTLER, Timothy R. Stallman responds to XFree86 License. In: Artigo. Ofb.biz, fev. 2004. Disponível em: <http://www.ofb.biz/safari/article/297.html>. Acesso em: jun. 2009.
CARVALHO, Alexandre J. L. Figuerêdo de. LTSP – Linux Terminal Server Project e a inclusão digital. In: Monografia. Minas Gerais: UFLA, 2005, p. 20. Disponível em: <http://www.ginux.ufla.br/files/mono-AlexandreCarvalho.pdf>. Acesso em: 02 jul. 2009.
CASTRO, Jorge O. Everything Linux and Open Source: the future of the Linux Terminal Server Project. In: Archive. Feature: Enterprise Applications. Linux.com, 2006. Disponível em: <http://www.linux.com/archive/feature/57310>. Acesso em: 27 maio 2009.
CITRIX Independent Computing Architecture (ICA) client on Nokia 9210 (Citrix_Nokia_Whitepaper.pdf). In: Article. Citrix, jul. 2005, p.1. Disponível em: <http://support.citrix.com/article/CTX15279>. Acesso em: 12 maio 2009.
ENTENDENDO o RDP. In: Artigo. Microsoft, out. 2005. Disponível em: <http://support.microsoft.com/kb/186607/pt-br>. Acesso em: 21 maio 2009.
52 ESCOM. Linux Terminal Service Project. In: Projeto Interdisciplinar do Curso S-49 Especialização para Sargentos Manutenção de Equipamentos de Tecnologia da Infomação. [200?]. Disponível em: <http://www.escom.ensino.eb.br/cursos/s49/pi/pi_ltsp.pdf>. Acesso em: 14 maio 2009.
FREENX. In: Termos técnicos GdH. Guia do Hardware.net, [200?]. Disponível em: <http://www.guiadohardware.net/termos/freenx>. Acesso em: 26 maio 2009.
FUZZER, Ivan Brasil. Acesso remoto com o FreeNX. Ubuntero, 2008. Disponível em: <http://www.ubuntero.com.br/?p=545>. Acesso em: 12 jun. 2009.
GALLAHER, Rick. An introduction to MPLS. In: Tutorial. Converge Network Digest, Set. 2001. Disponível em: <http://www.convergedigest.com/Bandwidth/archive/010910TUTORIAL-rgallaher1.htm>. Acesso em 06 de jul. 2009.
GALLO, Michael A.; HANCOCK, Willian M. Comunicação entre computadores e tecnologias de rede. Thomson Learning, 2003, p. 425.
GARFINKEL, Tal et al. Terra: a virtual machine-based platform for trusted computing. Association For Computing Machinery, 2003. Disponível em: <http://www.stanford.edu/~talg/papers/SOSP03/terra.pdf>. Acesso em: 21 maio 2009.
GUIA Livre. Referência de migração para software livre do Governo Federal. Grupo de Trabalho Migração para Software Livre (Org.). Brasília, 2005. Disponível em: <https://www.governoeletronico.gov.br/anexos/guia-livre-versao-1.0>. Acesso em: 09 jun. 2009.
GUIA do revisor do Windows Server Longhorn Beta 3: serviços de terminal. In: Artigo. Technetbrasil. [S.l]: [200?]. Disponível em: <http://www.technetbrasil.com.br/artigos/longhorn/GuiaWindowsServerLongHornBeta3BRZ.pdf>. Acesso em: 27 maio 2009.
JAMIL, George Leal. Repensando a TI na empresa moderna. Rio de janeiro: Axcel Books do Brasil. 2001.
53 KANTER, Joel P. Understanding thin-client/server computing. Microsoft Press, Redmond, Washington, 1998.
MACHADO Júnior, Ademir V. Servidores de terminais remotos: da teoria à prática. Santa Catarina: SOCIESC, 2006. Disponível em: <http://ist.sociesc.com.br/cursos/bsi/TrabalhoDeDiplomacao/TD-AdemirJunior-20062.pdf>. Acesso em: 10 jun. 2009.
MAGALHÃES, Ivan Luizio. Gerenciamento de serviços de TI na prática: uma abordagem com base na ITIL. São Paulo: Novatec, 2007.
MCQUILLAN, James A. LTSP − Linux Terminal Server Project – v. 4.1. LTSP.org. 2005, p. 9. Disponível em: <http://ltsp.sourceforge.net/documentation/ltsp-4.1/ltsp-4.1-ptbr.pdf>. Acesso em: 17 jun. 2009.
MEIRELLES, Fernando de Souza. Informática: novas aplicações com microcomputadores. 2. ed. São Paulo: Person Education do Brasil, 2004.
MEYRAN, Mitch. The X Window innovation: welcome to the new Xorg. Tradução Roberto Bechtlufft. In: Artigos. Guia do Hardware.net, maio 2009, p. 1. Disponível em: <http://www.guiadohardware.net/artigos/novo-xorg/>. Acesso em jun. 2009.
MOREIRA, Eustáquio. Acelerador torna WAN 10 vezes mais rápida. In: Editorial. Press Consult, 2009. Disponível em: <http://www.maxpressnet.com.br/noticia-boxsa.asp? TIPO=PA&SQINF=337674>. Acesso em 09 jul. 2009.
MORIMOTO, Carlos E. Configurando um servidor XDMCP. In: Tutoriais. Guia do Hardware. net, 2008, p. 1. Disponível em: <http://www.guiadohardware.net/tutoriais/configurando-servidor-xdmcp/>. Acesso em: 26 maio 2009.
______. Entendendo e dominando o Linux: configurando uma rede de terminais leves em apenas 60 minutos. GDH Press. 2002. Disponível em: <http://www.gdhpress.com.br/etdl/>. Acesso em: 09 jun. 2009.
54 ______. Terminais leves com o LTSP. In: Capítulo 9 - Redes e Servdores Linux. 2 ed. GDH Press e Sul Editores. 2008. Disponível em: <http://www.gdhpress.com.br/redeseservidores/leia/index.php?p=cap9-1>. Acesso em 07 jul. 2009.
MOTA, Oscar Thyago J. D. L. Virtualização. In: Sites.google.com. [S.l]: jan. 2009. Disponível em: <http://sites.google.com/site/thyagomota/projetos/virtualizao>. Acesso em: 29 maio 2009.
OLIVEIRA, Adilson G. Projeto NX: usando X como protocolo de integração multiplataforma. In: Notícias. BR-Linux.org, [200?], p. 13. Disponível em: <http://brlinux.org/noticias/palestra_nx.pdf>. Acesso em: 01 jun. 2009.
OLIVEIRA, André B. et al. Acesso remoto à computadores. [s.n], 2006, p. 27. Disponível em: <http://www.cesarkallas.net/arquivos/faculdade/topicos2/acesso-remoto.pdf>. Acesso em: 04 jun. 2009.
RDESKTOP: a remote desktop protocol client for accessing Windows Terminal Services, 2009. Disponível em: <http://www.rdesktop.org/>. Acesso em: 03 jun. 2009.
README for XFree86 4.8.0. In: The XFree86 Project, Inc. August 2007. Disponível em: <http://www.xfree86.org/4.8.0/README.html>. Acesso em: 27 maio 2009.
RIBEIRO, Daniel Darlen Corrêa. Software livre na administração pública. Estudo de caso sobre adoção do SAMBA na Auditoria Geral do Estado de Minas Gerais. Lavras, UFLA, 2004.
RODRIGUES, Bernardo Maia. Windows hardening. CSIRT PoP-MG. 2008. Disponível em: <http://www.csirt.pop-mg.rnp.br/docs/hardening/windows.html>. Acesso em: 18 jun. 2009.
SCHÄFFER, Guilherme. Virtualização de desktops: o que é e porque virtualizar. Virtue IT. Porto Alegre, mar. 2008. Disponível em: <http://www.baguete.com.br/blogs/post.php? id=4,149>. Acesso em: 08 maio 2009.
SILVEIRA, Lucas de Andrade. LTSP 5 no Ubuntu 8.04. In: Artigo. Vivaolinux. 2008.
55 Disponível em: <http://www.vivaolinux.com.br/artigo/LTSP-5-no-Ubuntu-8.04/>. Acesso em: 24 jun. 2009.
SIMON, Imre. Computação distribuída. 1997. Disponível em: <http://www.ime.usp.br/~is/abc/abc/node12.html>. Acesso em: 05 jun. 2009.
SITE oficial da empresa Citrix. Disponível em: <http://www.citrix.com/lang/English/home.asp>. Acesso em: 15 jun. 2009.
SITE oficial da empresa Sun. Disponível em: <http://www.sun.com/>. Acesso em: 15 jun. 2009.
SITE oficial da empresa Wyse. Disponível em: <http://www.wyse.com>. Acesso em: 15 jun. 2009.
SITE oficial do Edubuntu Handbook. Disponível em: <http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/>. Acesso em: 01 jul. 2009.
SITE oficial do projeto booteX incredible floppy. Disponível em: <http://bootex.sarava.org/Main/HomePage>. Acesso em: 02 jul. 2009.
SITE oficial do projeto Thinstation. Disponível em: <http://www.thinstation.org/>. Acesso em: 02 jul. 2009.
SITE oficial do Ubuntu Community Documentation. Disponível em: <https://help.ubuntu.com/community/UbuntuLTSP/LTSPQuickInstall>. Acesso em: 01 jul. 2009.
TELECENTROS: guia geral. Projeto LibertasBR. UFMG, 2005. Disponível em: <http://www.libertasbr.org.br/modules/wfdownloads/singlefile.php?cid=9&lid=55>. Acesso em: 25 maio 2009.
UBUNTU Desktop 9.04 para thin clients – versão 1. Disponível em: <http://portal.educacao.mg.gov.br/webdtec/index.php?
56 option=com_docman&task=doc_download&gid=3231&Itemid=441>. Acesso em: 01 jul. 2009.
VALÉRIO, Jorge Augusto. Virtualização transforma ambiente de negócios. In: Você Informa. ITWeb, 2009. Disponível em: <http://www.itweb.com.br/voce_informa/interna.asp?cod=5700>. Acesso em: 08 maio 2009.
WATERS, Richard. Os desafios da comunicação: de volta à era da computação centralizada. Tradução Mário Zamarian. Financial Times. São Paulo, Valor Econômico, Caderno: Empresas, p. B-2, 31 mar. 2009. Disponível em: <http://doclink.demarest.com.br/fds/fds.aspx?lib=BIBLIOTECA&doc=54681>. Acesso em: 08 jun. 2009.
WOLF, Chris; Halter, Erick M. Virtualization: from the desktop to the enterprise. Apress, 2005. ISBN: 1-59059-495-9.
XFREE86 e x.org. In: Fórum: resposta “angeloshimabuko”. ForumGdH.net, ago. 2007. Disponível em: <http://www.guiadohardware.net/comunidade/xfree86-org/769654/>. Acesso em: jun. 2009.
57
ANEXOS
58
ANEXO A - A EXPERIÊNCIA DO TRF5 COM TERMINAL SERVICES
Procedimento Técnico 1. Título Criação e configuração dos Thin Clients 2. Escrito por Alfredo, em 02/05/2007 3. Área de Atuação Thin Clients 4. Equipamentos afetados 40 (quarenta)Thin Clients e 01 (um) Servidor 5. Objetivos Criação de Sistema Operacional para os Thin Clients 6. Descrição da instalação A) Download feito da distribuição Thinstation, http://downloads.sourceforge.net/thinstation/Thinstation-2.2.tar.gz? modtime=1160998228&big_mirror=1. Salvar em /usr/local/src
no
site
B) Compilação do Thinstation root@maquina: # cd /usr/local/src root@maquina:/usr/local/src/# tar -xvzf Thinstation-2.2.tar.gz root@maquina:/usr/local/src/# cd Thinstation-2.2 root@maquina:/usr/local/src/Thinstation-2.2# vi build.conf C) Editar os arquivos build.conf (para configurações globais e módulos do kernel a serem carregados) e thinstation.conf.sample (para configurações específicas da sua rede, o ambiente gráfico, resolução de tela, etc.), descomentando neles os processos que vão ser usados na imagem. Descomentar de acordo com as necessidades, após o que salvar o arquivo
59 e continuar. D) A próxima etapa é gerar o arquivo com a imagem. O Thinstation gera diversos tipos de arquivos. Use de acordo com a necessidade. A pasta que encontra os arquivos gerados é /usr/local/src/Thinstation-2.2/boot-imagens. Portanto, executar o seguinte comando: root@maquina:/usr/local/src/Thinstation-2.2# ./build. E) São gerados, entre outros, os seguintes tipos de imagens: 1. ETHERBOOT: Esses tipos de arquivos são carregados através da rede no boot da máquina, lembrando que a mesma precisa ter placas de rede com suporte ao protocolo PXE. (Intel). Nesta tem 2 arquivos, são eles: thinstation.nbi e thinstation.nbi.zpxe. Para usar esses arquivos, seguir os seguintes passos: • Copiar o "thistation.nbi" e o "thinstation.nbi.zpxe" para o diretório root do seu TFTP (importante é que os 2 arquivos tem que estar na pasta root do TFTP); • Configurar no servidor DHCP, na área de "configurações especiais", "boot remoto" e preencher o campo PATH com o nome do arquivo .zpxe (thinstation.nbi.zpxe). OBS.: Esse É tipo de imagem que é trabalhada no TRF5. 2. ISO: Este tipo de arquivo é a imagem do Thinstation propriamente dita. Pode gravar um a partir desta imagem e dar boot com o mesmo na estação. F) Para gravar um CD. Num programa de gravação qualquer, selecionar: "Queimar imagem" ou similar e selecionar o arquivo "thistation.iso". ATENÇÃO: não gravar o arquivo completo "thinstation.iso" e sim a imagem dele. G) Após a geração dos aquivos com a imagem do Thinstation, vamos as configurações de SESSÃO do mesmo. O Thinstation trabalha de várias formas, são elas: a) Conexão a Terminal Services (TS): Configurar o Thinstation para que quando o mesmo dê o boot ele se conecte a um Servidor de Terminal (usado no TRF5); b) Conexão ICA: Configurar o Thinstation para conectar a uma aplicação, ou várias, que esteja publicada no MetaFrame da CITRIX; c) WEB Browser: Quando o Thistation iniciar, abrirá um WEB Browser; d) Interface Gráfica: Iniciará em um ambiente gráfico; H) Para configurar o Thinstation para alguns dos tipos de boot acima comentados, configurar no arquivo thinstation.conf. Existem dois tipos deste arquivo: a) thinstation.conf: usado somente para boot com arquivos iso ou localmente na máquina; b) thinstation.conf.network: usado com boots remotos e arquivos .zpxe (usado no TRF5) Descomentar as linhas que são necessárias para a solução que se quer implementar. Após ele pronto, copiar o mesmo para a pasta root do TFTP, ou seja, a mesma que encontram-se os arquivos "thinstation.nbi" e "thinstation.nbi.zpxe"
60 I) No TRF5 o thinstation.conf.network está como abaixo: #CONFIGURAÇÕES PADRÃO KEYBOARD_MAP=pt_br TIME_ZONE="UTC-12:30" SYSLOG_SERVER=local USB_ENABLED=On DAILY_REBOOT=On #AUTOPLAYCD=On CUSTOM_CONFIG=Off RECONNECT_PROMPT=On #CONFIGURACOES DE TELA SCREEN=0 WORKSPACE=1 AUTOSTART=On #CONFIGURACOES ICA #ICA_USE_SERVER_KEYBOARD=On #ICA_BROWSER_PROTOCOL=HTTPonTCP #ICA_SERVER=<trf5.jus.br> #ICA_APPLICATION_SET="IEMETA" #ICA_ENCRYPTION=Basic #ICA_COMPRESS=On #ICA_AUDIO_QUALITY=Low #ICA_AUDIO=On #ICA_SEAMLESS_WINDOW=Off #ICA_SMARTCARD=On #TIPO DE SESSAO ##FUNCIONOU SESSION_0_TITLE="Destro" SESSION_0_TYPE=rdesktop SESSION_0_SCREEN=1 SESSION_0_RDESKTOP_SERVER=<trf5.jus.br> SESSION_0_RDESKTOP_OPTIONS="-u <metaframe>@trf5 -p meta -a 16" SESSION_0_AUTOSTART=Off SESSION_1_TITLE="Canhoto" SESSION_1_TYPE=rdesktop SESSION_1_SCREEN=1 SESSION_1_RDESKTOP_SERVER=trf5.jus.br SESSION_1_RDESKTOP_OPTIONS="-u <metacanhoto>@trf5 -p meta -a 16"
61 SESSION_1_AUTOSTART=Off #OPCOES DE X SCREEN_RESOLUTION="1360x768 | *" SCREEN_COLOR_DEPTH="16 | 24 | *" SCREEN_HORIZSYNC="30-64 | *" SCREEN_VERTREFRESH="56-87 | 60 | 56 | 70 | 72 | 75" #SCREEN_X_FONT_SERVER=192.168.1.2:7100 #MOUSE_PROTOCOL=PS/2 #MOUSE_DEVICE=/dev/psaux MOUSE_RESOLUTION=100 # --- Advanced Options - Experts Only #X_DRIVER_NAME="mga" #X_DRIVER_BUSID="PCI:1:0:0" X_DRIVER_OPTION1="swcursor On" #SMART CARD PCSCD_CARDREADER_PORT="/dev/ttyS0" PCSCD_CARDREADER_TYPE="USB" #OPCOES DE REDE NET_USE_DHCP=On
62
ANEXO B - INSTALAÇÃO DO LTSP 5 SERVER NO UBUNTU 9.04
Procedimento Técnico 1. Título Instalação e configuração do LTSP 5 no Ubuntu 9.04-alternate-i386 2. Escrito e adaptado por Augusto de Queiroz Lima, em 1º/07/2009. 3. Área de Atuação Servidor Linux 4. Equipamentos afetados 1 (um) Servidor Ubuntu 9.04-alternate-i386 5. Objetivos Criação e configuração de um servidor LTSP para boot em thin clients 6. Descrição da instalação A seguir, os passos necessários para a instalação, a partir da instalação do sistema operacional propriamente dito: •
Instalação do servidor, com opção de boot pelo CD:
1.Pressionar a tecla “F4” e escolher a opção “Instalar um servidor LTSP”, conforme Figura 8.
63
2.A partir de agora o Ubuntu Desktop 9.04 começará a construir o ambiente do cliente e instalará os principais pacotes da distribuição, conf. Figura 9.
64 3.Criando o ambiente Thin Client: O comando ltsp-build-client já consta no script de instalação do Ubuntu-9.04-alternate-i386, que se encarrega de criar um ambiente chroot do LTSP para terminais (ver Figura 10) e funciona como se fosse um segundo sistema dentro do sistema principal. Nele é instalado o ambiente mínimo, x-window-system, ltspfsd, pulseaudio, pacotes essenciais para o boot dos terminais, eles irão carregar esse ambiente mínimo a partir da imagem de boot oferecida pelo TFTPD-HPA, razão porque precisa ser leve e enxuto. O chroot é montado basicamente no diretório /opt/ltsp. Caso ocorra algum erro, remover o diretório /opt/ltsp (# rm -rf /opt/ltsp) e rodar novamente o comando (# ltsp-build-client) até que obtenha sucesso.
•
Configuração das interfaces de rede:
4.Selecionar no menu Preferências → Conexões de Rede, conforme Figura 11, de forma que o servidor possua duas interfaces de rede: a eth0 para a rede interna (conectada aos computadores do tipo "Thin Clients") e a eth1 com acesso a rede externa (Internet).
65
•
Configurando a interface interna eth0, que funcionará conectando os Thin Clients ao servidor DHCP, conforme Figura 12. Será utilizado o endereço IP padrão, a saber: Endereço: 192.168.0.1 – Máscara de rede: 255.255.255.0 – Gateway: 0.0.0.0
66 •
O próximo passo é configurar a interface externa eth1, para acesso a outras redes locais e ou a Internet, conforme Figura 13. O endereçamento será colocado obedecendo à conveniência do administrador.
•
Ajustar as configurações do dhcp3-server:
O servidor DHCP é responsável por atribuir, aos terminais, um endereço IP na rede para que não exista conflitos e tudo funcione normalmente para as outras máquinas que eventualmente estejam ligadas na mesma rede, mas rodando um sistema operacional próprio. Para ajustá-lo, vamos editar seu arquivo de configuração /etc/ltsp/dhcpd.conf. # vim /etc/ltsp/dhcpd.conf • #
Arquivo dhcp.conf original:
Default LTSP dhcpd.conf config file.
67 authoritative; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.2 192.168.0.52; option domain-name "example.com"; option domain-name-servers 192.168.0.1; option broadcast-address 192.168.0.255; option routers 192.168.0.1; # next-server 192.168.0.1; # get-lease-hostnames true; option subnet-mask 255.255.255.0; option root-path "/opt/ltsp/i386"; # OPCAO de configuracao especifica para cada cliente host thinclient01 { # nome que o host receberá hardware ethernet 00:1E:EC:4D:D1:E4; # EXEMPLO de mac address do cliente fixed-address 192.168.0.5; # EXEMPLO de ip fixo do cliente # Se a placa de rede tem suporte a PXE if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" { filename "/ltsp/i386/pxelinux.0"; } else { filename "/ltsp/i386/nbi.img"; } } •
A range de distribuição de IP acima (marcada em vermelho) fica a critério do administrador e vai depender do quantitativo de máquinas que poderão ser conectadas. Neste caso, marca-se 50 (cinquenta) máquinas.
•
Configurando a placa de rede Default (Padrão):
Editar o arquivo /etc/default/dhcp3-server. # vim /etc/default/dhcp3-server •
Encontrar a linha onde está escrito “INTERFACES= ethx”, e alterar para a interface a qual terá a função de distribuir IP por DHCP.
•
Reiniciar o serviço de DHCP com o seguinte comando:
# /etc/init.d/dhcpd-server restart Se estiver tudo OK com a configuração do DHCP, aparecerá a seguinte resposta no terminal (Figura 14):
68
•
Ajustando o XDMCP:
Efetuar algumas pequenas alterações, editando o arquivo /etc/gdm/gdm.conf, apenas nas linhas abaixo descomentadas: # Sessão SECURITY do gdm.conf [security] ... # Configuração para o GDM aceitar conexões remotas # Se 'true' isso irá utilizar a opção '-nolisten tcp' a cada linha de comando do X. # É bom manter por padrão para utilização indevida do GDM como servidor de XDMCP, # afinal pode ser um risco de segurança permitir acesso ao X remotamente. # No caso do LTSP isto é necessário para permitir as tais conexões remotas ao GDM e # assim servir a interface gráfica! Logo atribua o valor 'false' DisallowTCP=false ... # Sessão XDMCP do gdm.conf [xdmcp] # Ativando o XDMCP, apesar de não ser muito seguro ativá-lo em uma rede, é # importante configurar o /etc/hosts.allow e /etc/hosts.deny para apenas as máquinas # conhecidas terem acesso ao XDMCP. De toda forma é mais seguro controlar o acesso # à porta 177 (porta padrão do XDMCP) através de um firewall, para evitar problemas # com maus usuários. # Leia o manual do GDM para maiores informações de segurança do XDMCP. Enable=true # Configurando a quantidade máxima de sessões XDMCP por vez. Isto pode ser
69 # entendido como a quantidade máxima de máquina que serão clientes do XDMCP. MaxSessions=50 # Para o nosso caso. •
Fechar todos os aplicativos gráficos e arquivos e reiniciar o serviço GDM, por meio deste comando:
# /etc/init.d/gdm stop •
Isto irá fechar a interface gráfica em execução. Portanto, inicializá-la novamente:
# /etc/init.d/gdm start •
Outros ajustes no XDMCP podem ser feitos pela interface gráfica, bastando iniciá-la pelo comando “sudo gdmsetup” ou “su -c gdmsetup”. No nosso caso, as alterações ficaram, conforme as figuras 15 e 16 abaixo:
Figura 15 - LTSP
70
•
Criando usuários:
Os usuários que serão utilizados pelos computadores do tipo "Thin Clients" serão criados todos diretamente no Servidor. •
Para executar esse procedimento, basta clicar no menu Administração e selecionar a opção Usuários e Grupos, conforme figura 17.
71 •
Criar usuários por meio da opção “Adicionar Contato”, conforme figura 18.
Observar para que os privilégios do usuário sejam o estritamente necessário, impedindo-o que tenha qualquer acesso como administrador do sistema. •
É importante que cada usuário tenha permissão de acesso apenas ao seu próprio diretório home, sem ter como xeretar nos arquivos nos demais. Para isso, depois de adicionar cada usuário, usar o comando “chmod -R o-rwx”, que retira todas as permissões de acesso para os demais usuários, deixando apenas o próprio usuário.
# chmod -R go-rwx /home/usuario •
Para fazer com que todos os arquivos criados daí em diante, por todos os usuários, já fiquem com as permissões corretas, adicione a linha “umask 077” no final do arquivo “/etc/bash.bashrc”.
Isso quer dizer que são tiradas todas as permissões de acesso para todos os usuários, com exceção do dono do arquivo.
72 •
Editar o arquivo "/etc/default/tftpd-hpa". Por padrão ele vem com uma linha que mantém o servidor desativado, mesmo que as demais configurações estejam corretas. Para que o serviço fique ativo, modificar a linha "RUN_DAEMON="no" para "RUN_DAEMON="yes". Alterar também a linha "OPTIONS="-l -s /var/lib/tftpboot" (que indica a pasta que será compartilhada pelo servidor tftpd), substituindo o "/var/lib/tftpboot" por "/tftpboot".
Depois da alteração o arquivo fica: #Defaults for tftpd-hpa RUN_DAEMON="yes" OPTIONS="-l -s /tftpboot" •
Para que a alteração entre em vigor, reiniciar o serviço tftpd-hpa:
# /etc/init.d/tftpd-hpa stop # /etc/init.d/tftpd-hpa start •
Por desencargo, usam-se também os comandos abaixo, para ter certeza de que ele está configurado para ser executado durante o boot:
# update-rc.d -f tftpd-hpa remove # update-rc.d -f tftpd-hpa defaults •
Para concluir a configuração, abrir o arquivo “/etc/hosts.allow” e substituir todo conteúdo do arquivo por:
ALL : 127.0.0.1 192.168.0.0/24 É essencial que a linha "ALL : 127.0.0.1 192.168.0.0/24" esteja presente, caso contrário o sistema recusa as conexões dos clientes mesmo que os serviços estejam corretamente ativados. Ao editar este arquivo, não é necessário reiniciar nenhum serviço. Não esquecer de substituir o “192.168.0.0” pela faixa de endereços da rede que for adotada. •
Personalização do Desktop
a) Quando um novo usuário é criado, o sistema usa o conteúdo da pasta “/etc/skel” como um modelo para o home, alterando apenas as permissões dos arquivos. Ou seja, se forem modificadas as configurações dentro do “/etc/skel”, todos os usuários que forem criados daí em diante já virão com as configurações desejadas; b) A forma mais prática de fazer isso é criar um login normal de usuário e se logar por meio dele na tela do Gnome (ou KDM). Remover os ícones indesejados do desktop, personalizar os ícones da barra de tarefas, removerem o monitor de bateria, monitor de rede e outros widgets desnecessários para o terminal e assim por diante.
73 c) Outra configuração importante é desativar o protetor de tela, pois protetores muito animados ativos nos terminais geram um grande tráfego na rede, prejudicando o uso dos demais terminais; d) Todas essas configurações são específicas do usuário, salvas em arquivos espalhados pelo home. É necessário mover tudo para o “/etc/skel”, fazendo com que as configurações se tornem padrão. Não esquecer de ajustar as permissões. Se o usuário usado se chama “thinclient1”, por exemplo, os comandos seriam: # rm -rf /etc/skel # cp -a /home/thinclient1 /etc/skel # chown -R root.root /etc/skel •
Reiniciar o servidor para que todas as configurações sejam assimiladas.
74
ANEXO C - INSTALAÇÃO DO LTSP 5 CLIENT DO UBUNTU 9.04
Procedimento Técnico 1. Título Criação e configuração do LTSP 5 Client no Ubuntu 9.04 2. Escrito e adaptado por Augusto de Queiroz Lima, em 02/07/2009. 3. Área de Atuação Estação Linux 4. Equipamentos afetados Thin Client 5. Objetivos Criação e configuração de um cliente LTSP para boot em thin clients 6. Descrição da instalação A seguir, os passos necessários para a instalação de duas distribuições muito conhecidas: booteX e Thinstation. 6.1. Carregando pela booteX: •
Fazer download (salvar como) da imagem do booteX do site http://bootex.sarava.org/Main/DownLoad. Há versões configuráveis e préconfiguradas para dhcp, com as resoluções 800x600x16 e 1024x768x16, mouse PS/2, servidor X com IP 192.168.0.1.
•
Copiar o arquivo bootex.img para um disquete, cd, chave usb ou até para um disco rígido.
•
Colocar o disquete no drive (ou o CD no drive, chaveiro na porta USB, etc.) e iniciar a estação. Caso o booteX não comece a rodar, verificar se sua estação está configurada
75 para procurar o sistema no disquete (ou cd, usb, disco). O booteX iniciará o cliente gráfico e, se tudo estiver bem configurado, a estação iniciará uma sessão gráfica remota. •
É possível carregar todos os parâmetros de configuração na pasta /etc/config da distro. Para isso, será preciso montar o sisteminha de arquivos contido no arquivo initrd.gz da imagem (o kernel do sistema hospedeiro precisa estar com suporte aos sistemas de arquivos minix e fat).
•
Para a montagem do sistema, na linha de comando, como root, digitar:
# mount -o loop bootex.img /mnt/bootex # cp /mnt/bootex/initrd.gz # gunzip initrd.gz # mount -o loop initrd /mnt/initrd •
Uma vez montado o sistema em alguma pasta -- /mnt/initrd neste exemplo --, criar os seguintes arquivos dentro da pasta /mnt/initrd/etc/config:
-ip: colocar o IP da máquina (caso seja dhcp, colocar simplesmente "dhcp"), -netmask: a máscara de rede (ignorar caso esteja usando dhcp) -server_address: IP da máquina que faz XDMCP -mouse: dispositivo de mouse (psaux, ttyS0, etc.) -depth: bits por pixel do cliente X (8, 16, 24) -resolution: resolução do X (640x480, 800x600, 1024x768) •
Feito isso, basta desmontar o sisteminha e gravar a imagem num disquete, CD, USB, ou disco rígido que o booteX carregará essas configurações e entrará no X automaticamente. Eis os comandos para desmontar:
# umount /mnt/initrd # gzip --best initrd # cp initrd.gz /mnt/bootex # umount /mnt/bootex
6.2. Carregando pela Thinstation. Também aqui há versões pré-configuradas e versões configuráveis. No nosso caso, precisaremos baixar a versão estável parametrizável 2.2.2. •
Fazer download do site http://downloads.sourceforge.net/thinstation/Thinstation2.2.2.tar.gz
76 •
Selecionar o diretório apropriado para descompactar o Thinstation-<version>.tar.gz que, no nsso caso, foi o /usr/local/src.
•
Antes de construir a imagem que será usada, precisamos editar o arquivo build.conf para refletir o cliente que vai acessar o servidor LTSP, conforme sugestão abaixo (seguem apenas as linhas descomentadas). Uma vez que funciona com uma configuração básica, a idéia é torná-lo tão simples quanto possível no início e, em seguida, ajustá-lo, tornando-o mais completo.
################################################ ### ---
Thinstation Build Config
--- ###
################################################ #!Hardware #!!System #!!!Bus Modules module pcm
# PCMCIA Cards
module serial
# Serial Device Support
module acpi
# Advanced Configuration and Power In-terface support
#!!!AGP Modules module agpgart
# AGP bus module for use with AGP video cards
# --- Network card modules # Especificar os modulos que precisar. Descomentamos os mais usados #!!Network module 8139too
# RealTek RTL-8139 PCI Fast Ethernet Adapter support # VERY
module forcedeth
# nForce Ethernet support
module pcnet32
# AMD PCnet32 PCI support
module sis900
# SiS 900/7016 PCI Fast Ethernet Adapter support. # Common in integrated motherboards
module via-rhine
# VIA Rhine support (both Rhine I and II). Common in # integrated motherboards
77 # Há também módulos para Ethernet 1000 Mbits, 10000 Mbits, Token Ring, PCMCIA # Network, Wireless PCMCIA Network, Wireless e Other Wireless Support #!!!PCI module snd-intel8x0
# AC97 intergrated device with Intel/SiS/nVidia/AMD # chipsets, or ALi chipsets using the M5455 Audio # Controller
#!!USB Devices module usb-hid
# Needed for USB keyboards and mice
module usb-storage
# Needed for USB-Sticks
module usb-printer
# Needed for USB-Printers
#!!Storage Devices module ide-cd
# CD-Rom Drive Support
#!!Filesystem Support # Cada dispositivo precisa de um sistema de ficheiros montado # Escolher aqueles que precisar module isofs # ISO9960 file system support for CDRoms module vfat # Fat and VFat file system support module ntfs # NTFS file system support module supermount # Supermount support for auto unmounting of # removable media ################################################# ### --- Packages to include in boot image --- ### ################################################# package xorg6vnc
# Xorg VNC Server Module. With this package you can # connect to the Thinstation client's desktop from a java # browser at "http://<TS ip>:5800
package xorg6-i810 package xorg6-nv package xorg6-sis package xorg6-vesa
# Intel 8xx integrated graphics chipsets # NVIDIA video driver # SiS video driver # Generic VESA driver, use this if you don't know # what to use # VMware SVGA video driver
package xorg6-vmware
#!!Keyboard layouts (Language/Country) package keymaps-pt_br # Portuguise-Brazil
78 #!Applications #!!Connection Package types. Choose *at least* one! package rdesktop # X RDP client for Windows Terminal Services (ver 1.5) package ica # Citrix ICA client support package firefox package flash package xpdf3 package emelfm2 package java #!!Window Managers. Choose no more than 1 window manager. # Not needed if you don't want to manage windows. #package blackbox # "Blackbox" window manager. Makes TS a light workstation. package icewm # "ICEWM" window manager. Makes TS a light # workstation. It's a little bigger than blackbox. #!!Window Manager Utils package xtdesk #!!Other services package www
#!!Miscellaneous package extra-fonts-75dpi package e3
# Adds icons to desktop # Web access to client. From a browser: "http://<IP # number>". The standard page is for general user # settings, administrative access is on port 6800.
# Basic vi like Editor
#!Parameters ######################################## ### --- Miscellaneous Parameters --- ### ######################################## #!!Basic param rootpasswd b1ttler # Do Change! Console/telnet # password for root. If this is # enabled, Telnetd will be enabled. param xorgvncpasswd b1ttler # VNC Access Password param storagepasswd pleasechangeme # Password for storage server param dialuppasswd pleasechangeme # Password for dialin account param sambapasswd pleasechangeme # Password for samba shares when # using user mode security param bootlogo true # Backgound picture during boot param bootresolution 1024x768 # Resolution used during # Thinstation boot param defaultconfig thinstation.conf.buildtime # The file with default setup. # No other config file is found # during boot. param basename thinstation # Used for all config/tftp/scp file
79 # names # Used to determine path to # tftp/scp files
param basepath
ts2.2
param desktop param localpkgs
./background.jpg false # to determine is PKG files are # to be loaded locally false # Use full locale support for packages false # Use ica encryption support, add 290k # to image 3 # Increased vebosity when booting TS # 0 no verbose messages # 1 boot # 2 network # 4 init # 8 kernel # 16 modules # 32 packages # 64 email bootlog file to SMTP server # & user set in thinstation.conf file. This # will only work if networking is working. # Combinations can be used (e.g.12 does # Kernel and Module Messages)
param fulllocales param icaencryption param bootverbosity
#!!Advanced # Leave this alone unless you can't download (wget required on your Linux box): param icaurl file://home/e-smith/files/ibays/thinstation/files/linuxx86.tar.gz param flashurl file://home/esmith/files/ibays/thinstation/files/install_flash_player_7_linux.tar.gz param nxurl file://home/e-smith/files/ibays/media/files/Software/NX/nxclient-2.0.06.i386.tar.gz param 2xurl http://downloads.2x.com/applicationserver/2xApplicationServerClient3.tar.bz2 param javaurl file://home/e-smith/files/ibays/thinstation/files/jre-1_5_0_06-linuxi586.bin param tarantellaurl file://home/e-smith/files/ibays/thinstation/files/tnci3li.tar #param httpproxy http://192.168.1.2:8080 •
Pode-se setar uma configuração padrão (ou seja, como ele é executado) em thinstation.conf.buildtime. Para isso, pode-se fazer uma personalização ou renomear o arquivo thinstation.conf.sample para thinstation.conf.buildtime, após o que editálo.
•
Editando o arquivo thinstation.conf.buildtime para refletir o cliente que vai acessar o servidor LTSP (seguem apenas as linhas descomentadas). A sugestão abaixo atende as necessidades do nosso trabalho.
###############################################
80 # -- Thinstation sample configuration file -- # ############################################### # # This file must be named "thinstation.conf<xxx>" where <xxx> can be: # .buildtime Defines the defaults build into the image (note the leading) # .network Default config file loaded from the TFTP server. # .user Config file on local storage. # -<name> Specific config file on the TFTP server for the terminal # "name" (e.g. thinstation.conf-paul). Requires thinstation.hosts. # .group-<id> Config file for a group of terminals (e.g. with printer setup # for those terminal with local printers. Requires thinstation.hosts. # -<IP> Specific config file on the TFTP server for the terminal with # the IP number <IP> specified. # -<MAC> Specific config file on the TFTP server for the terminal with # the MAC address specified. ## # --- General Options # AUDIO_LEVEL=67 KEYBOARD_MAP=pt_br TIME_ZONE="UTC-12:30" SYSLOG_SERVER=local USB_ENABLED=On DAILY_REBOOT=On #AUTOPLAYCD=On CUSTOM_CONFIG=Off RECONNECT_PROMPT=On ## ## # --- Session Defaults # -- Default Settings for all sessions SCREEN=0 WORKSPACE=1 AUTOSTART=On ICONMODE=AUTO ## # --- X Server Options # SCREEN_RESOLUTION="800x600 | 1024x768 | 640x480 | *" SCREEN_COLOR_DEPTH="16 | 8 | 24 | *" SCREEN_BLANK_TIME=10 SCREEN_STANDBY_TIME=20 SCREEN_SUSPEND_TIME=30 SCREEN_OFF_TIME=60 #MOUSE_PROTOCOL=PS/2
81 #MOUSE_DEVICE=/dev/psaux MOUSE_RESOLUTION=100 X_COOKIE=36d71ab65c10ef065702c111a3d31593 # -- Advanced Options - Experts Only X_DRIVER_OPTION1="swcursor On" ## # --- Networking Options # NET_HOSTNAME=ts_* NET_TELNETD_ENABLED=On NET_REMOTE_ACCESS_FROM="examplo.com.br 192.168.0.0" # -- For use in thinstation.conf.buildtime only: # NET_USE_DHCP=On
•
O passo seguinte é fazer a imagem do cliente, por meio do comando.
# ./build •
A imagem do cliente pode ser encontrada no diretório boot-images/<type> (onde type=etherboot, initrd, iso, loadlin, pxe & syslinux). Nossos testes foram feitos através de imagem”iso” gravada em CD, com boot pelo dispositivo de leitura de CD, utilizando o serviço de DHCP.
82
ANEXO D - INSTALAÇÃO E CONFIGURAÇÃO DO WINDOWS SERVER 2003
Procedimento Técnico 1.Título Instalação e configuração de S.O. Windows Server Enterprise 2003 2.Escrito por Augusto de Queiroz Lima, em 18/06/2009. 3.Área de Atuação Sistema Operacional 4.Equipamentos afetados Servidores Windows Server 2003 5.Objetivos •
Instalar o S.O. Windows Server Enterprise 2003;
•
Disponibilizar servidores utilizando o S.O. Windows Server Enterprise 2003 de modo simples e objetivo.
DESCRIÇÃO Notas tipográficas Para facilitar a utilização deste documento cada item descreve as ações a serem realizadas e em seguida mostra os comandos que devem ser executados.
• • • •
CONFIGURAÇÃO MÍNIMA DE HARDWARE Processador Pentium IV, 512 MB de RAM; HD 80GB Unidade leitora de CD
83 •
Placa de rede 100Mbps
• PRÉ-REQUISITOS PARA INSTALAÇÃO 5.CDs de Instalação do Windows Server Enterprise 2003 6.Equipamento conectado a rede com acesso a Internet
Colocar o CD de instalação do drive de CD-ROM. Quando carregar os dados do CD, será mostrada a tela abaixo. Depois disso, o Setup do Windows começa a reconhecer o hardware e se preparar para as configurações necessárias.
Apertar ENTER para começar a instalação.
Apertar ENTER novamente:
84
Apertar F8 para aceitar a licença do Windows.
Apertar C para criar as partições Obs.: Criar as partições que forem necessárias. Para criar várias outras partições, repetir a operação anterior.
85 Apertar ENTER para aceitar a partição.
Escolher a partição C: como partição em que o sistema operacional deve ser instalado e apertar ENTER para instalar
Escolher Formatar usando sistema de arquivos NTFS Rápido e apertar ENTER. Aparecerá a seguinte tela:
86 O Setup do Windows vai formatar a partição e copiar os arquivos necessários e reinicia o computador logo em seguida
Depois de reiniciado irá aparecer a seguinte tela:
87 Em seguida irá aparecer a seguinte tela:
Aguardar até que o Windows faça a instalação dos drives da máquina
88
Apertar em NEXT.
Preencher os campos conforme mostra a figura e clicar em NEXT.
89
Inserir o Serial Key e clicar em NEXT Em seguida, o Setup pergunta como será o licenciamento do servidor. Têm-se 2 opções, licenciamento “Per Server” (esta opção determina quantas conexões simultâneas o servidor poderá ter ) ou licenciamento “Per User” (Não há limite máximo para as conexões ao servidor, pois cada cliente terá sua licença).
Escolher a primeira opção e configurar a quantidade de conexões simultâneas, após o que apertar em NEXT.
90
Colocar o nome do servidor e a senha do administrador, ap贸s que apertar em NEXT.
Configurar a data e a hora do servidor e apertar em NEXT.
91 Aparecerá a seguinte tela de instalação. Aguardar o término da instalação dos componentes do Windows
Configurar a Rede:
Escolher Typical Settings (nesta opção é escolhido como padrão DHCP) e apertar em NEXT. A instalação continua mais uma vez:
92
Digitar o Grupo ou o Domínio que o servidor vai fazer parte como mostra a tela
Finalizada essa última configuração, a instalação continua sem requisitar qualquer outra informação e, quando finalizada, o servidor será reinicializado e estará pronto para uso.
93
ANEXO E - CHECKLIST E HARDENING NO WINDOWS SERVER 2003
Procedimento Técnico
1.Título Hardening e Checklist em Servidores Windows Server 2003. 2.Escrito por Augusto de Queiroz Lima, em 18/06/2009. 3.Área de Atuação Segurança de Sistemas 4.Equipamentos afetados Servidores Windows Server 2003 5.Objetivos Ajuste total do S.O., com atualização e configurações de segurança.
DESCRIÇÃO Notas tipográficas Para facilitar a utilização deste documento cada item descreve as ações a serem realizadas e em seguida mostra os comandos que devem ser executados.
1. Verificar atualizações do sistema e segurança disponibilizados pela Microsoft a) Atualizar sistema com hotfix e atualizações do Windows 2003; b) Aplicar patches; c) Instalar o que for necessário e depois reiniciar o sistema para vigorar as atualizações.
94
No Internet Explorer → Tools → Windows Update
2. Firewall Configurar, no Firewall corporativo, as regras relativas a permissões de entrada e saída, protocolos e portas necessárias, bem como tradução de IP, caso o servidor precise de acesso externo. OBS.: Observar para que não haja dois serviços de firewall concomitantes, pois isso pode gerar inconsistência e mau funcionamento de algumas regras.
3. NetBIOS83 O NetBIOS é um serviço de nomes que usa as portas UDP/137, UDP/138 e UDP/139, fornecendo às aplicações de rede transmissão orientada à conexão, de forma a assegurar-se que não existam nomes de computadores repetidos e, opcionalmente, um serviço de transmissão de datagramas não confiável. Em outras palavras, com esse protocolo ativado, algumas portas do servidor ficam em estado de escuta (abertas). É por meio dessas portas que são feitas invasões, além é claro, do alto tráfego de vírus que podem passar pelas mesmas. 83Network Basic Input/Output System. Sistema de Entrada e Saída da Rede. É uma camada de software (protocolo) que envia instruções para a placa de rede, permitindo que um ou mais PCS se comuniquem. É suportado por vários sistemas operacionais, sendo que às vezes o conjunto de instruções NetBIOS se encontra diretamente na placa de rede.
95 Para não haver conflito com o servidor de resolução de nomes (DNS) local, desabilitar a interface NetBIOS da seguinte forma: •
Na área de trabalho, clicar com o botão direito do mouse em Meu Computador e depois clicar em Propriedades;
•
Clicar na alça Hardware e clicar no botão Gerenciador de Dispositivos;
•
Clicar no menu Exibir e depois em Mostrar dispositivos ocultos;
•
Expanda (clique no símbolo +) Drivers que não são Plug and Play;
•
Clicar com o botão direito em NetBT (NetBios) em TCP/IP e clicar em Desinstalar.
4. SMB (Bloco de Mensagem de Servidor) O SMB é outro problema, pois trabalha na porta 445 TCP e UDP, justamente a que é usada por muitos vírus. Ele é um protocolo que se encarrega de acessar pastas compartilhadas e recursos de rede. Para desabilitá-lo precisa: •
No menu Iniciar, apontar para Configurações e, em seguida, clicar em Conexões de Rede;
•
Clicar com o botão direito do mouse na conexão com a Internet e clicar em Propriedades;
•
Selecionar Cliente para Redes Microsoft e clicar em Desinstalar;
•
Seguir as etapas de instalação;
•
Selecionar Compartilhamento de Arquivos e Impressoras para Redes Microsoft e clicar em Desinstalar;
•
Seguir as etapas de instalação.
5. Configurando contas de usuários do servidor local. Ir para My Computer → Manage
96
5.1. Criar contas dos administradores de sistemas localmente e adicionรก-las no grupo Administradores.
97
98 5.2. Clicar em Locations abaixo:
5.3. Marcar a máquina local no exemplo “SRVTS2003”:
5.4. Buscar o usuário a adicionar no grupo de administradores, clicando em Check Names, depois clicando OK:
99 5.5. Depois clicar em Apply, seu usuário estará adicionado ao grupo local de administradores:
5.6. Desativar a conta do administrador se possível (verificar se antes não há nenhum serviço que necessita ser executado com a conta do administrador).
100 5.7. Configurar contas para que a senha nunca expire:
5.8. Desabilitar a conta de convidado local:
5.9. Estabelecer senhas com, no mínimo, 8 caracteres obedecendo a lei de formação vigente e seguintes recomendações: 6.Utilizar senha com mais de 8 dígitos (alfa-numéricos); 7.Não conter palavras completas do dicionário. Exemplo: sistema; 8.Não conter nome da empresa;
101 9.Não serem subsequentes. Exemplo: senha1, senha2 etc. 5.10. Atribuir permissão a grupos, não a usuários, sendo que: 10.Atribuição de permissão a usuários deve ser uma exceção; 11.Não alterar permissões de arquivos ou pastas do sistema, como C:/windows; 12.Não negar acesso ao grupo “todos”. 6. Desabilitar o “telnet”:
6.1. Depois, marcar Disabled:
102 7. Acesso remoto O utilitário de Assistência Remota do Windows é usado para convidar pessoas para conectar na máquina servidora, ou em qualquer máquina, quando for preciso algum tipo de assistência. O Remote Desktop é uma ferramenta para acesso e controle visual, a distância, em um determinado computador. Na instalação padrão do Windows, a Assistência Remota já vem habilitada por padrão. Para desabilitá-la, abrir a pasta de Sistema no Painel de Controle. Clicar na aba Remote e desmarcar “Allow Remote Assistance invitations to be sent from this computer” e “Allow users to connect remotely to this computer”. Clicar em aplicar e salvar as configurações.
7.1. Se o uso do Remote Desktop for realmente necessário, é aconselhável restringir o acesso, e proteger o usuário com uma senha forte. Uma possibilidade para ofuscar o serviço é trocar a porta padrão. O Remote Desktop usa a porta 3389 por padrão, e é possível trocá-la usando o registro do Windows: • • • •
Iniciar o Editor do Registro; Localizar e clicar na seguinte subchave do Registro: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServe r\WinStations\RDP-Tcp\PortNumber; No menu Editar, clicar em Modificar e em Decimar; Digitar o novo número de porta e clicar em OK;
103 •
Fechar o Editor de Registro.
7.1.1. Agora, sempre que for conectar em um servidor remoto, basta usar o utilitário assistente do MSTSC e digitar o IP/Host seguido: e a nova porta, no formato IP:PORTA. 8. Atributos e extensões de Arquivos O Windows, no modo padrão, oculta as extensões de arquivos conhecidos, quando visualizados no Windows Explorer ou na Área de Trabalho. Este fator é frequentemente explorado por malwares, que se escondem adicionando uma segunda extensão no arquivo malicioso para enganar o usuário. Mudam-se os ícones para formatos aparentemente inofensivos, deixando extensões de arquivos de fotos/vídeos/música/texto: fotos.jpg.exe, video.avi.scr, musica.mp3.bat, documento.doc.vbs. 8.1. Para exibir a extensão de arquivos conhecidos: Abrir o Painel de Controle e buscar Opções de Pastas; Clicar na aba Visualizar; Desmarcar “Hide extensions for known file types” / “Ocultar extensões de arquivos conhecidos” 8.2. Também é recomendável exibir arquivos Ocultos, além dos arquivos de Sistema. Estas configurações também podem ser habilitadas em Opções de Pastas / Visualizar, permitindo a visualização no Explorer e no Prompt de arquivos com atributos +s e +h. 9. Serviços A instalação padrão do Windows acompanha uma série de serviços que não são necessários para o funcionamento do sistema, e, alguns deles podem até mesmo colocar a segurança do computador em risco. A menos que um serviço esteja desabilitado explicitamente, ele estará executando, desperdiçando memoria RAM. Para visualizar e modificar os serviços do Windows basta clicar em Iniciar / Executar e rodar o utilitário services.msc. Serão exibidos todos os serviços, seus parâmetros, configurações e os seus três possíveis estados: a) Automático. O serviço é inicializado juntamente com o Windows; b) Manual. O serviço não é inicializado no momento do boot, mas pode ser ativado manualmente, se necessário; c) Desabilitado. O serviço não é iniciado durante o boot.
104
Este é o módulo de Serviços gerado pelo comando services.msc 9.1. O utilitário NET pode ser usado no prompt de comando, para visualizar, parar e iniciar os serviços manualmente. 9.1.1. Para exibir os serviços inicializados: net start 9.1.2. Para iniciar um determinado serviço: net start "SERVIÇO" 9.1.3. Para parar um serviço: net stop "SERVIÇO"
105
ANEXO F - INSTALAÇÃO E CONFIGURAÇÃO DO SERVIÇO DE TERMINAL
Procedimento Técnico 1.Título Instalação e configuração do Terminal Server no Windows Server Enterprise 2003 2.Escrito por Augusto de Queiroz Lima, em 18/06/2009. 3.Área de Atuação Aplicação em Sistema Operacional 4.Equipamentos afetados Servidores Windows Server 2003 5.Objetivos •
Instalar o Terminal Server no S.O. Windows Server Enterprise 2003;
•
Disponibilizar o Serviço de Terminal nos servidores utilizando o S.O. Windows Server Enterprise 2003 de modo simples e objetivo.
DESCRIÇÃO Notas tipográficas Para facilitar a utilização deste documento cada item descreve as ações a serem realizadas e em seguida mostra os comandos que devem ser executados.
A) Instalação prática do TS: 1. Clicar no botão Iniciar (start) > Painel de Controle (Control Panel) > Ferramentas
106 Administrativas (Administrative Tools) > clique em Assistente para configurar o Servidor (Configure Your Server Wizard) > clique em Avançar (Next) e Avançar (Next).
2. Clicar na opção Terminal Server e clicar em Avançar (Next). Aparecerá uma mensagem informando que o servidor terá de ser reiniciado durante a instalação do TS:
107 Obs.: Ao ser reiniciado, o Win2003 mostrará uma tela informando que o servidor agora funciona como Terminal Server.
3. Para utilizar o TS, basta definir quais usuários poderão acessar o servidor remotamente. Para isso, clicar no botão Iniciar (Start) > Meu Computador (My Computer) > Gerenciamento do Computador (Manager) > duplo-clique em Usuários e Grupos locais (Local Users e Groups) > clicar em Usuários (Users). Na janela à direita aparecerá a lista de usuários.
3.1. Clicar com o botão da direita do mouse no usuário que terá permissão de acessar o servidor remotamente > Propriedades (Properties) > aba Membro de (Member Of) > clicar em
108 Adicionar (Add) > Avançado (Advancend) > Localizar agora (Find Now) > dar um duploclique em "Usuários da área de trabalho remota" e clicar em OK.
B) Acesso no servidor via TS 1. Os usuários com permissão de acesso via TS poderão acessar o servidor remotamente. Para fazer isso de um computador com Windows XP, por exemplo, basta clicar no botão Iniciar > Todos os programas > Acessórios > Comunicações > Conexão de área de trabalho remota. No XP, digitar o IP do servidor e clicar em Conectar-se. Assim que a tela de login do servidor abrir, deve-se preencher o nome de usuário e senha para poder acessar o servidor remoto. Usuários que tentarem se logar sem terem permissão para isso não conseguirão acessar o servidor via TS. IMPORTANTE: para se desconectar do TS, jamais fechar a janela dele. Ao em vez disso, clicar no botão Iniciar > Fazer logoff para que a sessão seja fechada e a conexão com o servidor seja finalizada corretamente.
2. Para saber se há algum usuário acessando o servidor via TS, a maneira mais rápida é clicar com o botão da direita do mouse na barra de tarefas > Gerenciador de Tarefas > Usuários. Os usuários acessando o servidor via TS aparece com Sessão RDP-Tcp#x, aonde “x” é o número da conexão:
109
C) Três dicas simples de segurança para o Windows Server 2003 1. Auditoria de eventos. Habilitar a auditoria de Eventos para que se tenham relatórios de acesso (com êxito ou não) ao servidor: clicar no botão Iniciar (Start) > Painel de Controle (Control Panel) > Ferramentas Administrativas (Administrative Tools) > clicar em Diretiva de segurança local (Local Security Policy) > dar um duplo-clique em Diretivas locais (Local Policies) e depois em Diretiva de Auditoria (Audit Policy).
110 1.1. Na janela à direita têm-se várias opções que se pode configurar e as mais importantes são: • Auditoria de eventos de logon: Êxito (Success), Falha (Failure) • Auditoria de alteração de diretivas: Êxito (Success), Falha (Failure) • Auditoria de gerenciamento de contas: Êxito (Success), Falha (Failure) • Auditoria de uso de privilégios: Êxito (Success), Falha (Failure) 1.2. Com isso, podem-se monitorar essas auditorias no Visualizador de eventos, clicando no botão Iniciar (Start) > Painel de Controle (Control Panel) > Ferramentas Administrativas (Administrative Tools) > clique em Visualizar eventos (Event Viewer) > clique em Segurança (Security)
2. Opções de segurança. Clicar no botão Iniciar (Start) > Painel de Controle (Control Panel) > Ferramentas Administrativas (Administrative Tools) > clicar em Diretiva de segurança local (Local Security Policy) > duplo clique em Diretiva Local (Local Policies) > clicar em Opções de Segurança (Security Options) e alterar a opção Logon interativo (Interactive logon): não exibir o último nome do usuário (Do not display last user name) para forçar a digitação do nome do usuário. Notar que há dezenas de outras configurações que podem ser modificadas de acordo com a necessidade tanto nesta opção quanto em Atribuição de direitos de usuário.
111 3. Bloqueio de contas. Clicar em Diretivas de conta (Account Policies) > Diretiva de bloqueio de conta (Account Lockout Policy), alterando a opção Limite de bloqueio de conta (Account lockout threshold) para 3, indicando que após 3 tentativas de login, a conta será bloqueada por 30 minutos (embora se possa mudar isso nas duas outras opções).
L732a Lima, Augusto de Queiroz Ambiente de trabalho remoto com LTSP. / Augusto de Queiroz Lima. - Fortaleza, 2009. 111f.; 30cm. Monografia apresentada ao Curso de Administração e Segurança de Sistemas Computacionais da Faculdade Integrada do Ceará como requisito para obtenção do grau de especialização. 1. Remoto. 2. Terminais. 3. Servidor. 4. Rede. 5. Virtualização. I. Título II. Faculdade Integrada do Ceará. CDD 658.1