本例要求在虚拟机 server0 上发布两个共享文件夹,具体要求如下:
此服务器必须是 STAFF 工作组的一个成员 发布目录 /common,共享名为 common 发布目录 /devops,共享名为 devops 这两个共享必须是可浏览的,只有 example.com 域内的客户端可以访问 用户 harry 对共享 common 只读,密码是 migwhisk 用户 kenji 对共享 devops 只读,密码是 atenorth 用户 chihiro 对共享 devops 可读写,密码是atenorth 1.2 方案Samba的用途:为多个客户机提供共享使用的文件夹。
Samba服务端:软件包samba、系统服务smb
Samba客户端:软件包samba-clIEnt和cifs-utils、客户端工具smbclIEnt
传输协议及端口:TCP 139、TCP 445
Samba服务端配置文件:/etc/samba/smb.conf
Samba共享账号:存在独立的账号数据文件里,必须有同名系统账号(方便给权限)
Samba账号管理工具:
pdbedit -a 用户名 pdbedit -L [用户名] pdbedit -x 用户名测试Samba共享资源:
smbclIEnt -L 服务器地址 【密码为空(直接回车)】 smbclIEnt -U 用户名 //服务器地址/共享名 【需要密码】 1.3 步骤实现此案例需要按照如下步骤进行。
步骤一:在服务器server0发布Samba共享文件夹
1)安装软件包samba
[[email protected] ~]# yum -y install samba .. ..2)创建共享账号
添加共享账号harry,密码为migwhisk:
[[email protected] ~]# useradd harry [[email protected] ~]# pdbedit -a harry //根据提示设好密码migwhisk new password: retype new password:添加共享账号kenji,密码为atenorth:
[[email protected] ~]# useradd kenji [[email protected] ~]# pdbedit -a kenji //根据提示设好密码atenorth new password: retype new password:添加共享账号chihiro,密码为atenorth:
[[email protected] ~]# useradd chihiro [[email protected] ~]# pdbedit -a chihiro //根据提示设好密码atenorth new password: retype new password:确认共享账号:
[[email protected] ~]# pdbedit -L harry:1003: chihiro:1005: kenji:1004:3)准备共享文件夹
[[email protected] ~]# mkdir /common [[email protected] ~]# mkdir /devops [[email protected] ~]# setfacl -m u:chihiro:rwx /devops //配置写入权限4)调整SElinux开关策略,允许发布可写的Samba共享资源
[[email protected] ~]# getsebool -a | grep ^samba_exp //默认配置 samba_export_all_ro --> off samba_export_all_rw --> off [[email protected] ~]# setsebool -P samba_export_all_rw=on //永久打开设置 [[email protected] ~]# getsebool -a | grep ^samba_exp //查看结果 samba_export_all_ro --> off samba_export_all_rw --> on5)配置共享目录
[[email protected] ~]# vim /etc/samba/smb.conf [global] workgroup = STAFF .. .. [common] path = /common hosts allow = 172.25.0.0/24 [devops] path = /devops hosts allow = 172.25.0.0/24 write List = chihiro6)启动系统服务smb,并设置开机自启
[[email protected] ~]# systemctl restart smb [[email protected] ~]# systemctl enable smb ln -s ‘/usr/lib/systemd/system/smb.service‘ ‘/etc/systemd/system/multi-user.target.wants/smb.service‘ [[email protected] ~]# netstat -antpu | grep smb tcp 0 0 0.0.0.0:445 0.0.0.0:* ListEN 4709/smbd tcp 0 0 0.0.0.0:139 0.0.0.0:* ListEN 4709/smbd步骤二:在客户机desktop0测试Samba共享资源
1)安装软件包samba-clIEnt
[[email protected] ~]# yum -y install samba-clIEnt .. ..2)浏览目标主机提供了哪些共享资源
[[email protected] ~]# smbclIEnt -L server0.example.com Enter root‘s password: //此处无需输入密码,直接回车 Anonymous login successful Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1] Sharename Type Comment --------- ---- ------- common disk devops disk IPC$ IPC IPC Service (Samba Server Version 4.1.1) Anonymous login successful Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1] Server Comment --------- ------- Workgroup Master --------- -------3)连接到目标主机的共享目录
[[email protected] ~]# smbclIEnt -U harry //server0.example.com/common Enter harry‘s password: //输入harry的密码 Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1] smb: \> ls //检查是否可列出目录内容 . D 0 Sun Nov 27 03:07:29 2016 .. D 0 Sun Nov 27 03:07:32 2016 40913 blocks of size 262144. 27826 blocks available smb: \> quit //退出smb:\>交互环境 [[email protected] ~]# 2 案例2:多用户Samba挂载 2.1 问题本例要求在虚拟机 desktop0 上访问 server0 提供的共享 devops,特性如下:
将此共享永久挂载在 /mnt/dev 目录 挂载时以用户 kenji 作为认证 必要的时候,任何普通用户都可以通过用户 chihiro 来临时获取写的权限 2.2 方案Samba客户端的multiuser挂载:支持切换访问Samba共享的用户身份,但不需要重新挂载共享资源。挂载参数需要添加“multiuser,sec=ntlmssp”,客户机上的普通用户可以通过cifscreds命令提交新的身份凭据。
在客户端挂载Samba共享目录,需要软件包cifs-utils的支持。
为访问网络资源配置开机挂载时,注意添加参数“_netdev”,表示等客户机网络配置可用以后才挂载对应资源。
2.3 步骤实现此案例需要按照如下步骤进行。
步骤一:挂载Samba共享目录
1)创建挂载点
[[email protected] ~]# mkdir /mnt/dev2)安装cifs-utils软件包
[[email protected] ~]# yum -y install cifs-utils .. ..3)配置开机挂载
[[email protected] ~]# vim /etc/fstab .. .. //server0.example.com/devops /mnt/dev cifs username=kenji,password=atenorth,_netdev 0 04)测试挂载配置
[[email protected] ~]# mount -a [[email protected] ~]# df -hT /mnt/dev filesystem Type Size Used Avail Use% Mounted on //server0.example.com/devops cifs 10G 3.2G 6.8G 32% /mnt/dev步骤二:启用multiuser多用户支持
1)修改挂载配置,添加多用户支持
[[email protected] ~]# vim /etc/fstab .. .. //server0.example.com/devops /mnt/dev cifs username=kenji,multiuser,sec=ntlmssp,_netdev 0 0 [[email protected] ~]# umount /mnt/dev //卸载此共享 [[email protected] ~]# mount /mnt/dev //重新挂载此共享2)验证多用户访问
切换到普通用户student验证,无权访问挂载点/mnt/dev:
[[email protected] ~]# su - student Last login: Sun Nov 27 03:51:32 CST 2016 on pts/0 [[email protected] ~]$ ls /mnt/dev ls: cannot access /mnt/dev: Permission denIEd以共享用户chihiro身份提交新的访问凭据,再次验证,对挂载点/mnt/dev可读写:
[[email protected] ~]$ cifscreds -u chihiro add server0.example.com Password: //输入共享账号chihiro的密码 [[email protected] ~]$ touch /mnt/dev/a.txt [[email protected] ~]$ ls /mnt/dev/a.txt /mnt/dev/a.txt 3 案例3:普通NFS共享的实现 3.1 问题本例要求在虚拟机 server0 上配置NFS服务,完成以下任务:
只读的方式共享目录 /public,只能被 example.com 域中的系统访问 可读写共享目录/protected,能被 example.com 域中的系统访问然后在虚拟机 desktop0 上访问NFS共享目录
将 server0 的 /public 挂到本地 /mnt/nfsmount 这些文件系统在系统启动时自动挂载 3.2 方案对于普通NFS共享来说:
服务端需要运行系统服务 nfs-server.service 客户端不需要运行特定的系统服务配置NFS共享目录的记录格式:
文件夹绝对路径 客户地址1(ro或rw等控制参数) 客户地址2(ro或rw等控制参数) .. .. 3.3 步骤实现此案例需要按照如下步骤进行。
步骤一:在server0上发布NFS共享目录
1)准备需要共享的文件夹
[[email protected] ~]# mkdir /public [[email protected] ~]# mkdir /protected2)建立NFS共享配置
[[email protected] ~]# vim /etc/exports /public 172.25.0.0/24(ro) /protected 172.25.0.0/24(rw)3)启动系统服务nfs-server,并设置开机自启
[[email protected] ~]# systemctl restart nfs-server [[email protected] ~]# systemctl enable nfs-server ln -s ‘/usr/lib/systemd/system/nfs-server.service‘ ‘/etc/systemd/system/nfs.target.wants/nfs-server.service‘步骤二:在desktop0上挂载NFS共享目录/public
1)创建挂载点
[[email protected] ~]# mkdir /mnt/nfsmount2)列出server0上提供的NFS共享资源
[[email protected] ~]# showmount -e server0.example.com Export List for server0.example.com: /protected 172.25.0.0/24 /public 172.25.0.0/243)配置开机挂载server0的NFS共享目录/public
[[email protected] ~]# vim /etc/fstab .. .. server0.example.com:/public /mnt/nfsmount nfs _netdev 0 04)测试挂载配置
[[email protected] ~]# mount -a [[email protected] ~]# df -hT /mnt/nfsmount/ filesystem Type Size Used Avail Use% Mounted on server0.example.com:/public nfs4 10G 3.2G 6.8G 32% /mnt/nfsmount 总结以上是内存溢出为你收集整理的Samba服务 NFS服务全部内容,希望文章能够帮你解决Samba服务 NFS服务所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)