Nfs

試圖在 firewalld 中查找 NIS 或 NFS 服務的靜態埠

  • January 15, 2019

在我們的從 NIS 伺服器上,我們/etc/sysconfig/network已經設置了

YPSERV_ARGS="-p 944"
YPXFRD_ARGS="-p 945"

OTHER_YPBIND_OPTS="-p 3000"/etc/ypbind.conf裡面_ YPPASSWDD_ARGS="--port 946"_ /etc/sysconfig/yppasswdd

但是在主伺服器上,當make -C /var/yp在 firewalld 上執行和調試啟用時,目標埠 (DPT) 總是會發生變化。它總是UDP。

kernel: FINAL_REJECT: IN=eno3 OUT= MAC=00:0a:f7:e1:f8:6c:00:0a:f7:e1:d3:71:08:00 SRC=nis-slave DST=nis-master LEN=76 TOS=0x00 PREC=0x00 TTL=64 ID=59404 DF PROTO=UDP SPT=1003 DPT=676 LEN=56 

同樣在新的/etc/nfs.conf我們有:

[lockd]
port=4002
udp-port=4002
[mountd]
port=4003
[nfsd]
port=2049
port=4001
outgoing-port=4004

從伺服器中的日誌顯示:ypxfr_callback call: RPC: Unable to receive; errno = No route to host

停止firewalld,一切都很好。那麼什麼服務在使用UDP呢?

古老的 YP/NIS 對防火牆一點也不友好。它實際上早於主機防火牆的廣泛使用。正如您所注意到的,它希望能夠在任意埠上進行通信。過去 20 年左右的大多數協議不再這樣做,而是在可預測(或至少可配置)的埠上執行。

作為一種解決方法,如果您只有一個 IP 地址,您只需將其添加到trustedfirewalld 中的區域,所有來自該 IP 地址的流量都將被允許。(來源也可以通過 CIDR 範圍或 MAC 地址給出。)

firewall-cmd --zone=trusted --add-source=10.193.35.1 [--permanent]

引用自:https://serverfault.com/questions/949040