linux的nfs端口111,【NFS】NFS设置固定端口,添加防火墙规则[通俗易懂]

linux的nfs端口111,【NFS】NFS设置固定端口,添加防火墙规则[通俗易懂]NFSserver启动时会随机启动多个端口并向RPC注册,这样如果使用iptables对NFSsever端口进行限制就会有点麻烦,可以更改配置文件固定NFS服务相关端口。以前配置的nfs端口一直是通过rpcinfoxx.xx.xx.xx这个命令查找到需要放行的端口,然后在防火墙中放行这个端口,每次f服务器断电重启之后,都需要重新设置防火墙,我们可以设置固定端口,这样设置固定端口以后即便重…

大家好,又见面了,我是你们的朋友全栈君。

NFS server启动时会随机启动多个端口并向RPC注册,这样如果使用iptables对NFS sever 端口进行限制就会有点麻烦,可以更改配置文件固定NFS服务相关端口。

以前配置的nfs端口一直是通过rpcinfo xx.xx.xx.xx 这个命令查找到需要放行的端口,然后在防火墙中放行这个端口,每次f服务器断电重启之后,都需要重新设置防火墙,我们可以设置固定端口,这样设置固定端口以后即便重启机器也很方便挂载,如果不设置固定端口,机器或服务重启后之前添加的iptables规则就失效了!

9fb004b30f1e

下面的是没有设置固定端口时的情况:

# rpcinfo  -p

# rpcinfo nfs_sever_ip

9fb004b30f1e

设置固定端口:

编辑 /etc/sysconfig/nfs 文件:

#  vim    /etc/sysconfig/nfs

添加如下内容:

###################

RQUOTAD_PORT=30001

LOCKD_TCPPORT=30002

LOCKD_UDPPORT=30002

MOUNTD_PORT=30003

STATD_PORT=30004

###################

9fb004b30f1e

如果 nlockmgr Port 仍然无法修改,则要修改 /etc/sysctl.conf

# cp /etc/sysctl.conf /etc/sysctl.conf.$(date +%F)

fs.nfs.nlm_tcpport=30002

fs.nfs.nlm_udpport=30002

# sed -i ‘$a fs.nfs.nlm_tcpport=30002\nfs.nfs.nlm_udpport=30002’ /etc/sysctl.conf

刷新配置生效:

# sysctl -p

# systemctl restart rpcbind

# systemctl restart nfs-server

# systemctl restart nfs-lock

# systemctl restart nfs-idmap

重启服务后再查看端口:

9fb004b30f1e

添加iptables规则:

# yum -y install iptables iptables-services

命令行添加:

# iptables  -A INPUT -p tcp -m tcp  –dport 111 -j ACCEPT

# iptables  -A INPUT -p udp -m udp  –dport 111 -j ACCEPT

# iptables  -A INPUT -p tcp -m tcp  –dport 2049 -j ACCEPT

# iptables  -A INPUT -p udp -m udp  –dport 2049 -j ACCEPT

# iptables  -A INPUT -p tcp -m tcp    –dport 30001:30004 -j ACCEPT

# iptables  -A INPUT -p udp -m udp  –dport 30001:30004 -j ACCEPT

配置文件添加:

# vim /etc/iptables.rules

9fb004b30f1e

保存防火墙规则:

# systemctl  restart    iptables

查看防火墙规则:

# iptables -nvL –line

9fb004b30f1e

Red Hat Enterprise Linux7/Storage Administration/Network File System (NFS)

9fb004b30f1e

实际测试中发现,上述操作需要reboot才能生效!

###################################################

用nfs来存储文件,在客户端节点遇到了问题,用df -h的时候系统直接就卡住了。

搜索发现,网上好多遇到这种问题的。

原来是nfs的server其实已经挂了,但是客户端还存在。所以会出现这种情况!

以前开发时就碰到过nfs客户端卡住的情况,umount -f /mnt umount -l /mnt 提示device is busy,并且尝试访问挂载目录、df -h等操作都会使终端卡住,ctrl+c也不能强行退出。

造成这种现象的原因是nfs服务器/网络挂了,nfs客户端默认采用hard-mount选项,而不是soft-mount。

两者的区别是:

