Day10 samba&NFS(Enginner04)

一、samba服务基础

1.1 用途

为客户机提供共享使用的文件夹

1.2 协议

1.2.1 SMB协议

SMB(Server Message Block)服务器消息块
端口:139/tcp

1.2.2 CIFS协议

CIFS(Common Internet File System)通用网际文件系统
端口tcp/445

1.3 帐号体系

帐号体系与linux系统账户有很大的关联
samba的共享帐号和linux系统帐号名字相同、但密码不同

1.3.1 账户默认禁止本地登陆

useradd harry -s /sbin/nologin

1.4 搭建samba服务准备工作

1.4.1 yum -y install samba

安装samba软件包

1.4.2 useradd username -s /sbin/nologin

创建samba共享帐号
useradd harry -s /sbin/nologin
useradd kenji -s /sbin/nologin
useradd chihiro -s /sbin/nologin

1.4.3 pdbedit -a username

把系统账户添加到samba的账户数据库,并且修改密码
pdbedit -a harry
pdbedit -a kenji
pdbedit -a chihiro

1.4.4 pdbedit -L

列出所有有效的samba账户

1.4.5 /etc/samba/smb.conf

samba的主配置文件
字段解释:
[global]
workgroup = 工作组名 #windows专用
[homes] #家目录共享
[printer] #打印机共享
[共享名]
path = 要共享的文件夹绝对路径
browseable = yes #no为隐藏共享
read only = yes #yes为只读
write list = user #允许写入的用户
valid users = username #有效的用户

1.5 搭建samba只读共享

1.5.1 修改配置文件

89行,修改workgroup为STAFF
追加到配置文件的最后
[common]
path = /common
hosts allow = 172.25.0.0/24

1.5.2 重启服务并设置开机自启动

systemctl restart smb
systemctl enable smb

1.5.3 yum -y install samba-client

安装smaba客户端软件

1.5.4 smbclient -L //172.25.0.11

列出172.25.0.11上共享的目录

1.5.5 smbclient -U harry //172.25.0.11/common

这个包可装可不装。连接\172.25.0.11,进入交互式界面,对\172.25.0.11\common目录的内容进行操作

1.5.6 getsebool -a

查看受SELinux管理的服务布尔值的开关状态

1.5.7 setsebool -P samba_export_all_ro=on

设置SELinux管理的samba服务,它的samba_export_all_ro这个值为on的状态。即对该项功能的开关,需要加-P选项才能永久生效

1.5.8 mount -o ro,user=harry,pass=123 //172.25.0.11/common /mnt/samba

临时挂载服务器的共享文件夹到/mnt/samba

1.5.9 yum -y install cifs-utils

安装cifs软件包

1.5.10 echo "//172.25.0.11/common /mnt/samba cifs user=harry,pass=123,_netdev 0 0" >>/etc/fstab

_netdev这个参数很重要,它表示是一个网络设备,必须等网络服务启动之后再挂载
永久挂载共享目录

1.5.11 mount -a

测试挂载配置是否正确

1.5.12 df -hT

测试挂载是否正常

1.6 搭建samba读写的共享

客户端访问服务端不正常的排错思路:
1.防火墙是否限制
2.服务本身的访问控制
3.SELinux是否限制
4.服务端目录是否有权限

1.6.1 修改配置文件

追加到文件最后
[devops]
path = /devops
write list = chihiro

1.6.2 创建目录及测试文件

mkdir /devops
echo dev >/devops/te.txt

1.6.3 systemctl restart smb

重启samba服务

1.6.4 setsebool samba_export_all_rw=on

设置samba的读写功能为开启(on)
在共享目录中尝试创建文件,还是提示权限不足。原因是服务端本地目录对chihiro用户没有写的权限

1.6.5 setfacl -m u:chihiro:rwx /devops/

单独为chihiro用户添加/devops目录的读写权限

1.7 samba多用户访问

管理员一次挂载,客户端可以临时切换身份对共享目录做写操作

1.7.1 echo ‘//172.25.0.11/devops /mnt/dev cifs user=kenji,pass=123,_netdev,multiuser,sec=ntlmssp 0 0‘ >>/etc/fstab

客户端:
挂载mnt目录。
修改user为kenji
增加multiuser,sec=ntlmssp参数

1.7.2 su - student

客户端:
切换到普通用户

1.7.3 cifscreds add -u chihiro 172.25.0.11

客户端:
切换到chihiro的身份,访问/mnt/dev,可以执行读写操作

