linux文件共享服务的配置使用(NFS,FTP,SMB和CIFS)

最近在做网络有关的工作,空闲时整理了一下常见的文件共享服务使用,参考了不少文章。

其实归根结底,操作都是类似的。
分为服务端和客户端,其中在服务端进行主要配置,客户端直接进行挂载或者访问。

服务端一般执行操作客户端一般执行操作
1. 安装软件包1. 安装软件包
2. 编辑配置文件2. 编辑配置文件(挂载点,账号信息等配置)
3. 注册用户/允许匿名访问3. 挂载访问或者直接访问
4. 开启服务
5. 防火墙放行

1. NFS服务

1.1 预置条件:

准备两台主机A和B

  • A:90.90.16.12
  • B:90.90.15.249
  • 两台主机都安装了net-tools和nmap-ncat软件包

1.2 配置步骤

服务端执行以下操作:

  1. 安装软件包:

    • 主机A和B都执行yum install nfs-utils命令安装nfs软件
    • 主机A执行mkdir -p /share/nfs_share命令创建共享文件夹
  2. 配置文件

    • 主机A执行vi /etc/exports命令配置导出目录,其中内容为/share/nfs_share 90.90.15.249 (rw,sync),含义为将/share/nfs_share目录共享给90.90.15.249主机,权限为读写和同步
  3. 启动服务

    • 主机A执行systemctl start nfs命令启动nfs服务
    • 主机A执行systemctl status nfs命令查看nfs服务是否开启.
  4. 开放防火墙

    • 主机A执行firewall-cmd --add-service=nfsfirewall-cmd --add-service=mountdfirewall-cmd --add-service=rpc-bind命令在防火墙中添加nfs相关服务
    • 主机A执行vim /share/nfs_share/file1命令输入create file1 from 90.90.16.12文字在共享目录中添加file1文件。

客户端

客户端直接挂载远程目录,之后直接访问即可

  • 主机B执行showmount -e 90.90.16.12命令查看主机A的共享目录
  • 主机B执行mkdir -p /share/nfs_database/创建nfs共享文件挂载目录,
    执行mount -t nfs 90.90.16.12:/share/nfs_share /share/nfs_database
    命令将主机A的nfs_share目录共享到主机B的nfs_database目录下。
  • 通过cat /share/nfs_database/file1命令可看到被共享的文件file1

1.3 后处理步骤

主机B(客户端)行为:

  1. 主机B执行umount /share/nfs_database/命令取消挂载
  2. 主机B执行rm -rf /share/nfs_database 命令删除共享文件挂载点
  3. 主机B执行yum remove nfs命令卸载nfs软件包

主机A(服务端)行为:

  1. 主机A执行systemctl stop nfs命令关闭nfs服务
  2. 主机A执行firewall-cmd --remove-service=nfsfirewall-cmd --remove-service=mountdfirewall-cmd --remove-service=rpc-bind命令从防火墙中移除nfs相关服务
  3. 主机A和B执行yum remove nfs命令卸载nfs软件包
  4. 主机A执行rm -rf /share/nfs_share命令删除共享文件夹

2. FTP服务

2.1 预置条件

准备两台主机A和B

  • B:90.90.16.12
  • A:90.90.15.249
  • 两台主机都安装了net-tools和nmap-ncat软件包

2.2 配置步骤

服务端

  1. 安装软件包
    • 主机A执行yum install vsftpd命令安装vsftpd软件
  2. 启动服务
    • 主机A执行systemctl start vsftpd命令启动vsftpd服务
    • 主机A执行netstat -tunlp | grep 21命令查看通信端口21是否开启.
  3. 创建用户
    • 主机A执行useradd ftpuser命令创建一个账户,主机A执行passwd ftpuser命令给ftpuser用户设置密码ftpuser。这是由于vsftpd默认不开放匿名用户
  4. 开放防火墙
    • 主机A执行firewall-cmd --add-service=ftp命令在防火墙中添加ftp服务