soft-mount: 当客户端加载NFS不成功时,重试retrans设定的次数.如果retrans次都不成功,则放弃此操作,返回错误信息 “Connect time out”

hard-mount: 当客户端加载NFS不成功时,一直重试,直到NFS服务器有响应。hard-mount 是系统的缺省值。在选定hard-mount 时,最好同时选 intr , 允许中断系统的调用请求,避免引起系统的挂起。当NFS服务器不能响应NFS客户端的 hard-mount请求时, NFS客户端会显示:”NFS server hostname not responding, still trying”

参考

NFS/Troubleshooting (简体中文)

运维安全之NFS安全

NFSv3 NFSv3针对防火墙端口开通策略

NFS设置固定端口并添加防火墙规则

运维安全之NFS安全

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153608.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql useradd_useradd 创建用户

    mysql useradd_useradd 创建用户useradd创建用户1.命令功能useradd创建一个新用户或者更改默认新用户信息。2.语法格式useraddoptionusernameuseradd-Doption参数选项选项选项说明-c新用户passwd文件中的说明栏(冒号分割第5栏)-d新用户的登录时的家目录-e用户被禁用时间。零时账号日期YYYY-MM-DD格式。-g指定用户对应组,用户组必须为系统现有组名称。-…

    2022年10月24日
    0
  • EFI和EFI Shell命令简介[通俗易懂]

    EFI和EFI Shell命令简介[通俗易懂]EFI是ExtensibleFirmwareInterface的缩写,是介于平台固件和操作系统之间的一层软件接口。EFI是Intel在1998年开始的一个项目演变而来,而在2005年Intel将EFI1.10开源并交由UnifiedEFI开源社区去维护和开发,Intel自己的EFI也就不单独做了,都和开源社区共用一个。现在也通常用EFI来代指UEFI,二者不再有意区分。EFIShell

    2022年7月24日
    26
  • 5G网络切片技术_什么让我读懂了什么

    5G网络切片技术_什么让我读懂了什么据说人类进入现代,最先被工业化的几种技术之一就是做面包。1921年,人类首次发明了面包切片机,随后切片面包开始流行起来。近100年后的今天,继切片面包之后,人类又将面临一件切片技术上的大事——网络切片。与人类走进工业化一样,网络切片也将是人类信息化史上的一次跨越式迈步。何为网络切片?我们经常把网络比喻为交通,车辆是用户,道路是网络。随着车辆的增多,城市道路变得拥堵不堪。为了缓解交通拥堵,交通部门不得不根据不同的车辆、运营方式进行分流管理,比如设置BRT快速公交通道,非机动车专用通道等。网络亦是如此

    2022年10月3日
    0
  • ACM之Java输入输出[通俗易懂]

    ACM之Java输入输出[通俗易懂]一、Java之ACM注意点1. 类名称必须采用public class Main方式命名2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非常之垃圾3. 有些OJ上的题目会直接将OI上的题目拷贝过来,所以即便是题目中有输入和输出文件,可能也不需要,因为在OJ系统中一般是采用标准输入输出,不需要文件4. 在有多行数据输入的情况下

    2022年5月9日
    164
  • Python 获取时间戳_python精确到毫秒时间戳

    Python 获取时间戳_python精确到毫秒时间戳python获取当前时间戳的方法:1、使用time模块,语法为“time.time()”;2、使用datetime模块,语法为“datetime.datetime.now().timestamp()”。使用模块timeimporttimenow=time.time()print(now)1593580247.232345使用模块datetime模块datetime提供了以更面向对象的方式操作…

    2022年10月2日
    0
  • 【转】物业管理与移动互联网科技|微信公众平台,物业app,物业O2O[通俗易懂]

    【转】物业管理与移动互联网科技|微信公众平台,物业app,物业O2O[通俗易懂]【导语】当下,物业管理行业正在接受新科技浪潮的冲击和洗礼,业界企业纷纷探索物业服务的新发展模式。云服务、微社区、微信公众平台、app等,这些本来陌生的词汇在物业管理行业变得耳熟能详。在借助科技手段拓展多种经营,提升竞争力、增加创富能力、开展信息化建设和管理的同时,部分物业服务企业的发展模式和理念又提升了一大步,现代科技推动物业管理行业发展正在成为现实。第一部分:移动互联网改变传统物业管…

    2022年6月22日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号