NFS高版本漏洞修复方法

Centos8 NFS漏洞修复

  • 由于centos8后,nfs相关的配置发送了变化,无法固定端口方式来做防火墙,由于一般导致漏洞的原因主要是由于showmount -e,所以我们这里采取的方式是nfs server端仅使用v4版本,禁止使用v3版本

  • NFS 服务器支持 NFSv3 和 NFSv4 连接。但是,您还可以将 NFS 配置为只支持 NFS 版本 4.0 及更新的版本。这可最大限度地减少系统上打开的端口的数量和运行的服务,因为 NFSv4 不需要 rpcbind(禁用后,即可实现showmount -e 无法出内容) 服务来侦听网络

  • 另外,您还可以禁用对 RPCBINDMOUNTNSM 协议调用的监听,这在仅使用 NFSv4 的情况下不需要

  • 正常情况下NFS可以使用firewalld进行规避,但是由于k8s默认底层会调用iptables,这里就不采用firewalld方式了

  • 禁用这些额外选项的影响有:

    • 试图使用 NFSv3 从服务器挂载共享的客户端变得无响应。

    • NFS 服务器本身无法挂载 NFSv3 文件系统

NFS配置
# 修改nfs server端配置
vim /etc/nfs.conf
[nfsd]
# debug=0
# threads=8
# host=
# port=0
# grace-time=90
# lease-time=90
# tcp=y
vers2=n 		# 禁用v2协议
vers3=n			# 禁用v3协议
vers4=y			# 启用v4协议
vers4.0=y	  # 启用v4协议
vers4.1=y	  # 启用v4协议
vers4.2=y		# 启用v4协议
# rdma=n
#

# 禁用对 RPCBIND、MOUNT 和 NSM 协议调用的监听(一般情况下这个是可选的,但是在修复漏洞情景下为必做),在仅使用 NFSv4 情况下不需要这些调用。禁用相关服务:
	systemctl mask --now rpc-statd.service rpcbind.service rpcbind.socket

# 重启 NFS 服务器:
	systemctl restart nfs-server
NFS验证
# 以下是仅使用 NFSv4 服务器上 netstat 输出的示例;也禁用了对 RPCBIND、MOUNT 和 NSM 的侦听。这里,nfs 是唯一侦听 NFS 的服务:
# nfs server节点运行命令
[root@localhost ~]# netstat -tulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 localhost.locald:domain 0.0.0.0:*               LISTEN      3454/dnsmasq
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN      2667/sshd
tcp        0      0 0.0.0.0:nfs             0.0.0.0:*               LISTEN      -
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      2667/sshd
tcp6       0      0 [::]:nfs                [::]:*                  LISTEN      -
udp        0      0 localhost.locald:domain 0.0.0.0:*                           3454/dnsmasq
udp        0      0 0.0.0.0:bootps          0.0.0.0:*                           3454/dnsmasq


# showmont -e 验证,本机和其他机器运行命令验证		
[root@localhost ~]# showmount -e nfs_server_ip  # 这里因该要卡死,无法出现挂载目录
clnt_create: RPC: Timed out

# nfs挂载功能验证,要能挂载正常
	mount -t nfs nfs_server_ip:/data/nfsshare /mnt

# 取消挂载,挂载成功后,一定要记得取消挂载
	umount /mnt
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺仔_牛奶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值