Revista Do Linux  
EDIÇÃO DO MÊS
  Atualidades
  Beowulf
  CAPA
  Corporativo
  Divirta-se
  Entrevista
  Estudo de Caso
  Interfaces Gráficas
  Mercado
  Programação
  Segurança
  Servidores
  WEB

Mars Ataca!
Confira aqui as razões pelas quais vários servidores Novell estão perdendo terreno para o Mars

Marcos Aurélio Rodrigues
marcos@pronet-fino.com

Quando se fala em servidor de arquivos, imediatamente nos lembramos da Novell Netware, afinal durante muitos anos este foi o principal sistema operacional de redes usado no Brasil. Toda uma geração de técnicos aprendeu a instalar e dar manutenção em servidores Novell e a versão 2.15 foi a primeira que conheci. Depois vieram as versões 2.2, 3.11, 3.12, 4.x até as atuais 5.x, com substancial evolução entre elas.

Este software teve a hegemonia do mercado durante muitos anos, mas é fato que, dentre as redes instaladas em pequenas e médias empresas, existe um grande número de servidores Novell pelos quais não foi paga nenhuma quantia pelo seu licenciamento, e não importando analisar aqui o motivo, a situação permanece. De uns anos para cá, o Windows NT começou a tomar parte deste mercado, e hoje uma boa parte das empresas está usando servidores baseados neste sistema operacional. O NT tem os seus méritos, mas entre os desméritos está a necessidade de hardwares mais potentes do que as versões mais antigas da Novell, notadamente a 3.11. Alguns podem argumentar que o hardware está mais potente e mais barato, e eu concordo com isto, mas não dá para negar que é possível ter um servidor baseado em Novell 3.11/3.12 em um hardware mais barato, ou no mesmo hardware em que poderia ser instalado um servidor Windows NT, com uma performance melhor, pela menor exigência que estas versões da Novell têm em relação ao computador em que estão instaladas.

Mas qual afinal é a solução para quem têm uma Novell 3.1x pirata, está satisfeito com o software e hardware que possui, e não está disposto a trocar de hardware para poder instalar uma Novell 5.x ou Windows NT? Ou pior, não podem ou não pretendem pagar por esta troca?

Convenhamos, os custos não são pequenos e esta troca envolve a compra do hardware, o licenciamento do software e os custos de instalação, além da adaptação ao novo sistema operacional, o que via de regra é incompatível com a disponibilidade financeira ou operacional.

A melhor relação custo benefício que existe atualmente se chama Linux, e isto é fato, mas como substituir um servidor Novell pirata por um servidor Linux com o menor trauma possível?

Há soluções baseadas em dois protocolos de compartilhamento, o smb/cifs, que é usado no Samba (ver artigo do número anterior), e o NCP que é o mesmo protocolo usado pela Novell e é implementado em três produtos para Linux, dois gratuitos e um comercial; os gratuitos são o mars-nwe (Martin Stovers Netware Emulator) e o lwared de Ales Dryak, o comercial é o Netware for Linux da Caldera. Neste artigo, irei tratar especificamente do mars-nwe que é mais estável e poderoso que o lwared.

O mars-nwe oferece:

  • Um servidor de arquivos funcionalmente compatível com o Novell Netware 2.15/3.11, podendo ser acessado por qualquer client Novell padrão usando as ethernet frames 802.2 ou 802.3, através de ipx/spx (ipx/netx), ipx/odi ou vlm, ou estações de trabalho Windows for Workgroups, Windows 95/98, Windows NT WorkStation/Server, ou qualquer outro cliente compatível com Novell 3.1x.
  • Um servidor de impressão usando os recursos de impressão do Linux.
  • Nenhuma restrição de licença de uso, o que significa que um servidor Linux executando o mars-nwe pode ser acessado simultaneamente por qualquer quantidade de estações de trabalho sem a necessidade de pagamento de nenhum tipo, já que tanto o Linux quanto o mars-nwe são gratuitos.
  • Permite que o Linux seja usado como um roteador de protocolo IPX.
  • Além do mars-nwe estão à disposição três programas adicionais:
    1. mars_dosutils, com os aplicativos MS-DOS net.exe e nwnet.exe, os quais substituem os aplicativos Novell, login, logout, map, capture, endcap, etc.
    2. ncpfs, para que volumes Novell possam ser montados como sistemas de arquivos Linux.
    3. smart que permite alterar as configurações do mars-nwe através de um browser qualquer, bastando para isso que o Linux esteja com o servidor http Apache instalado.

