运维之红帽工程师篇-----4. 配置Samba共享 、 配置NFS共享

FOUR DAY

总结笔记:

一.配置SMB共享(LinuxWindows)

协议:SMB(TCP 139)CIFS(TCP 445)---------所需软件包:sambasmbclient-------系统服务:smb--------配置文件:/etc/samba/smb.conf/etc/fstab

虚拟机server0

1.安装samba

2.创建Samba账户,设置Samba独立的密码

[root@server0 ~]# useradd -s /sbin/nologin harry

[root@server0 ~]# useradd -s /sbin/nologin kenji

[root@server0 ~]# useradd -s /sbin/nologin chihiro

[root@server0 ~]# pdbedit -a harry    #添加Samba账户并设置密码

[root@server0 ~]# pdbedit -a kenji

[root@server0 ~]# pdbedit -a chihiro

[root@server0 ~]# pdbedit -L         #显示所有有效的Samba账户

3.创建相应的共享路径

[root@server0 ~]# mkdir /common

[root@server0 ~]# echo 123 > /common/123.txt

[root@server0 ~]# ls /common/

4.修改 /etc/samba/smb.conf

   89行      workgroup = STAFF   #修改工作组名

[root@server0 ~]# tail -2 /etc/samba/smb.conf

[common]                   #共享名

  path = /common           #共享实际路径

5.重起smb服务

[root@server0 ~]# systemctl restart smb

[root@server0 ~]# systemctl enable smb   

6.虚拟机desktop0测试:

[root@desktop0 ~]# yum -y install samba-client

[root@desktop0 ~]# smbclient -L //172.25.0.11

Enter root's password: 

