linux系统samba服务搭建gpt分区 特殊权限

el/2023/12/3 0:24:39

配置SMB共享(跨平台的共享,Linux与Windows)
Samba 软件项目
– 用途:为客户机提供共享使用的文件夹
– 协议:SMB(验证客户端身份)、CIFS(传输数据的)
管理共享账号
• Samba用户 —— 专用来访问共享文件夹的用户
– 采用独立设置的密码
– 但需要提前建立同名的系统用户(可以不设密码)
• 使用 pdbedit 管理工具
– 添加用户:pdbedit -a 用户名
– 查询用户:pdbedit -L [用户名]
– 删除用户:pdbedit -x 用户名

#######################################################
smb服务端为server0.example.com
1.创建共享用户
useradd -s /sbin/nologin harry
echo 123 | passwd --stdin harry
useradd -s /sbin/nologin chihiro
echo 123 | passwd --stdin chihiro

useradd -s /sbin/nologin kenji
echo 123 | passwd --stdin kenji
pdbedit -a harry #将本地用户添加为共享账户,设置共享密码 456
pdbedit -a chihiro #将本地用户添加为共享账户,设置共享密码 456
pdbedit -a kenji #将本地用户添加为共享账户,设置共享密码 456
pdbedit -L #显示所有的共享账户

2.装samba软件包
[root@server0 ~]# yum -y install samba
3.修改配置文件
[root@server0 ~]# mkdir /common
[root@server0 ~]# vim /etc/samba/smb.conf
workgroup = STAFF #设置工作组
[common] #设置共享名
path = /common #设置共享实际路径

4.重起 smb 服务
[root@server0 ~]# systemctl restart smb
[root@server0 ~]# systemctl enable smb
[root@server0 ~]# touch /common/nsd01.txt
###################################################
smb客户端为desktop0.example.com

1.安装samba-client客户端软件
[root@desktop0 ~]# yum -y install samba-client
• 列出共享资源
– smbclient -L 服务器地址
• 连接到共享文件夹
– smbclient -U 用户名 //服务器地址/共享名
[root@desktop0 ~]# smbclient -L 172.25.0.11
Enter root’s password:

Sharename       Type      Comment
---------       ----      -------
common          Disk  

[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common
Enter harry’s password:
Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1]
smb: > exit

[root@server0 ~]# pdbedit -x harry #服务端删除harry共享帐号
[root@server0 ~]# pdbedit -a harry #需要重起smb服务刷新

######################################################
客户端挂载samba共享

1.安装软件包支持samba共享挂载
[root@desktop0 ~]# yum -y install cifs-utils

2.挂载samba共享
[root@desktop0 ~]# mkdir /mnt/nsd #创建挂载点
[root@desktop0 ~]# mount -o user=harry,pass=456 //172.25.0.11/common /mnt/nsd
[root@desktop0 ~]# df -h #显示正在挂载的设备信息

[root@desktop0 ~]# ls /mnt/nsd/
ls: 正在读取目录/mnt/nsd/: 权限不够

##########################################################
server0服务端: SELinux 服务功能的开启(布尔值)
– 需要加 -P 选项才能实现永久设置

虚拟机Server0服务端
[root@server0 ~]# getsebool -a | grep samba
[root@server0 ~]# setsebool samba_export_all_ro on
[root@server0 ~]# getsebool -a | grep samba
虚拟机Desktop0客户端验证
[root@desktop0 ~]# ls /mnt/nsd/

###################################################
开机自动挂载samba共享目录
_netdev:此设备为网络设备
在开机启动时,先要启动网络服务,在具备IP地址之后在挂载此设备
虚拟机Desktop0客户端自动挂载samba共享目录
[root@desktop0 ~]# vim /etc/fstab
//172.25.0.11/common /mnt/nsd cifs
defaults,user=harry,pass=456,_netdev 0 0
[root@desktop0 ~]# df -h | tail -1 # 显示正在挂载的信息
[root@desktop0 ~]# umount /mnt/nsd #卸载samba共享目录
[root@desktop0 ~]# df -h #查看是否卸载成功
[root@desktop0 ~]# mount -a #检测/etc/fstab文件书写内容
[root@desktop0 ~]# df -h #查看是否挂载成功

#########################################################
实现读写的samba共享
虚拟机server0:
[root@server0 ~]# mkdir /devops
[root@server0 ~]# touch /devops/123.txt
[root@server0 ~]# ls /devops/

[root@server0 ~]# vim /etc/samba/smb.conf
[devops] #共享名
path = /devops #共享的实际路径
write list = chihiro #通过samba服务本身的访问控制,允许可以写

[root@server0 ~]# systemctl restart smb
2.设置本地权限
[root@server0 ~]# setfacl -m u:chihiro:rwx /devops
[root@server0 ~]# getfacl /devops

3.设置SELinux布尔值
[root@server0 ~]# getsebool -a | grep samba
[root@server0 ~]# setsebool samba_export_all_rw on

