smb与nfs

1 篇文章 0 订阅

NFS 文件共享

NFS是Network File System 的缩写,主要功能是通过网络让不同的机器彼此之间共享文件或目录,可以通过挂载(mount)的方式将NFS服务器端共享的数据文件目录挂载到NFS客户端本地中。NFS协议有多个版本:Linux支持版本4、版本3和版本2,而大多数系统管理员熟悉的是NFSv3
nfs在不同主机的共享
在服务机上的设置:

 [root@nfs-clinent ~]# vim /etc/exports
 [root@nfs-client mnt]# mkdir /westosshare
[root@nfs-client mnt]# touch /westosshare/westosfile{1..3}
[root@nfs-client mnt]# exportfs -rv
exporting 172.25.254.19:/westosshare

vim /etc/exports
这里写图片描述

**在另一台主机上
[root@foundation19 mnt]# showmount -e 172.25.254.119
Export list for 172.25.254.119:
/westosshare 172.25.254.19
[root@foundation19 mnt]# mount 172.25.254.119:/westosshare /mnt/
[root@foundation19 mnt]# ls
westosfile1 westosfile2 westosfile3
可以看到mnt下的创建的三个文件,挂载实现的目录共享。

默认目录自动挂载

客户端安装软件
[root@nfs-clinent ~]# yum install autofs -y
[root@nfs-clinent ~]# systemctl restart autifs.server
[root@nfs-clinent ~]# cd /net
[root@nfs-clinent ~]# cd 172.25.254.119
[root@nfs-clinent ~]# ls
westos
[root@nfs-clinent ~]# cd /westosshare
这样就可以看到他的共享目录下面的内容,而且是自动挂载,退出目录后默认5分钟自动卸载。他可以修改
在/etc/autofs.conf中可以修改。
这里写图片描述
4、 指定目录的自动挂载

在客户端修改配置文件
[root@nfs-clinent ~]# vim /etc/auto.master
添加一行,/nfs是指共享目录的第一层目录,/etc/auto.nfs他是master的子文件
/westosshare /etc/auto.nfs
[root@nfs-clinent ~]#vim /etc/auto.nfs
共享目录的第二层目录
* 172.25.254.119:/&
这个意思是前面的第二层目录和第一层目录是一致的,如果你挂载了就表示你 自动挂载的目录为/westosshare
这里写图片描述
**

samba

**

*samba 服务器的安装及调试

[root@samba Desktop]# yum install samba-client.x86_64 samba-common.x86_64 samba.x86_64 -y #安装软件
[root@samba Desktop]# systemctl start smb #开启服务
[root@samba Desktop]# systemctl stop firewalld.service #关闭火墙
[root@samba Desktop]# getsebool -a | grep samba #查看samba服务状态
[root@samba Desktop]# pdbedit -L #列出 samba 用户
[root@samba Desktop]# smbpasswd -a student 添加samba用户(此用户必须是存在的

查看smb的共享目录

查看自己的共享目录,添加目录后默认共享家目录

[root@smbserver ~]# smbclient -L //172.25.254.119 -U student
Enter student's password: 
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

    Sharename       Type      Comment
    ---------       ----      -------
    IPC$            IPC       IPC Service (Samba Server Version 4.1.1)
    student         Disk      Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

    Server               Comment
    ---------            -------
    SMBSERVER            Samba Server Version 4.1.1

    Workgroup            Master
    ---------            -------
    MYGROUP              SMBSERVER

登陆smb 的共享目录

[root@smbserver ~]# smbclient //172.25.254.119/student -U student
Enter student's password: 
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*
smb: \> 

此时ls的时候看不到smb的共享目录,是因为selinux中的samba_enable_home_dirs没有打开
**同时还需要在配置文件中设定smb用户可以访问自己的家目录
就是/etc/samba/smb.conf中第30行*
进行如下操作:

 getsebool -a | grep samba
 **此方式修改针对所有的目录,一但开放,selinux 不保护目录**
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off     #只读
samba_export_all_rw --> off #可读可写
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
use_samba_home_dirs --> off
virt_sandbox_use_samba --> off
virt_use_samba --> off
 setsebool -P samba_enable_home_dirs on #允许进入家目录
 vim /etc/samba/smb.conf 
 vim /etc/samba/smb.conf

这里写图片描述

然后再次进入查看的时候就会有显示内容

[root@smbserver ~]# smbclient //172.25.254.119/student -U student
params.c:Parameter() - Ignoring badly formed line in configuration file: setsebool -P samba_enable_home_dirs on
Enter student's password: 
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls
  .                                   D        0  Fri Aug 18 04:32:16 2017
  ..                                  D        0  Fri Aug 18 04:55:08 2017
  .bash_logout                        H       18  Wed Jan 29 07:45:18 2014
  .bash_profile                       H      193  Wed Jan 29 07:45:18 2014
  .bashrc                             H      231  Wed Jan 29 07:45:18 2014
  .ssh                               DH        0  Thu Jul 10 18:19:10 2014
  .config                            DH        0  Fri Aug 18 04:07:03 2017
  .cache                             DH        0  Fri Aug 18 04:07:03 2017
  mail                                D        0  Fri Aug 18 04:31:14 2017
  .bash_history                       H      259  Fri Aug 18 04:32:16 2017

