Ve výchozím nastavení některé služby NFS (strana_serveru) používají dobře známé porty, ale některé normálně používají pouze náhodné porty. Použití náhodných portů nefunguje tak dobře s přísnými pravidly brány firewall blokujícími náhodné, ale neznámé porty. Někdy je tedy nejlepší ručně změnit nebo zadat statické porty pro služby NFS (strana_serveru), které se mají používat.
Tento příspěvek popisuje, jak nakonfigurovat služby NFS (na straně serveru), aby se alternativně spouštěly na statických portech.
Přehled
Služby NFS (na straně serveru) zahrnují:
- NLM (správce uzamčení NFS nebo uzamčení v jádře)
- rpc.mountd
- rpc.nfsd
- rpc.rquotad
- rpc.statd
Upozorňujeme, že lockd a rpc.statd běží také na klientech NFS. Také rpc.rquotad není striktně součástí rodiny NFS, ale používá se ke kontrole kvót na souborových systémech sdílených serverem NFS a připojených jedním nebo více klienty NFS.
S NFSv3 rpc.nfsd spolupracuje s LOCKD/NLM, rpc.mountd a rpc.statd. S NFSv4 jsou však nyní všechny tyto interakce začleněny/konsolidovány.
Pro CentOS/RHEL 5 a 6 dodává nfs-utils RPM /etc/sysconfig/nfs jako hlavní konfigurační soubor NFS (na straně serveru). Statické porty pro rpc.nfsd a rpc.rquotad jsou standardně nastaveny na 2049 a 875, protože jsou považovány za dobře známé porty. Jiné služby NFS (na straně serveru), jako je LOCKD/NLM, rpc.mountd a rpc.statd, normálně používají pouze náhodné porty, ale /etc/sysconfig/nfs nabízí pro referenci vzorové hodnoty portů. Ukázkové hodnoty portů jsou dost dobré pro většinu scénářů.
# cat /etc/services nfs 2049/tcp nfsd shilp # Network File System nfs 2049/udp nfsd shilp # Network File System rquotad 875/tcp # rquota daemon rquotad 875/udp # rquota daemon
# cat /etc/sysconfig/nfs # TCP port rpc.lockd should listen on. #LOCKD_TCPPORT=32803 # UDP port rpc.lockd should listen on. #LOCKD_UDPPORT=32769 # Port rpc.mountd should listen on. #MOUNTD_PORT=892 # Port rquotad should listen on. #RQUOTAD_PORT=875 # Port rpc.statd should listen on. #STATD_PORT=662 # Outgoing port statd should used. The default is port # is random #STATD_OUTGOING_PORT=2020
Příklady konfigurace /etc/sysconfig/nfs
Chcete-li zadat LOCKD/NLM pro použití volných statických portů, stačí odkomentovat LOCKD_TCPPORT a LOCKD_UDPPORT pro nastavení nových hodnot portů a poté restartovat službu nfs nebo službu nfslock.
LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769
Chcete-li zadat rpc.mountd, aby používal volný statický port, stačí odkomentovat MOUNTD_PORT pro nastavení nové hodnoty portu a poté restartovat službu nfs.
MOUNTD_PORT=892
Chcete-li zadat rpc.nfsd použití volného statického portu jiného než 2049, stačí odkomentovat RPCNFSDARGS a přidat novou hodnotu portu a poté restartovat službu nfs.
RPCNFSDARGS="-p 20499"
Chcete-li zadat rpc.rquotad, aby používal volný statický port jiný než 875, stačí odkomentovat RQUOTAD_PORT pro nastavení nové hodnoty portu a poté restartovat službu nfs.
RQUOTAD_PORT=8755
Chcete-li zadat rpc.statd, aby používal volné statické porty, stačí odkomentovat STATD_PORT a STATD_OUTGOING_PORT pro nastavení nových hodnot portu a poté restartovat službu nfslock.
STATD_PORT=662 STATD_OUTGOING_PORT=2020
Řízení služeb
Restartujte službu nfs:
# service nfs restart
Restartujte službu nfslock:
# service nfslock restart
Ověření:
# rpcinfo -p