客户端

  1. 安装软件包
    • 主机B执行yum install ftp命令安装ftp软件
  2. 直接连接
    • 主机B执行ftp 90.90.15.249命令连接主机A的ftp服务器,输入账号ftpuser和密码ftpuser即可连接。

2.3 后处理步骤

主机B(客户端):

  1. 主机B执行yum remove ftp命令卸载ftp软件包

主机A(服务端):

  1. 主机A执行systemctl stop vsftpd命令关闭vsftpd服务
  2. 主机A执行firewall-cmd --remove-service=ftp命令从防火墙中移除ftp服务
  3. 主机A执行userdel ftpuser命令删除ftpuser账户
  4. 主机A执行yum remove vsftpd命令卸载vsftpd软件包

3. SMB服务

3.1 预置条件

准备两台主机A和B

  • Linux主机A的ip地址:90.90.15.249
  • Linux主机B的ip地址:90.90.16.12
  • Windows主机C的ip地址:10.81.18.229
  • 两台主机都安装了net-tools和nmap-ncat软件包

3.2 配置步骤

服务端

  1. 安装软件包
    • 主机A执行yum install samba命令安装samba软件
  2. 创建用户
    • 主机A执行useradd -s /sbin/nologin smbuser命令创建一个专门访问samba服务的账号
    • 主机A执行mkdir -p /share/smb_share命令创建一个共享目录,
      执行chown -R smbuser.smbuser /share/smb_share/命令将共享目录归属设置为samba用户
    • 主机A执行smbpasswd -a smbuser命令将smbuser用户添加到samba服务的用户数据库,设置密码为smbuser后,
  3. 编辑服务端配置文件
    • 主机A执行vim /etc/samba/smb.conf命令编辑配置,在最后追加:
      [smbuser]
              # 共享路径
              path = /share/smb_share
              # 是否只读
              read only = no
              # 是否匿名
              guest ok = yes
      
      其中[smbuser]表示用户smbuser的配置
  4. 启动服务
    • 主机A执行systemctl restart smbsystemctl restart nmb命令重启smb服务
  5. 开放防火墙
    • 主机A执行firewall-cmd --add-service=samba命令在防火墙中添加samba服务
    • 主机A执行vim /share/smb_share/file1命令写入 create file1 from 90.90.15.249

客户端

  1. 安装软件包
    • 主机B执行yum install samba-client命令安装文件共享软件包
  2. 直接访问共享目录
    • 主机B执行smbclient //90.90.15.249/smbuser -U smbuser输入密码smbuser进入共享目录,执行ls命令可以看到主机A共享的文件file1
    • 主机C使用组合键windows+R打开运行窗口,输入\90.90.16.12,输入用户名smbuser和密码smbuser,即可访问远程共享目录,有预期结果2.

3.3 后处理步骤

主机B(客户端)

  1. 主机B执行yum remove samba-client命令卸载软件包

主机A(服务端)

  1. 主机A执行firewall-cmd --remove-service=samba关闭防火墙的samba服务。
  2. 执行systemctl stop smbsystemctl stop nmb命令关闭samba服务。
  3. 执行vim /etc/samba/smb.conf命令删除[smbuser]下的配置信息。
  4. 执行rm -rf /share/smb_share/命令删除共享文件夹。
  5. 执行smbpasswd -x smbuser命令删除samba数据库中的用户。
  6. 执行userdel smbuser删除smbuser用户。
  7. 执行yum remove samba命令卸载软件包。

4. CIFS服务

4.1 预置条件

准备两台主机A和B

  • Linux主机A的ip地址:90.90.15.249
  • Linux主机B的ip地址:90.90.16.12
  • Windows主机C的ip地址:10.81.18.229
  • 两台主机都安装了net-tools和nmap-ncat软件包

4.2 配置步骤