虚拟机Desktop0:
mkdir /mnt/dev
mount -o user=chihiro,pass=456 //172.25.0.11/devops /mnt/dev
touch /mnt/dev/1.txt

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

#######################################################
multiuser机制(专为客户端的普通用户访问Samba共享)
为客户端的普通用户,提供切换身份的作用
虚拟机desktop0
[root@desktop0 /]# umount /mnt/dev
[root@desktop0 /]# mount -o user=kenji,pass=456,multiuser,sec=ntlmssp //172.25.0.11/devops /mnt/dev/
[root@desktop0 /]# su - student
[student@desktop0 ~]$ cifscreds add -u chihiro 172.25.0.11
Password:
[student@desktop0 ~]$ touch /mnt/dev/a.txt
[student@desktop0 ~]$ exit

#########################################################
配置NFS共享(Linux与Linux平台之间)
NFS共享概述
• Network File System,网络文件系统
– 用途:为客户机提供共享使用的文件夹
– 协议:NFS(TCP/UDP 2049)、RPC(TCP/UDP 111)
• 所需软件包:nfs-utils
• 系统服务:nfs-server

虚拟Server0:
1.安装nfs-utils
[root@server0 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64

2.配置nfs-server服务,修改配置文件/etc/exports
[root@server0 ~]# mkdir /public
[root@server0 ~]# touch /public/nfs.txt
[root@server0 ~]# ls /public/
[root@server0 ~]# vim /etc/exports
/public *(ro) #共享目录为/public允许所有人只读访问

3.重起nfs-server服务,设置开机自起动
[root@server0 ~]# systemctl restart nfs-server
[root@server0 ~]# systemctl enable nfs-server

虚拟机Desktop0:
[root@desktop0 /]# showmount -e 172.25.0.11 #显示有那些nfs共享
Export list for 172.25.0.11:
/public *
[root@desktop0 /]# mkdir /mnt/pub
[root@desktop0 /]# mount 172.25.0.11:/public /mnt/pub
[root@desktop0 /]# df -h
[root@desktop0 /]# ls /mnt/pub
[root@desktop0 /]# vim /etc/fstab
172.25.0.11:/public /mnt/pub nfs defaults,_netdev 0 0

[root@desktop0 /]# umount /mnt/pub/
[root@desktop0 /]# df -h
[root@desktop0 /]# mount -a
[root@desktop0 /]# df -h

##########################################################
管理交换空间
什么是交换空间
• 相当于虚拟内存,
– 当物理内存不够用时,使用磁盘空间来模拟内存
– 在一定程度上缓解内存不足的问题
– 交换分区:以空闲分区充当的交换空间
划分分区:
fdisk 只支持MBR
parted 支持MBR和GPT GPT分区模式 最多128个主分区

[root@server0 ~]# parted /dev/vdb
(parted) mktable gpt #指定分区模式或分区表
(parted) print
(parted) mkpart #划分新的分区
分区名称? []? haha #分区的名字
文件系统类型? [ext2]? #文件系统直接回车
起始点? 0
结束点? 2G
忽略/Ignore/放弃/Cancel? Ignore

(parted) mkpart
分区名称? []? haha
文件系统类型? [ext2]?
起始点? 2G
结束点? 4G
(parted) unit GB
(parted) print
(parted) quit

[root@server0 ~]# lsblk
将提供的设备按 swap 类型进行格式化
– mkswap 空闲分区或文件设备

[root@server0 ~]# mkswap /dev/vdb1 #格式化交换文件系统
[root@server0 ~]# mkswap /dev/vdb2
[root@server0 ~]# blkid /dev/vdb1 #查看设备文件系统类型
[root@server0 ~]# blkid /dev/vdb2
[root@server0 ~]# swapon -s #查看交换空间组成的成员
[root@server0 ~]# swapon /dev/vdb1 #启动/dev/vdb1交换分区
[root@server0 ~]# swapon -s #查看交换空间组成的成员
[root@server0 ~]# swapon /dev/vdb2 #启动/dev/vdb2交换分区
[root@server0 ~]# swapon -s #查看交换空间组成的成员
[root@server0 ~]# swapoff /dev/vdb2 #停用/dev/vdb2交换分区
[root@server0 ~]# swapon -s #查看交换空间组成的成员

实现开机自动启用swap交换分区
[root@server0 ~]# vim /etc/fstab
/dev/vdb1 swap swap defaults 0 0
/dev/vdb2 swap swap defaults 0 0

[root@server0 ~]# swapon -s
[root@server0 ~]# swapoff /dev/vdb1
[root@server0 ~]# swapoff /dev/vdb2
[root@server0 ~]# swapon -s

[root@server0 ~]# swapon -a #测试/etc/fstab内容中swap分区
[root@server0 ~]# swapon -s

##########################################################
Sticky Bit
• 附加在其他人的 x 位上
– 其他人的权限标识会变为 t
– 适用于开放 w 权限的目录,可以阻止用户滥用 w 写入
权限(禁止操作别人的文档)
[root@server0 ~]# mkdir /nsd1712
[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /nsd1712
[root@server0 ~]# ls -ld /nsd1712
[root@server0 ~]# chmod o+t /nsd1712
[root@server0 ~]# ls -ld /nsd1712

Set UID
• 附加在属主的 x 位上
– 属主的权限标识会变为 s
– 适用于可执行文件,Set UID可以让使用者具有文件属主的身份及部分权限
– 传递所有者身份

[root@server0 ~]# cp /bin/mkdir /bin/hahadir
[root@server0 ~]# ls -l /bin/mkdir
[root@server0 ~]# ls -l /bin/hahadir
[root@server0 ~]# chmod u+s /bin/hahadir
[root@server0 ~]# ls -l /bin/hahadir
[root@server0 ~]# su - student
[student@server0 ~]$ /bin/mkdir abc01
[student@server0 ~]$ /bin/hahadir abc02
[student@server0 ~]$ ls -ld abc01 abc02
[student@server0 ~]$ exit


http://www.ngui.cc/el/3478369.html

相关文章

dhcp rsync笔记

DHCP服务器、启动服务器 —— 虚拟机svr7 软件资源服务器 —— CentOS真机 一台客户机获取IP地址的过程: 1)请求 DISCOVERY 【找工作】 2)提供 OFFER 【公司给工作机会】 3) 选择 REQUEST 【选择工作机会】 4) 确认 ACK 【确认入职】 IP租期…