E com todos estes recursos o servidor Linux ainda pode ser usado como servidor de e-mail, http, proxy, discagem por demanda, SMB, NFS, DNS etc. A lista de aplicativos para servidores Linux é tão extensa que merece um artigo à parte.

Instalando o Mars-nwe

Antes de começar a configurar o mars-nwe é necessário verificar se o pacote está instalado. Partindo do princípio que o Conectiva Linux já está instalado, digite no console do equipamento que será o seu servidor:

# rpm -qi mars-nwe

Se o mars-nwe não estiver instalado será necessário colocar o CD do Conectiva Linux no drive de CD-ROM do servidor e digitar:

# mount /mnt/cdrom
# cd /mnt/cdrom/conectiva/RPMS
# rpm -ivh mars-nwe-0.99pl15-7cl.i386.rpm

Uma dica, para não ter que digitar todo o nome do pacote, digite apenas mars e pressione a tecla [tab], o Linux tem uma função de auto preenchimento que irá completar o nome do arquivo para você.

Deverão aparecer vários # na tela e o programa será instalado. Para ter certeza de que o pacote foi instalado é só digitar, como no exemplo anterior:

# rpm-qi

Configurando o protocolo IPX

O mars-nwe usa o protocolo IPX para se comunicar com as estações de trabalho e outros servidores na rede. Este protocolo necessita ser configurado no equipamento que será o seu servidor. A documentação do mars-nwe pede que o kernel seja recompilado e durante a recompilação deve-se requisitar que seja incluído o suporte para este procotolo.

No Conectiva Linux isto não é necessário, uma vez que que o protocolo IPX já está incluído no kernel por default, bastando apenas ativá-lo e a forma mais simples e indicada de fazer isto é através do linuxconf, para tanto execute o seguinte comando no console do servidor:

# linuxconf
  • Escolha Ambiente de Rede/IPX - opções da interface, você verá uma caixa de diálogo como na figura 1.

No exemplo está sendo ativada a rede IPX, a auto configuração de qual interface será a primária e da ethernet frame que será usada. O próximo passo é definir quais os tipos de frame o Linux irá aceitar, para isso clique na palheta adaptador 1 como mostra a figura 2.

Observe que foram escolhidos os dois tipos de frame, o 802.2 e o 802.3. Clique o botão aceitar e reinicie o computador, e o protocolo IPX deverá estar ativo. Para ter certeza de que o protocolo foi ativado, basta executar os seguintes comandos após a reinicialização:


# cd /proc/net
# cat ipx_interface

O resultado deverá ser como abaixo:

Network Node_Address Primary Device Frame_Type
00000000 00608CF385EA Yes eth0 802.2
00000000 00608CF385EA No eth0 802.3

Observe que no exemplo o Linux aceitará comunicar-se com computadores que estejam executando ambos os tipos de frames 802.2 e 802.3, sendo que o default será o 802.2.

O protocolo IPX foi configurado e o mars-nwe foi instalado, o próximo passo será configurá-lo.

Configurando o Mars-nwe

A configuração do mars-nwe é bastante simples, bastando editar o arquivo /etc/nwserv.conf, e isto pode ser feito manualmente ou através de um utilitário que permite fazer isto via web. Para configurar manualmente, siga os passos:

No console do servidor edite o arquivo /etc/ wserv.conf, para isto eu posso usar o editor de textos vi, digitando:

vi /etc/nwserv.conf.

Este arquivo é dividido em seções numeradas, e, apesar de o texto ser em inglês, todas são bastante comentadas e auto-explicativas. Todas as linhas que iniciarem com uma # (cerquilha) são comentários. Vamos alterar as seções que nos interessam para fazer o nosso servidor funcionar.