服务端

  1. 安装软件包
    • 主机A执行yum install samba命令安装samba软件
  2. 创建账户
    • 主机A执行useradd -s /sbin/nologin cifsuser命令创建一个专门访问samba服务的账号
    • 主机A执行mkdir /share/cifs_share命令创建一个共享目录,执行chown -R cifsuser.cifsuser /share/cifs_share/命令将共享目录归属设置为samba用户
    • 主机A执行smbpasswd -a cifsuser命令将cifsuser用户添加到samba服务的用户数据库,设置密码为cifsuser.
  3. 服务端配置
    • 主机A执行vim /etc/samba/smb.conf命令编辑配置,在最后追加:
      [cifsuser]
              path = /opt/cifs_share
              read only = no
              guest ok = yes
      
      其中[cifsuser]表示用户cifsuser的配置
  4. 启动服务
    • 主机A执行systemctl restart smbsystemctl restart nmb命令重启smb服务
  5. 开放防护墙
    • 主机A执行firewall-cmd --add-service=samba命令在防火墙中添加samba服务
    • 主机A执行vim /share/cifs_share/file1命令,输入create file1 from 90.90.15.249保存退出。

客户端

  1. 安装软件包
    • 主机B执行yum install cifs-utils命令安装文件共享软件包
  2. 配置登录账户信息和挂载点
    • 主机B执行touch /root/cifsauth.smb命令创建共享资源账户设置,执行vim /root/cifsauth.smb命令将samba服务的用户名,密码和共享域写入cifsauth.smb文件
      username=cifsuser
      password=cifsuser
      domain=SAMBA
      
      执行chmod 600 /root/cifsauth.smb命令设置文件权限
    • 主机B执行mkdir -p /share/cifs_database命令创建samba服务共享资源目录,执行vim /etc/fstab命令写入挂载信息:
      //90.90.15.249/cifsuser  /share/cifs_database  cifs    credentials=/root/cifsauth.smb  0 0
      
      执行mount -a命令挂载
  3. 访问共享资源
    • 主机B执行cat /share/cifs_database/file1命令即可查看共享资源file1,即可查看共享的文件file1
    • 主机C使用组合键windows+R打开运行窗口,输入\90.90.15.249,输入用户名cifsuser和密码cifsuser,即可访问远程共享目录

4.3 后处理步骤

  1. 主机B执行vim /etc/fstab命令打开文件,删除挂载配置信息,
    执行umount /share/cifs_database命令取消挂载
  2. 主机B执行rm -rf /share/cifs_database命令删除共享工作区,
    执行rm /root/cifsauth.smb命令删除共享账户设置,
    执行yum remove cifs-utils命令卸载软件包
  3. 主机A执行firewall-cmd --remove-service=samba关闭防火墙的samba服务。
    执行systemctl stop smbsystemctl stop nmb命令关闭samba服务。
    执行vim /etc/samba/smb.conf命令删除[cifsuser]下的配置信息。
    执行rm -rf /share/cifs_share/命令删除共享文件夹。
    执行smbpasswd -x cifsuser命令删除samba数据库中的用户。
    执行userdel cifsuser删除用户。
    执行yum remove cifs-utils命令卸载软件包。

参考资料:

  • chatgpt
  • NFS服务安装和配置:https://zhuanlan.zhihu.com/p/399726898
  • NFS服务安装和卸载:https://blog.csdn.net/CancerKing/article/details/128587749
  • Linux安装和配置NFS:https://www.htype.top/2021/827715975980/
  • 显示NFS服务器共享信息的showmount命令:https://www.linuxcool.com/showmount
  • SMB和CIFS的区别:https://www.cnblogs.com/jinanxiaolaohu/p/10550061.html
  • samba服务器搭建和配置:https://www.cnblogs.com/wzgwzg/p/15558926.html
  • smbclient安装和使用:https://blog.csdn.net/qq_34516733/article/details/123047806
  • smbclient命令详解:https://blog.csdn.net/yexiangCSDN/article/details/82867469
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值