shell 脚本编程

################################################### shell 脚本编程 一、循环结构 让特定代码重复执行 1.for循环 1&#xff09;特点&#xff1a;循环的次数是固定的&#xff01; 2&#xff09;语法结构及特点 for 变量 in 值1 值2 … do 命令 done for ((i1;i<10;i)) /…

shell 脚本编程5

################################################### shell 脚本编程 一、sed基本用法 1.sed命令解析 1&#xff09;sed工具概述 stream editor 流式编辑器 –非交互&#xff0c;脚本里用sed&#xff0c;命令行用vim。&#xff08;vim交互式&#xff0c;进出都需对应模式&…

shell 脚本编程6

shell 脚本编程 #################################### sed 文本编辑器&#xff0c;逐行处理&#xff0c;非交互 sed [选项] ‘条件指令’ 文件 选项&#xff1a; -n 屏蔽默认输出 -i 修改原文件 -r 支持扩展正则 条件&#xff1a;行号&#xff0c;/正则/ 指令&#xff1a;增…

shell 脚本编程07

shell 脚本编程 一、一键部署脚本&#xff08;源码包安装软件nginx&#xff09; tar -xf lnmp_soft…gz cd lnmp_soft tar -xf nginx…gz cd nginx… yum -y install gcc pcre-devel zlib-devel ./configure make make install 确认:ls /usr/local/nginx netstat -nulpt | gre…

locate命令和slocate命令都用来查找文件或目录

http://linux.51yip.com/search/whereis 索引的作用&#xff08;为什么要有索引&#xff1f;&#xff09;&#xff1a; 当要对大数据文件进行随机 读取时&#xff0c;一种方法是先全部读入内存&#xff0c;以数组形式存储&#xff0c;通过数组索引下标形式进行访问&#xff0c;…

Linux 从开机到登陆界面的过程 三次四次断开 linux破密码 iptables详解

描述 Linux 系统从开机到登陆界面的启动过程 (1)开机 BIOS 自检,加载硬盘。 (2)读取 MBR,MBR 引导。 (3)grub 引导菜单(Boot Loader)。 (4)加载内核 kernel。 (5)启动 init 进程,依据 inittab 文件设定运行级别 (6)init 进程,执行 rc.sysinit 文件。 (7)启动内核模块,执行不同级…

数据加密 AIDE入侵检测系统 扫描与抓包 内核熵池

curl myip.ipip.net #查看自己的上网的网关ip ctrl v shift i shift # esc键 #每行最前批量加#号 快速的给内核熵池喂随机数 Entropy&#xff08;熵&#xff09; PRNG&#xff08;伪随机生成器&#xff09; RNG&#xff08;随机数生成器&#xff09; 有两种方法可以从熵池中…

掩码 mail virsh工具 tmux分频工具

sed -i ‘/#/d’ /etc/maxscale.cnf #删除文件中的以#号开头的行 ~]#PATH/usr/local/mysql/bin:KaTeX parse error: Expected EOF, got # at position 25: … ~]#̲vim /etc/profil…PATH #将源码安装的软件 绝对路径的命令永久设置成系统命令 ~]#source /etc/profile 单引号…

Linux文件系统简介及其系统管理工具

常见的文件系统 Linux文件系统: ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap swap: 交换分区 光盘&#xff1a;iso9660 Windows&#xff1a;fat32, ntfs Unix: FFS, UFS, JFS2 网络文件系统&#xff1a;NFS, CIFS 集群文件系统&#xff1a;GFS2, OCFS2 分布式文件系统&…