共享目录的基本设定

[root@smbserver ~]# vim /etc/samba/smb.conf 
[root@smbserver ~]# mkdir /linux
[root@smbserver ~]# touch /linux/file{1..5}
[root@smbserver ~]# vim /etc/samba/smb.conf 
[root@smbserver ~]# systemctl restart smb.service 

vim /etc/samba/smb.conf
这里写图片描述
这里写图片描述

workgroup = linux #修改工作组(MYGROUP——>linux)
[DATA]
common = local directory linux #共享说明
path = /linux #共享文件路径 

这时需要对linux的安全上下文作更改

[root@smbserver ~]# ls -Z /linux
-rw-r--r--. root root unconfined_u:object_r:default_t:s0 file1
-rw-r--r--. root root unconfined_u:object_r:default_t:s0 file2
-rw-r--r--. root root unconfined_u:object_r:default_t:s0 file3
-rw-r--r--. root root unconfined_u:object_r:default_t:s0 file4
-rw-r--r--. root root unconfined_u:object_r:default_t:s0 file5
[root@smbserver ~]# semanage fcontext -a -t samba_share_t '/linux(/.*)?'
[root@smbserver ~]# restorecon -FvvR /linux/刷新安全上下文

再次登陆查看:
就会发现在linux下建立的五个文件可以显示,
这里写图片描述

*匿名用户访问

这里写图片描述
map to guest = bad user #允许匿名用户访问
guest ok = yes #允许匿名用户访问

这里写图片描述

这里写图片描述
mount //172.25.254.119/linux /mnt -o username=guest #挂载
[root@smbserver mnt]# vim /etc/fstab开机自动挂载
这里写图片描述

samba 共享目录参数管理

[DATA]
common = local directory linux
path = /linux
guest ok = yes
writable = yes #所有用户可写
write list = tom | +/@tom #tom | tom组可写
valid user = tom #tom | tom组可登陆
browseable = no #是否允许浏览
admin user = student #student以超级用户的身份登陆
[root@samba linux]# id student
uid=1000(student) gid=1000(student) groups=1000(student),10(wheel)
[root@samba linux]# id tom
uid=1001(tom) gid=1001(tom) groups=1001(tom)
[root@samba linux]# usermod -G tom student #将 student 用户放入 tom 组里
[root@samba linux]# id student
uid=1000(student) gid=1000(student) groups=1000(student),1001(tom)

测试:
错误1:NT_STATUS_NO_SUCH_FILE listing -fr #系统没有开放权限
错误2:rm: cannot remove ‘file1’: Permission denied #文件权限不够

访问控制

hosts allow =           #仅允许
hosts deny =           #仅拒绝
valid users =          #当前共享的有效用户
valid users = westos    #当前共享的有效用户为westos
valid users = @westos    #当前共享的有效用户为westos组
valid users = +westos     #当前共享的有效用户为westos组

读写控制
所有用户均可写
chmod o+w /mnt
setsebool -P samba_export_all_rw on
vim /etc/samba/smb.conf
writable = yes
 设定指定用户可写
write list = student     #可写用户
write list = +student    #可写用户组
write list = @student      #也是可写用户组
admin users = westos     #共享的超级用户指定

smb多用户共享

1.保护服务器信息

[root@foundation19~]# yum install cifs-utils -y
[root@foundation19 ~]# vim /root/smbpassfile
[root@foundation19 ~]# cat /root/smbpassfile
username=kiosk
password=redhat
[root@foundation19 ~]# mount //172.25.254.119/DATA /mnt -o credentialss=/root/smbpassfile,multiuser,sec=ntlmssp

这样挂载之后,访问的用户需要通过认证

[root@foundation19 ~]# smbpasswd -a kiosk

将 kiosk 加入到samba 用户里面
New SMB password:
Retype new SMB password:
Added user kiosk.
[root@foundation19 ~]# su - kiosk
Last login: Sat Mar 18 08:22:58 CST 2017 on :0
[kiosk@foundation19 ~]cd/mnt[kiosk@foundation30mnt] ls
ls: reading directory .: Permission denied

**[kiosk@foundation19 mnt]$ cifscreds add 172.25.254.119
#认证用户**

Password:
[kiosk@foundation19 mnt]$ ls
file2 file3 file4 file5
					<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-8cccb36679.css" rel="stylesheet">
            </div>
				</article>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值