1.8 排错

故障现象:
mount -a
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
可能原因:
server没有使用pdbedit添加samba用户

故障现象:
挂载成功后无法创建文件
可能原因:
server samba共享的目录没用setfacl分配写权限
server的setsebool没打开samba_export_all_rw=on

二、配置NFS共享

2.1 概述

为客户机提供共享使用的文件夹

2.2 协议

2.2.1 NFS协议

NFS(Network File System)网络文件系统
端口:2049/TCP、2049/UDP

2.2.2 RPC协议

RPC(Remote Process Call)远程进程调用
端口:111/TCP、111/UDP

2.3 所需软件包

nfs-utils

2.4 服务名称

nfs-server

2.5 搭建只读NFS服务

2.5.1 /etc/exports

NFS的配置文件
echo "/public 172.25.0.0/24(ro)" >>/etc/exports
服务端设置共享目录

2.5.2 systemctr restart nfs-server

重启NFS服务

2.5.3 echo "172.25.0.11:/public /mnt/nfs nfs _netdev 0 0" >>/etc/fstab

添加nfs挂载

2.6 搭建读写NFS服务

2.6.1 echo "/protected 172.25.0.0/24(rw)" >>/etc/exports

服务端设置可读写的共享目录

2.6.2 systemctl restart nfs-server

服务端重启NFS服务

2.6.3 echo "172.25.0.11:/protected /mnt/protected nfs _netdev 0 0" >>/etc/fstab

客户端添加NFS挂载配置文件

2.6.4 mount -a

挂载测试

2.6.5 读写测试

touch /mnt/protected/aaa.txt

2.6.6 no_root_squash参数

不压榨root用户权限,即允许root在nfs共享里面创建的文件还是属于root用户,而不是属于nfsnobody用户
/abc 172.25.0.0/24(rw,no_root_squash)

2.6.7 普通用户访问NFS

当客户端的普通用户访问服务端时,服务端会映射成本地相同uid的用户,然后查找是否存在相同uid的用户。如果有,那么就以本地用户的身份去访问文件夹;如果没有,直接拒绝

2.7 搭建安全的NFS共享

2.7.1 lab nfskrb5 setup

初始化服务端和客户端的ldap环境

2.7.2 LDAP和kerberos

LDAP:网络用户,提供用户名
Kerberos:密码验证。一次密码认证,多次免密登陆
生产环境中会用LDAP验证用户名,再用kerberos验证密码。
用户首次访问时,找LDAP验证用户名,验证通过后再找kerberos验证密码。全部验证通过后,kerberos会给用户颁发令牌(token)
当用户再次访问时,找LDAP验证用户名,验证通过后。服务端发现有token,就不再去找kerberos,直接放行

2.7.3 下载kerberos的密钥文件

服务端:
wget -O /etc/krb5.keytab http://172.25.254.254/pub/keytabs/server0.keytab
客户端:
wget -O /etc/krb5.keytab http://172.25.254.254/pub/keytabs/desktop0.keytab

2.7.4 在/etc/exports增加sec=krb5p参数

服务端:
mkdir -p /protected/project
chown ldapuser0 /protected/project
ls -l /protected/project
echo "/protected 172.25.0.0/24(rw,sec=krb5p)" >>/etc/exports

2.7.5 systemctl restart nfs-secure-server nfs-server

服务端:重启安全nfs服务及nfs服务

2.7.6 echo ‘172.25.0.11:/protected /mnt/nfssecure nfs sec=krb5p,_netdev 0 0‘ >>/etc/fstab

客户端:
mkdir /mnt/nfssecure
ls -l /mnt/nfssecure
tail -1 /etc/fstab

2.7.7 systemctl restart nfs-secure

客户端:重启nfs-secure服务

2.7.8 mount -a

客户端:挂载测试

2.7.9 df -hT

客户端:查看挂载

2.7.10 ssh [email protected]

远程登陆server0
touch /protected/project/ldfile.txt

2.8 排错

2.8.1 客户端没启动nfs-secure服务

mount -a
mount.nfs: an incorrect mount option was specified

2.8.2 客户端没有/etc/krb5.keytab密钥文件

mount -a
mount.nfs: access denied by server while mounting 172.25.0.11:/protected

原文地址:http://blog.51cto.com/355665/2068712

时间: 2024-10-16 11:00:34

Day10 samba&NFS(Enginner04)的相关文章

企业级的Vsftp Samba NFS的安装、配置以及高级应用