[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common

Enter harry's password: 

smb: \> 

 

.客户端访问服务端服务:1. 服务的访问控制2. 本地权限的设置    3. 防火墙  4.SELinux策略     

虚拟机server0

1.服务端操作 -----(1安装samba----2添加samba用户已略)

3创建共享路径

[root@server0 ~]# mkdir /devops

[root@server0 ~]# echo hahaxixi > /devops/abc.txt

4.修改配置文件(修改服务的访问控制)

[root@server0 ~]# tail -3 /etc/samba/smb.conf

[devops]

 path = /devops

 write list = chihiro    #允许chihiro可以写入(服务的访问控制)

5设置本地权限

[root@server0 ~]# setfacl -m u:chihiro:rwx /devops #

[root@server0 ~]# getsebool -a | grep samba

6.selinux策略

[root@server0 ~]# setsebool samba_export_all_rw=on #修改SELinux

7.重启服务

[root@server0 ~]# systemctl restart smb

客户端验证

1安装cifs-utils

2创建共享文件映射目录

[root@desktop0 ~]# mkdir /mnt/devops

2.修改配置文件之自动挂载配置之用户网络设备

[root@desktop0 ~]# tail -1 /etc/fstab

//172.25.0.11/devops  /mnt/devops  cifs defaults,user=chihiro,pass=123,_netdev 0 0

[root@desktop0 ~]# mount -a   #挂起

3.最后测试

[root@desktop0 ~]# touch /mnt/devops/1.txt

.共享文件夹的多用户访问SMB服务(1挂载SMB共享时启用 multiuser 支持2使用 cifscreds 临时切换身份)

服务端server0操作 -----(1安装samba----2添加samba用户已略-----3创建共享目录--------4修改配置文件----------5设置本地权限--------6selinux-------------7重启服务)---------重复步骤

虚拟机desktop0:客户端验证

1安装cifs-ulis------2创建共享映射目录(略)

3修改配置文件之自动挂载配置之多用户网络设备

[root@desktop0 ~]# vim  /etc/fstab

//172.25.0.11/devops  /mnt/devopscifs defaults,user=chihiro,pass=123,_netdev,multiuser,sec=ntlmssp 0 0

[root@desktop0 ~]# umount /mnt/devops    #卸载挂载设备

[root@desktop0 ~]# mount -a   #重新挂载

[root@desktop0 ~]# su - student

[student@desktop0 ~]$ ls /mnt/devops    #失败

[student@desktop0 ~]$ cifscreds add -u chihiro 172.25.0.11   #临时切换身份

[student@desktop0 ~]$ ls /mnt/devops    #成功

[student@desktop0 ~]$ touch /mnt/devops/test01.txt  #成功

[student@desktop0 ~]$ ls /mnt/devops

[student@desktop0 ~]$ exit

4.配置NFS共享(LinuxLinux)

协议:NFS(TCP/UDP 2049)RPC(TCP/UDP 111)

所需软件包:nfs-utils

系统服务:nfs-server

配置文件:/etc/exports

虚拟机server0

1.检测nfs-utils是否安装

[root@server0 ~]# rpm -q nfs-utils

2.创建共享的目录

[root@server0 ~]# mkdir /public

[root@server0 ~]# echo  hahaxixi > /public/nsd.txt

3.修改配置文件/etc/exports

/public  172.25.0.0/24(ro)

4.重起服务

[root@server0 ~]# systemctl restart nfs-server

[root@server0 ~]# systemctl enable nfs-server

虚拟机desktop0

[root@desktop0 /]# showmount -e 172.25.0.11  #查看都有那些共享

[root@desktop0 /]# mkdir /mnt/nfs01

[root@desktop0 /]# tail -1 /etc/fstab

172.25.0.11:/public /mnt/nfs01  nfs defaults,_netdev 0 0

[root@desktop0 /]# mount -a

[root@desktop0 /]# df -h

5.安全的NFS共享

 LDAP      管理所有用户信息

 kerberos   提供密码认证

 

1.还原所有虚拟机(a1;b1;c1

2.设置虚拟机的防火墙(s11;s10)

二、将虚拟机server0desktop0,加入LDAPkerberos

[root@server0 ~]# lab nfskrb5 setup

[root@desktop0 ~]#  lab nfskrb5 setup

[root@server0 ~]# id ldapuser0           #验证是否识别网络用户

[root@server0 ~]# grep ldapuser0 /etc/passwd

三、配置虚拟机server0NFS服务端

1.修改配置文件/etc/exports

/nsd/  *(rw,sec=krb5p)

2.创建共享的目录

[root@server0 ~]# mkdir -p /nsd/test

[root@server0 ~]# echo  hahaxixi > /nsd/test/haxi.txt

3.修改虚拟机server0上权限设置

[root@server0 ~]# chown ldapuser0 /nsd/test/

[root@server0 ~]# ls -ld /nsd/test/

4.部署密钥文件

[root@server0 ~]# wget http://172.25.0.254/pub/keytabs/server0.keytab -O /etc/krb5.keytab

[root@server0 ~]# ls /etc/krb5.keytab

5.最好同时重起服务,nfs-secure-server(安全的nfs服务)

# systemctl restart nfs-server nfs-secure-server

四、配置虚拟机desktop0NFS客户端

1.部署密钥

[root@desktop0 ~]# wget http://172.25.0.254/pub/keytabs/desktop0.keytab -O /etc/krb5.keytab

2.书写开机自动挂载/etc/fstab

[root@desktop0 ~]# mkdir /mnt/nfs

[root@desktop0 ~]# tail -1 /etc/fstab

172.25.0.11:/nsd  /mnt/nfs  nfs defaults,_netdev,sec=krb5p 0 0

3.重起客户端安全的nfs服务

[root@desktop0 ~]# systemctl restart nfs-secure

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

5.必须用ssh远程管理本地方式验证:密码 kerberos

[root@desktop0 ~]# ssh [email protected]

[ldapuser0@desktop0 ~]$ touch /mnt/nfs/test/123.txt

 

正式笔记:

环境准备:

1.还原所有虚拟机---------2.设置虚拟机的防火墙--------- 172.40.58.123:7000

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

1.配置SMB共享(LinuxWindows)

Samba服务基础

• Samba 软件项目

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

– 协议:SMB(TCP 139)CIFS(TCP 445)

• 所需软件包:samba

• 系统服务:smb

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

管理共享账号

• Samba用户 —— 专用来访问共享文件夹的用户

– 采用独立设置的密码

– 但需要提前建立同名的系统用户(可以不设密码)

• 使用 pdbedit 管理工具

– 添加用户:pdbedit -a 用户名

– 查询用户:pdbedit -L [用户名]

– 删除用户:pdbedit -x 用户名

 修改 /etc/samba/smb.conf

[自定共享名]

path = 文件夹绝对路径

; public = no|yes //默认no

; browseable = yes|no //默认yes

; read only = yes|no //默认yes

; write list = 用户1 .. .. //默认无

; valid users = 用户1 .. .. //默认任何用户

; hosts allow = 客户机地址 .. ..

; hosts deny = 客户机地址 .. ..

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

虚拟机server0

1.安装samba

2.创建Samba账户,设置Samba独立的密码

[root@server0 ~]# useradd -s /sbin/nologin harry

[root@server0 ~]# useradd -s /sbin/nologin kenji

[root@server0 ~]# useradd -s /sbin/nologin chihiro

[root@server0 ~]# pdbedit -a harry    #添加Samba账户并设置密码

[root@server0 ~]# pdbedit -a kenji

[root@server0 ~]# pdbedit -a chihiro

[root@server0 ~]# pdbedit -L         #显示所有有效的Samba账户

3.创建相应的共享路径

[root@server0 ~]# mkdir /common

[root@server0 ~]# echo 123 > /common/123.txt

[root@server0 ~]# ls /common/

4.修改 /etc/samba/smb.conf

   89行      workgroup = STAFF   #修改工作组名

[root@server0 ~]# tail -2 /etc/samba/smb.conf

[common]                   #共享名

  path = /common           #共享实际路径

5.重起smb服务

[root@server0 ~]# systemctl restart smb

[root@server0 ~]# systemctl enable smb   

6.虚拟机desktop0测试:

[root@desktop0 ~]# yum -y install samba-client

[root@desktop0 ~]# smbclient -L //172.25.0.11

Enter root's password: 

[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common

Enter harry's password: 

smb: \> 

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

2.客户端访问SMB服务端服务:

 

1. 服务的访问控制

2. 本地权限的设置    

3. 防火墙

4.SELinux策略           

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

SELinux策略对SMB的保护 布尔值(功能的开关)

• getsebool 查看 SELinux 开关

[root@server0 ~]# getsebool -a | grep samba

• setsebool 控制 SELinux 开关

– 需要加 -P 选项才能实现永久设置

[root@server0 ~]# setsebool -P samba_export_all_ro=on

[root@server0 ~]# getsebool -a | grep samba

虚拟机desktop0

[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common

Enter harry's password: 

smb: \> ls

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

• _netdev:网络设备请启动完成网络服务,在进行挂载此设备)

• 所需软件包:cifs-utils,支持cifs文件系统的挂载

[root@desktop0 ~]# mkdir /mnt/test

[root@desktop0 ~]# vim /etc/fstab 

//172.25.0.11/common  /mnt/test  cifs defaults,user=harry,pass=123,_netdev 0 0

[root@desktop0 ~]# df -h

[root@desktop0 ~]# yum -y install cifs-utils

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

[root@desktop0 ~]# ls /mnt/test/

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

虚拟机server0

1.服务端操作 -----(1安装samba----2添加samba用户已略)

3创建共享路径

[root@server0 ~]# mkdir /devops

[root@server0 ~]# echo hahaxixi > /devops/abc.txt

5.修改配置文件(修改服务的访问控制)

[root@server0 ~]# tail -3 /etc/samba/smb.conf

[devops]

 path = /devops

 write list = chihiro    #允许chihiro可以写入(服务的访问控制)

5设置本地权限

[root@server0 ~]# setfacl -m u:chihiro:rwx /devops #

6.selinux策略

[root@server0 ~]# getsebool -a | grep samba

[root@server0 ~]# setsebool samba_export_all_rw=on #修改SELinux

7.重启服务

[root@server0 ~]# systemctl restart smb

客户端验证

1安装cifs-utils

2创建共享文件映射目录

[root@desktop0 ~]# mkdir /mnt/devops

4.修改配置文件之自动挂载配置之用户网络设备

[root@desktop0 ~]# tail -1 /etc/fstab

//172.25.0.11/devops  /mnt/devops  cifs defaults,user=chihiro,pass=123,_netdev 0 0

[root@desktop0 ~]# mount -a   #挂起

5.最后测试

[root@desktop0 ~]# touch /mnt/devops/1.txt

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

3.共享文件夹的多用户访问SMB服务

• SMB客户端的 multiuser 挂载技术

– 管理员只需要作一次挂载

– 客户端在访问挂载点时,若需要不同权限,可以临时

切换为新的共享用户(无需重新挂载)

• 实现方式

1)挂载SMB共享时启用 multiuser 支持

2)使用 cifscreds 临时切换身份

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

服务端server0操作 -----(1安装samba----2添加samba用户已略-----3创建共享目录--------4修改配置文件----------5设置本地权限--------6selinux-------------7重启服务)---------重复步骤

虚拟机desktop0:客户端验证

1安装cifs-ulis------2创建共享映射目录(略

3修改配置文件之自动挂载配置之多用户网络设备

[root@desktop0 ~]# vim  /etc/fstab

//172.25.0.11/devops  /mnt/devopscifs defaults,user=chihiro,pass=123,_netdev,multiuser,sec=ntlmssp 0 0

[root@desktop0 ~]# umount /mnt/devops    #卸载挂载设备

[root@desktop0 ~]# mount -a   #重新挂载

[root@desktop0 ~]# su - student

[student@desktop0 ~]$ ls /mnt/devops    #失败

[student@desktop0 ~]$ cifscreds add -u chihiro 172.25.0.11   #临时切换身份

[student@desktop0 ~]$ ls /mnt/devops    #成功

[student@desktop0 ~]$ touch /mnt/devops/test01.txt  #成功

[student@desktop0 ~]$ ls /mnt/devops

[student@desktop0 ~]$ exit

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

4.配置NFS共享(LinuxLinux)

NFS共享概述

• Network File System,网络文件系统

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

– 协议:NFS(TCP/UDP 2049)RPC(TCP/UDP 111)

• 所需软件包:nfs-utils

• 系统服务:nfs-server

 配置文件/etc/exports

虚拟机server0

1.检测nfs-utils是否安装

[root@server0 ~]# rpm -q nfs-utils

2.创建共享的目录

[root@server0 ~]# mkdir /public

[root@server0 ~]# echo  hahaxixi > /public/nsd.txt

3.修改配置文件/etc/exports

/public  172.25.0.0/24(ro)

4.重起服务

[root@server0 ~]# systemctl restart nfs-server

[root@server0 ~]# systemctl enable nfs-server

虚拟机desktop0

[root@desktop0 /]# showmount -e 172.25.0.11  #查看都有那些共享

[root@desktop0 /]# mkdir /mnt/nfs01

[root@desktop0 /]# tail -1 /etc/fstab

172.25.0.11:/public /mnt/nfs01  nfs defaults,_netdev 0 0

[root@desktop0 /]# mount -a

[root@desktop0 /]# df -h

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

5.安全的NFS共享

• 作为普通NFS的增强版

 结合 LDAP+kerberos 技术,实现认证和加密支持

– 同一个 kerberos 领域内,认证用户可实现一次密码

认证,多次免密登录的通行证机制

   LDAP      管理所有用户信息

   kerberos  提供密码认证

一、还原所有的教学环境

1.还原所有虚拟机(a1;b1;c1

2.设置虚拟机的防火墙(s11;s10)

二、将虚拟机server0desktop0,加入LDAPkerberos

[root@server0 ~]# lab nfskrb5 setup

[root@desktop0 ~]#  lab nfskrb5 setup

[root@server0 ~]# id ldapuser0           #验证是否识别网络用户

[root@server0 ~]# grep ldapuser0 /etc/passwd

三、配置虚拟机server0NFS服务端

1.修改配置文件/etc/exports之调整/protected共享设置

/nsd/  *(rw,sec=krb5p)

2.创建共享的目录

[root@server0 ~]# mkdir -p /nsd/test

[root@server0 ~]# echo  hahaxixi > /nsd/test/haxi.txt

3.修改虚拟机server0上权限设置

[root@server0 ~]# chown ldapuser0 /nsd/test/

[root@server0 ~]# ls -ld /nsd/test/

4.部署密钥文件

[root@server0 ~]# wget http://172.25.0.254/pub/keytabs/server0.keytab -O /etc/krb5.keytab

[root@server0 ~]# ls /etc/krb5.keytab

5.最好同时重起服务,nfs-secure-server(安全的nfs服务)

# systemctl restart nfs-server nfs-secure-server

四、配置虚拟机desktop0NFS客户端

1.部署密钥

[root@desktop0 ~]# wget http://172.25.0.254/pub/keytabs/desktop0.keytab -O /etc/krb5.keytab

2.书写开机自动挂载/etc/fstab

[root@desktop0 ~]# mkdir /mnt/nfs

[root@desktop0 ~]# tail -1 /etc/fstab

172.25.0.11:/nsd  /mnt/nfs  nfs defaults,_netdev,sec=krb5p 0 0

3.重起客户端安全的nfs服务

[root@desktop0 ~]# systemctl restart nfs-secure

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

4.必须用ssh远程管理本地方式验证:密码 kerberos

[root@desktop0 ~]# ssh [email protected]           

[root@desktop0 ~]#Kinit --help

[ldapuser0@desktop0 ~]$ touch /mnt/nfs/test/123.txt

你可能感兴趣的:(运维之红帽工程师篇-----4. 配置Samba共享 、 配置NFS共享)