Seções

  • Volumes (obrigatória) Nesta seção são configurados volumes como os que existem em um servidor Novell, que por default têm de ter ao menos o volume Sys.

    Este volume está localizado no diretório /var/mars_nwe/sys. Se a linha que aponta para este diretório estiver comentada, retire o comentário (linha precedida por #) e deixe somente a letra k no final da linha, se for mantido o r que vem por default, o volume será read-only. Isto é útil quando se quer montar volumes de somente leitura tais como CD-ROM, ou alguma outra unidade de disco onde não se queira que o usuário tenha direito de gravação e as opções relevantes desta seção são:

    k Permite o uso de nomes de arquivos com letras minúsculas
    m Usado em volumes removíveis, como o CD-ROM
    r O volume é somente leitura e mostra sempre 0 bytes livres
    O Sistemas de arquivos OS/2
    N Sistemas de arquivos NFS
  • Nome do Servidor(opcional) Configuração do nome do servidor, este é o nome que será apresentado quando for executado o comando novell slist (server list), e será o nome visualizado por toda a rede.

  • Número de rede interna (obrigatória) Definição do número de rede interno, este é um parâmetro obrigatório, e uma sugestão é usar o mesmo número que está sendo usado como endereço IP do servidor, como por exemplo em 192.168.1.1, ou então utilizar o default que é o modo automático, e a configuração ficará assim:

    3 auto 1
  • Dispositivos IPX (recomendada)Contêm informações para o roteador ipx interno do mars-nwe e/ou o programa externo nwrouted. Ambos os programas gerenciam a troca de pacotes entre o servidor e os outros computadores clientes da rede. Todas as linhas estão comentadas e, como nós já configuramos o IPX do kernel do Linux, não será necessário alterar nenhuma linha aqui.

  • Salvamento das rotas IPX (obrigatória) Controla as informações referentes às rotas do IPX definindo se elas devem ser mantidas durante o tempo em que o servidor estiver ligado. Por default não salva as rotas e a linha fica sendo: 5 0.

    Apresenta-se como versão do Netware e isto engana os outros computadores da rede, fazendo com que o mars-nwe se apresente aos outros com um servidor Netware 2.15 ou 3.11. Existe também uma opção para a versão 3.12 que ainda não está implementada. Normalmente, usa-se a opção para Novell 3.11 e a linha fica sendo: 6 1.

  • Manuseio das senhas dos clientes MS-DOS (obrigatória) Quando as senhas são alteradas a partir de clientes MS-DOS, o cliente pode encriptar a senha antes de enviá-la ao servidor mars-nwe. Em algumas redes pode haver a necessidade de melhorar a segurança através destes recursos, mas em redes pequenas isto não faz muita diferença. As opções relevantes são:

    0 Força a criptografia de todas as senhas dos clientes DOS
    1 Idêntica à anterior, mas permite usar a versão sem criptografia da rotina de troca de senha
    7 Permite o uso de qualquer tipo de senha sem criptografia, mas não permite senhas em branco
    8 Permite o uso de qualquer tipo de senha sem criptografia, inclusive senhas em branco

    Usaremos o default, ficando assim a linha:

    7 0.
  • Identificação de Usuário e Grupo com direitos mínimos (obrigatória) Quando os drivers do Netware são carregados na estação de trabalho DOS (IPX/NETX, IPX/ODI ou VLM), a estação é então ligada (attach) ao servidor netware, e uma nova letra de dispositivo drive passa a estar disponível, normalmente a letra F:. Neste momento o usuário está habilitado a digitar:

    F: 
    
    login 
    

    fornecer o seu nome de usuário e ganhar acesso à rede.

    Enquanto o usuário não fornecer nome e senha válidos, ele não poderá enxergar nada além do diretório login, este parâmetro diz qual usuário e grupo estão fornecendo o direito de ver o diretório login. No Conectiva Linux, existem o usuário nobody e o grupo nobody ambos com número de identificação 99, portanto nesta seção ficarão duas linhas.

    10 99
    
    11 99
    
  • Login de supervisor (obrigatória)O supervisor é o equivalente ao usuário root no Linux. É necessário especificar qual usuário do Linux será usado como supervisor do mars-nwe, e por uma questão de segurança não deve ser usado o root. A documentação sugere a criação de um usuário nw-adm e é exatamente o que faremos através dos seguintes comandos:

    
    # adduser nw-adm 
    (criação de usuário)
    
    # passwd senha 
    (criação de uma senha para o usuário)
    
    

    Substitua a palavra senha por qualquer uma de sua escolha. A linha de configuração desta seção ficará assim:

    12 SUPERVISOR nw-adm senha
  • Login dos usuários (opcional) Nesta seção você poderá criar a equivalência entre os nomes de usuário Linux e mars-nwe. Todos os usuários do mars deverão ter um usuário equivalente no Linux e, se o usuário que você definiu não existir no Linux, ele passará a ter os direitos mínimos definidos nas seções de identificação de usuário e grupos com direitos mínimos, e na de controle de senhas por clientes MS-DOS.

    Um exemplo:

     13 usuário senha
    ou
     13 joao 123456
    . Lembrando-se de que o usuário deve ser um dos cadastrados no Linux.

  • Mapeamento automático de login (opcional) A utilidade desta seção é facilitar o mapeamento de um grande número de usuários do Linux para o mars-nwe. Isto é feito através da leitura do arquivo de usuários do Linux, o /etc/passwd, e criando nomes de usuários do mars. Para cada um dos nomes de usuários ali encontrados, como não é possível atribuir automaticamente a mesma senha do Linux para todos os usuários do mars, deve ser atribuída uma senha única que deverá ser modificada através do comando setpass. Os parâmetros são os seguintes:

    0 Não faz a conversão automática de nomes (default)
    1 Faz a conversão automática e fornece a cada um dos usuários mars-nwe criados, a senha única atribuída posteriormente
    99 Faz a releitura do arquivo /etc/passwd e sobrescreve os nomes de usuário do mars-nwe, mesmo para aqueles que já existem. Além disso, tem outra utilidade que é fazer com que todas as senhas sejam mudadas para senha escolhida

    Exemplo:

    15 99 senha
  • Testes realizados na inicialização O conselho dado pelo comentário do arquivo de configuração é usar o parâmetro 1 e não mexer mais com isso. Este 1 faz com que o mars tente recriar qualquer diretório default que tenha sido apagado, os diretórios são login, public e system, abaixo de /var/mars_nwe/sys. A linha ficará assim: 16 1

  • Filas de impressão (opcional) Nesta seção são definidas quais as impressoras conectadas ao servidor Linux que poderão ser acessadas pelos clientes DOS.  

    Seção Nome da Fila Diretório da Fila Comando de Impressão

    21

    O nome de fila que será usado pelo cliente DOS, este não o nome da fila no linux

    Diretório em que serão armazenados arquivos antes de serem impressos

    Comando de impressão do linux que irá ser usado para imprimir os arquivos que estiverem na fila

    Exemplo:

    21 deskjet sys:/print/deskjet lp

Configuração das estações de trabalho

  • MS-DOS

    O mars-nwe permite que qualquer estação de trabalho anteriormente configurada para acessar um servidor Novell passe a acessá-lo sem maiores problemas. A exceção são as estações de trabalho com boot remoto, e para estas a solução será o uso de um disquete com os programas normais de acesso à rede Novell, que são o IPX/NETX, o IPX/ODI e o VLM, desde que as ethernet frame necessárias tenham sido configuradas no kernel do Linux.

    Existem configurações específicas para os seguintes sistemas, mas não vamos detalhá-las neste artigo:

  • Windows for Workgroups
  • Windows 95/98
  • Windows NT
  • mars dosutils

A menos que você tenha uma rede Novell licenciada, o uso dos utilitários login, logout, map, capture, endcap irá ferir os direitos autorais da Novell. Para solucionar este problema, existe o pacote mars_dosutils e nele estão os executáveis e os fontes de dois programas chamados NET.EXE e NWNET.EXE. Os dois têm a mesma funcionalidade e o NWNET.EXE aceita alguns parâmetros a mais.

Estes programas devem ser copiados para /var/mars_nwe/sys/login para que possam ser utilizados em substituição ao login.exe.

Para ver quais parâmetros aceitam estes programas, basta executar o comando de login e será mostrada uma lista.

Exemplo:

net login usuário

equivale ao login da Novell. Estes utilitários podem ser encontrados em ftp://ftp.pronet-info.com/linux/mars_nwe/mars_dosutils-0.16.tgz, e após fazer o download deste arquivo digite a seguinte seqüência:


# tar xvfz mars_dosutils-0.16.tgz
# cd netpc
# cp *.exe /var/mars_nwe/sys/login

E está feito. Quando a estação de trabalho se ligar (attach) ao servidor e acessar o drive F:, basta digitar:

net login

como no exemplo acima e validar o seu nome de usuário e senha com o mars.

 

A Revista do Linux é editada pela Conectiva S/A
Todos os Direitos Reservados.

Política de Privacidade