. 企业级的Vsftp Samba NFS的安装.配置以及高级应用,布布扣,bubuko.com

RHCE第15节课 关于vsftpt samba nfs 三个服务

今天主要是学习了ftp服务,samba文件共享服务,和NFS服务的相关知识,三个服务中,vsftpd主要负责文件传输,而samba和NFS主要是文件共享. 原文地址:https://blog.51cto.com/12331786/2457326

文件共享服务 FTP,NFS 和 Samba

DAS DAS 指 Direct Attached Storage,即直连附加存储,这种设备直接连接到计算机主板总线上,计算机将其识别为一个块设备,例如常见的硬盘,U 盘等,这种设备很难做到共享. NAS NAS 指 Network Area Storage,它一般是将本地的存储空间共享给其他主机使用,一般通过 C/S 架构实现通信.它实现的是文件级别的共享,计算机通常将共享的设别识别为一个文件系统,其文件服务器会管理锁以实现并发访问.常见的 NAS 有 NFS 和 CIFS. SAN SAN

Linux文件共享服务 FTP,NFS 和 Samba

Linux 系统中,存储设主要有下面几种: DAS DAS 指 Direct Attached Storage,即直连附加存储,这种设备直接连接到计算机主板总线上,计算机将其识别为一个块设备,例如常见的硬盘,U 盘等,这种设备很难做到共享. NAS NAS 指 Network Area Storage,它一般是将本地的存储空间共享给其他主机使用,一般通过 C/S 架构实现通信.它实现的是文件级别的共享,计算机通常将共享的设别识别为一个文件系统,其文件服务器会管理锁以实现并发访问.常见的 NAS

[Openwrt 项目开发笔记]:Samba服务&vsFTP服务(四)

在上一节中,我们讲述了如何在路由器上挂载U盘,以及如何通过改造U盘提升路由器的存储和数据处理能力.通过增加USB挂载,为我们后续进行智能家居构建提供了保障. 在本节中,我将简单介绍如何在路由器上建立网络文件共享服务. 一.为何要建立文件共享服务: 在智能家居网络中,一个很重要的需求就是安全.当一个智能家居方案部署之后,用户往往最先考虑的也是安全问题.那么怎样进行安全管理呢?一种常用的解决方法是实时的监控传感器以及家电的状态,一旦发生异常,通过邮件.短信甚至打电话的方式通知用户.当用户接收到异常之

samba   服务器搭建   笔记 (生产环境常见的示例)  

文件服务器  SAMBA 可以在线修改文件  samba   NFS   NFS网络共享文件系统 服务器端 mkdir   /share vim    /etc/exports /share  192.168.1.0/24(rw   sync)##将/share目录  共享给192.168.1.0 网段 客户端 #showmount   -e   192.168.1.120    ##查看主机192.168.1.120服务器   共享的目录 #mount   - t   nfs   192.16

linux学习笔记-工程师技术:SMB共享、NFS共享

两台虚拟机,均要检测 1. Yum是否可用 2.  防火墙默认区域修改为trusted 3. IP地址是否配置 ----------------------------------------------------------------------------------------- samba 文件共享(共享文件夹) Samba 软件项目 – 用途:为客户机提供共享使用的文件夹 – 协议:SMB(TCP 139).CIFS(TCP 445) 所需软件包:samba 系统服务:smb 一.

CentOS7安装samba服务

一.前导说明 经常有学员询问如何将centos\ubuntu目录映射到windows中以方便开发工作,因此写这个指导博客方便大家配置开发环境. 将linux系统目录映射到windows有多种方法 samba nfs ftp ...[本栗采用samba方式实现] 二.配置过程 1. 安装samba组件 # yum install samba samba-clinet -y 2. 修改samba配置文件 #cd /etc/samba/ #mv smb.conf smb.conf.bak #vi sm

汉澳Sinox2014X64server高级桌面服务器版操作系统发布

汉澳Sinox2014X64server高级桌面服务器版操作系统发布 当你在现代城市夜空中看到一道闪电,屏幕中央闪过几个图形,转眼间变成美轮美奂的紫色空中天国,说明你来到了汉澳sinox2014世界! 在汉澳sinox2013基础上开发的64位汉澳sinox将更加先进,充分利用计算机的硬件资源,更多的软件,还支持硬件厂家驱动程序下载安装. 汉澳Sinox2014X64server高级64位桌面服务器版操作系统发布 下载地址 ftp://ftp.sinox.org/sinox2014x64serv