На клиенте CentOS7, при запуске mount от имени пользователя root (во всех случаях), если я использую это правило iptables -
-A OUTPUT -i eth0 -p tcp --dport 2049 -m state --state NEW,ESTABLISHED -j ACCEPT
... монтирование NFS4 проходит нормально.
Но если я ограничиваю правило пользователем root -
-A OUTPUT -i eth0 -p tcp --dport 2049 -m owner --uid-owner root -m state --state NEW,ESTABLISHED -j ACCEPT
... iptables блокирует монтирование. В / var / log / messages я вижу-
Dec 7 14:00:29 nfsclient kernel: IPtables DROP DEFAULT OUT: IN= OUT=eth0 SRC=<client IP> DST=<server IP> LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=63737 DF PROTO=TCP SPT=987 DPT=2049 WINDOW=26883 RES=0x00 SYN URGP=0
... откуда возникает вопрос, «кто монтирует общий ресурс NFS?» или «почему IPtables блокирует когда указан пользователь root? "
Из iptables -m owner --help
:
owner match options:
[!] --uid-owner userid[-userid] Match local UID
Вам необходимо указать UID, а не имя пользователя. Вместо этого попробуйте:
-A OUTPUT -i eth0 -p tcp --dport 2049 -m owner --uid-owner 0 -m state --state NEW,ESTABLISHED -j ACCEPT