compartilhamento NFS com interface personalizada

2

Eu tenho 4 NIC no meu servidor: eth0 , eth1 , eth2 , eth3 . É um servidor de armazenamento com vários discos. Eu tenho três grupos de volume: vg_share1 , vg_share2 , vg_share3 . Eu quero compartilhar esses grupos de volume com diferentes NICs assim:

vg_share1 --(NFS Share)--> Shared via eth1
vg_share2 --(NFS Share)--> Shared via eth2
vg_share3 --(NFS Share)--> Shared via eth3

Como posso fazer isso?

    
por Daniel Gordi 19.06.2015 / 11:42

3 respostas

2

Você não pode limitar o endereço IP de entrada, mas pode limitar quais IPs de origem podem acessar um sistema de arquivos específico, assim:

/path/to/export      192.168.0.0/255.255.255.0(rw)
/path/to/otherexport 192.168.1.0/255.255.255.0(ro)

Estou assumindo que suas NICs individuais também estão em redes individuais; você pode limitar as coisas dessa maneira.

    
por 19.06.2015 / 13:05
1

Apenas compartilhe seus sistemas de arquivos normalmente, o servidor NFS, por padrão, escuta em todas as interfaces.

No cliente, você pode direcionar o compartilhamento a ser montado por endereço IP (ou nome DNS, se configurado).

NFS Server - 0.0.0.0:2049 - ip address 1 <- client a mount vg_share1
                          - ip address 2 <- client b mount vg_share2
                          - ip address 3 <- client c mount vg_share3

Você também pode dar uma olhada nas interfaces ligadas. Usando interfaces ligadas, você também pode implementar alguma forma de tolerância a falhas e sobreviver a conexões se um link falhar. Com interfaces conectadas, você pode até configurar vários endereços IP, VLANs, etc.

NFS server - 0.0.0.0:2049 - bond0 <- client a, b, c mount their corresponding mounts

Visão geral da interface vinculada (com VLANs):

eth1 \         / vlan x - address a
eth2 -> bond0 <- vlan y - address b
eth3 /         \ vlan z - address c

É claro que você também pode configurar os endereços IP sem VLANs também.

    
por 19.06.2015 / 12:35
1

O servidor NFS depende do RPC para rotear conexões entre o (s) servidor (es) nfs e o (s) cliente (s). De acordo com a% man_de% manpage:

-H  or  --host hostname
          specify a particular hostname (or address) that NFS requests will be accepted on. By default, rpc.nfsd will accept NFS requests on all known network addresses.
          Note  that lockd (which performs file locking services for NFS) may still accept request on all known network addresses.  This may change in future releases of
          the Linux Kernel. This option can be used multiple time to listen to more than one interface.

Portanto, você pode configurar a restrição, em certa medida, no lado do servidor NFS, adicionando o nome do host atribuído ao IP / NIC no arquivo de configuração rpc.nfsd(8) .

Por exemplo:

cat /etc/hosts

127.0.0.1  localhost.localdomain localhost
::1        localhost6.localdomain6 

# Public network interface
123.312.222.111    myhostname.on.linedotcom

# Local network interface
192.168.1.1    myhostname.mydomain.lan

Em seguida, adicione o nome do host da "Interface de rede local" à seção /etc/nfs.conf do arquivo de configuração do NFS nfsd

/etc/nfs.conf

Dessa forma, o daemon [nfsd] hostname=myhostname.mydomain.lan atende apenas a essa interface, ignorando a interface de rede pública.

Além disso, defina os parâmetros corretos no arquivo de configuração rpcbind , indicando apenas a rede local / subdomínio permitido para montar os compartilhamentos de arquivos de rede.

/etc/exports

Configure seu Firewall de acordo

Separe suas Placas de Interface de Rede (NIC) em diferentes zonas, por exemplo. Ou, se estiver usando cat /etc/exports /srv/exampleshare 192.168.1.0/24(nfsoptionshereplzreplace) , torne as portas apropriadas abertas apenas na rede ou no subdomínio específico.

    
por 07.11.2017 / 21:08

Tags