Product SiteDocumentation Site

5.13. Tornando serviços RPC mais seguros

You should disable RPC if you do not need it.
Remote Procedure Call (RPC) is a protocol that programs can use to request services from other programs located on different computers. The portmap service controls RPC services by mapping RPC program numbers into DARPA protocol port numbers; it must be running in order to make RPC calls.
RPC-based services have had a bad record of security holes, although the portmapper itself hasn't (but still provides information to a remote attacker). Notice that some of the DDoS (distributed denial of service) attacks use RPC exploits to get into the system and act as a so called agent/handler.
You only need RPC if you are using an RPC-based service. The most common RPC-based services are NFS (Network File System) and NIS (Network Information System). See the previous section for more information about NIS. The File Alteration Monitor (FAM) provided by the package fam is also an RPC service, and thus depends on portmap.
Os serviços NFS são muito importante em algumas redes. Se este for o caso para você, então terá que encontrar um balanceamento de segurança e usabilidade para sua rede. (Você poderá ler mais sobre a segurança em NFS no http://www.tldp.org/HOWTO/NFS-HOWTO.html (/usr/share/doc/HOWTO/en-txt/NFS-HOWTO.txt.gz).)

5.13.1. Desativando completamente os serviços RPC

A desativação do portmap é bem simples. Existem diversos diferentes métodos. O mais simples no sistema Debian 3.0 e mais novos é desistalar o pacote portmap. Se estiver executando uma versão antiga do Debian, terá que desativar o serviço como visto em Seção 3.5.1, “Desabilitando daemons de serviço”, porque o programa é parte do pacote net-base (que não pode ser removido sem quebrar o sistema).
Notice that some desktop environments (notably, GNOME) use RPC services and need the portmapper for some of the file management features. If this is your case, you can limit the access to RPC services as described below.

5.13.2. Limitando o acesso a serviços RPC

Infelizmente em alguns casos a remoção dos serviços RPC não é uma opção. Alguns serviços de desktop locais (notavelmente o fam da SGI) são baseados em RPC e assim precisam de um portmapper local. Isto significa que sob algumas situações, os usuários que estiverem instalando um ambiente de desktop (como o GNOME) instalarão também o portmapper.
Existem diversas formas de limitar o acesso ao portmapper e aos serviços de RPC:
  • Bloqueando o acesso as portas usadas por estes serviços com um firewall local (veja Seção 5.14, “Adicionando capacidades de firewall”).
  • Bloquear o acesso a estes serviços usando tcp wrappers, pois o portmapper (e alguns serviços RPC) são compilados com a libwrap (veja Seção 4.12, “Usando os tcpwrappers”. Isto significa que você poderá bloquear o acesso a eles através do hosts.allow e hosts.deny na configuração do tcp wrappers.
  • Desde a versão 5-5, o pacote portmap pode ser configurado para somente realizar conexões na interface loopback. Para fazer isto, modifique o arquivo /etc/default/portmap, e descomente a seguinte linha: #OPTIONS="-i 127.0.0.1" e reinicie o portmapper. Isto é suficiente para permitir que serviços RPC locais funcionem enquanto ao mesmo tempo evite que sistemas remotos os acessem (no entanto, veja Seção 4.18.5, “Desativando assuntos relacionados a weak-end de máquinas”.