NFS (Network File System) é um protocolo de sistema de arquivos distribuído que permite que um sistema acesse arquivos através de uma rede como se fossem locais. Nesta aula, vamos explorar a configuração de um servidor NFS no Linux, abordando a instalação, configuração e montagem de compartilhamentos NFS.
O que é NFS?
NFS permite que sistemas de arquivos sejam compartilhados entre máquinas em uma rede, facilitando o acesso a dados compartilhados e centralizando o armazenamento.
Vantagens do NFS
- Centralização de dados: Simplifica a gestão de dados centralizando o armazenamento em um único servidor.
- Facilidade de acesso: Permite que múltiplos clientes acessem os mesmos dados simultaneamente.
- Eficiência: Reduz a duplicação de dados e otimiza o uso do espaço de armazenamento.
Instalação do NFS
No Servidor
Para instalar o NFS Server em distribuições baseadas em Debian (como Ubuntu):
$ sudo apt update
$ sudo apt install nfs-kernel-server
Para distribuições baseadas em Red Hat (como CentOS):
$ sudo yum install nfs-utils
No Cliente
Para instalar o NFS Client em distribuições baseadas em Debian:
$ sudo apt update
$ sudo apt install nfs-common
Para distribuições baseadas em Red Hat:
$ sudo yum install nfs-utils
Configuração do Servidor NFS
Diretórios de Exportação
Escolha o diretório que você deseja compartilhar (por exemplo, /srv/nfs
):
$ sudo mkdir -p /srv/nfs
$ sudo chown nobody:nogroup /srv/nfs
Editando o Arquivo /etc/exports
Adicione a configuração de exportação no arquivo /etc/exports
:
$ sudo nano /etc/exports
Adicione a seguinte linha para compartilhar o diretório com permissões adequadas:
/srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check)
/srv/nfs
: Diretório a ser compartilhado.192.168.1.0/24
: Rede de clientes que terão acesso.rw
: Permissão de leitura e escrita.sync
: Garante que as alterações sejam sincronizadas.no_subtree_check
: Melhora o desempenho desativando verificações de subárvore.
Aplicando as Configurações
Para aplicar as configurações e iniciar o serviço NFS:
$ sudo exportfs -ra
$ sudo systemctl start nfs-kernel-server
$ sudo systemctl enable nfs-kernel-server
Configuração do Cliente NFS
Montagem do Compartilhamento
Crie um diretório onde o compartilhamento será montado:
$ sudo mkdir -p /mnt/nfs
Monte o compartilhamento NFS:
$ sudo mount 192.168.1.10:/srv/nfs /mnt/nfs
192.168.1.10
: Endereço IP do servidor NFS./srv/nfs
: Diretório compartilhado no servidor./mnt/nfs
: Diretório local onde o compartilhamento será montado.
Montagem Persistente
Para montar o compartilhamento automaticamente após a reinicialização, adicione a seguinte linha ao arquivo /etc/fstab
:
$ sudo nano /etc/fstab
Adicione a linha:
192.168.1.10:/srv/nfs /mnt/nfs nfs defaults 0 0
Configurações Avançadas
Permissões e Segurança
Ajuste as permissões dos diretórios compartilhados para garantir segurança adequada:
$ sudo chown -R nobody:nogroup /srv/nfs
$ sudo chmod -R 755 /srv/nfs
Firewalls
Certifique-se de que seu firewall permite tráfego NFS. Adicione regras para permitir portas NFS (2049) e RPC (111):
Para ufw
(firewall do Ubuntu):
$ sudo ufw allow from 192.168.1.0/24 to any port nfs
$ sudo ufw allow from 192.168.1.0/24 to any port 111
Para firewalld
(firewall do CentOS):
$ sudo firewall-cmd --permanent --add-service=nfs
$ sudo firewall-cmd --permanent --add-service=rpc-bind
$ sudo firewall-cmd --reload
Monitoramento e Logs
Verifique os logs do NFS para monitorar atividades e solucionar problemas. Os logs estão geralmente em /var/log/syslog
(Debian) ou /var/log/messages
(Red Hat).
Para monitorar os logs em tempo real:
$ sudo tail -f /var/log/syslog # Debian
$ sudo tail -f /var/log/messages # Red Hat
Exemplos Práticos
Exemplo 1: Configurando um Servidor NFS Básico
- Instale o NFS Server:
$ sudo apt install nfs-kernel-server # Debian
$ sudo yum install nfs-utils # Red Hat
- Crie e configure o diretório a ser compartilhado:
$ sudo mkdir -p /srv/nfs
$ sudo chown nobody:nogroup /srv/nfs
$ sudo nano /etc/exports
# Adicione a linha
/srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check)
- Aplique as configurações e inicie o serviço NFS:
$ sudo exportfs -ra
$ sudo systemctl start nfs-kernel-server
$ sudo systemctl enable nfs-kernel-server
- No cliente, instale o NFS Client:
$ sudo apt install nfs-common # Debian
$ sudo yum install nfs-utils # Red Hat
- Monte o compartilhamento:
$ sudo mkdir -p /mnt/nfs
$ sudo mount 192.168.1.10:/srv/nfs /mnt/nfs
- Adicione ao
/etc/fstab
para montagem persistente:
192.168.1.10:/srv/nfs /mnt/nfs nfs defaults 0 0
Configurar e gerenciar servidores NFS no Linux é uma habilidade essencial para administradores de sistemas, especialmente em ambientes que requerem compartilhamento eficiente de arquivos. Nesta aula, exploramos como configurar um servidor NFS, montar compartilhamentos NFS em clientes, e aplicar práticas de segurança. Pratique essas técnicas para ganhar confiança na administração de servidores NFS no Linux.
Se tiver dúvidas ou sugestões, deixe um comentário no blog NerdExpert.com.br. Na próxima aula, exploraremos a configuração de servidores Samba no Linux.
Sou um profissional na área de Tecnologia da informação, especializado em monitoramento de ambientes, Sysadmin e na cultura DevOps. Possuo certificações de Segurança, AWS e Zabbix.