Revista Do Linux
 
EDIÇÃO DO MÊS
 CD do Mês

 Capa
 Estudo de Caso
 Produto
 Tutorial
 Iniciantes
 Segurança
 Hardware
 Desenvolvimento
 Entrevista
 Corporativo
 Especial
 Distro
 Comunidade
 
 
 
sistema
 
(continuação)
Na última edição começamos a desvendar os segredos da rede Linux. Este mês, vamos continuar a série e conhecer um pouco mais
sobre alguns de seus aspectos.
 
<IMG> Como de costume, tanto a edição de arquivos quanto a execução de comandos devem ser feitas como superusuário. Então todo cuidado é pouco. Além disso, como algumas distribuições não seguem padrões, é possível que algumas ações não funcionem na sua. Se este for o caso, consulte a documentação.
 
Desvendando o NIS
<IMG> Num ambiente com muitos usuários e muitas máquinas, manter cópias dos usuários e grupos em todas as máquinas é, no mínimo, não muito prático. Para simplificar, você pode usar o Network Information Service, ou NIS. A função do NIS é levar informações da rede para todas as máquinas que dela fazem parte. Estas informações são geralmente os usuários e os grupos do sistema.
<IMG> Vejamos como colocar nossa máquina kepler em uma rede NIS.
<IMG> Vamos supor que nosso servidor NIS seja a máquina newton e que seu endereço IP seja 192.168.1.1
<IMG> Antes de mais nada, editemos o arquivo /etc/sysconfig/network para configurar o nome do nosso domínio:
HOSTNAME=kepler
NISDOMAIN=ciencia.
<IMG> Em seguida, executemos o comando abaixo para que a configuração fique ativa sem necessidade de reiniciar a rede:
# nisdomainname ciencia.
<IMG> Agora que a máquina já possui um domínio NIS, precisamos configurar o serviço ypbind para que este conecte a máquina ao servidor NIS durante a inicialização do sistema. Para isso, devemos editar o arquivo /etc/yp.conf para que se pareça com:
domain ciencia. server newton.ciencia
 
<IMG> Este é, aliás, mais um motivo para se usar apelidos (vide edição pas--sada). Poderíamos dar à máquina newton o apelido de nis. Assim, se por alguma razão a máquina newton não pudesse mais ser usada como servidor NIS, bastaria configurar outra máquina como servidor e dar-lhe o apelido de nis e as máquinas clientes jamais notariam a diferença, pois já estariam “apontando” para nis.ciencia.
<IMG> Precisamos, então, iniciar o serviço ypbind para ligar a máquina ao servidor:
# /etc/init.d/ypbind start
# chkconfig --add ypbind
<IMG> Há um pequeno detalhe que não podemos esquecer: O serviço ypbind tem de ser capaz de encontrar o servidor NIS. Como durante a iniciali-zação pode acontecer de o servidor DNS ainda não ter sido contactado quando o NIS é iniciado, precisamos ter certeza de que nossa máquina pode achar o servidor de qualquer maneira. Como fazer isso? É nosso velho amigo /etc/hosts quem vai nos ajudar. Aliás, notaram como o hosts é muito útil para um arquivinho que teve sua função primária roubada pela criação do DNS e já deveria ter morrido há tempos?
<IMG> Para que o ypbind sempre encontre o servidor, incluímos a seguinte linha no arquivo /etc/hosts:
192.168.1.1 newton.ciencia newton
 
<IMG> Precisamos ainda nos assegurar de que o serviço portmap está sendo inicializado antes do ypbind.
<IMG> Agora os usuários da rede podem conectar-se à nossa máquina. Notemos que eles não terão um diretório /home, a não ser que criemos um para aqueles que o necessitarem.
 
Como funciona
o inetd.conf
<IMG> Uma das grandes dúvidas de administradores menos experientes é quanto ao suposto desaparecimento dos serviços de telnet e FTP em versões mais recentes de algumas distribuições. Na verdade, este “desapareci-mento” foi apenas uma medida de segurança. Algumas distribuições, preocupadas com a segurança de seus clientes, resolveram que, por padrão, as portas associadas a diversos serviços iriam fechadas. É o caso do FTP, do telnet, do POP3 e muitas outras.
<IMG> Para resolver este problema, apelamos para um dos arquivos mais importantes no /etc: o inetd.conf.
<IMG> Se visualizarmos o conteúdo deste arquivo, veremos diversas linhas semelhantes às abaixo:
#ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
<IMG> Cada uma destas linhas representa um serviço. Para habilitar o FTP e o Telnet, simplesmente desco-men-ta-mos as linhas correspondentes e reiniciamos o serviço inetd.
<IMG> As linhas do inetd.conf têm o seguinte formato:
[serviço] [tipo de socket] [protocolo] [wait/nowait] [usuario] [exec] [arg]
<IMG> Estes campos são:
Serviço: é o nome do serviço
Tipo de Socket: pode ser “stream’’, “dgram’’, “raw’’ ou “rdm’’. Para mais informações vide man socket
Protocolo: é o protocolo usado pelo serviço. Pode ser “tcp” ou “udp”, por exemplo, ou qualquer protocolo especificado em /etc/protocols
wait/nowait: com exceção de sockets do tipo “dgram”, todos os outros deveriam sempre usar “nowait”. Este campo indica se o serviço libera o socket para o inetd logo após a conexão, permitindo que o mesmo socket seja usado para outras conexões (nowait) ou se o socket fica “preso” (wait)
Usuário: especifica com qual usuá-rio o serviço será executado. Isto permite que sejam dadas menos permissões a um serviço
Exec: o nome do programa a ser exe-cutado para processar a conexão.
Arg: a linha de comando completa com os parâmetros a serem passados para o programa especificado em [exec].
<IMG> Este arquivo é de suma importância na rede. É muito comum em listas de segurança perguntas sobre linhas “estranhas” no arquivo. Realmente é comum que um usuário mal intencionado inclua uma linha no inetd.conf para lhe dar acesso futuro. Veja, por exemplo, a linha abaixo:
asp stream tcp nowait root /bin/ls /bin/ls -l
 
<IMG> Se nos conectarmos a esta máquina usando a porta do serviço asp (telnet localhost asp), receberemos uma listagem detalhada do diretório. Podemos imaginar o que um usuário mal intencionado poderia fazer al-terando esta linha, para executar outros comandos como, por exemplo, o bash.
<IMG> Devemos sempre verificar se não há linhas “estranhas” no arquivo, e nunca abrir portas que não têm necessidade de ser abertas.
 
Roberto Teixeira
maragato@conectiva.com.br
 
 

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

Política de Privacidade
Anuncie na Revista do Linux