配置SMB共享
可以实现跨平台共享,linux <-----> windows
用途:为客户机提供共享使用的文件夹
协议:SMB(TCP139)、CIFS(TCP455)
软件包:samba
系统服务:smb
默认samba必须有用户验证
服务端虚拟机server0
安装samba软件
[root@server0 ~]# yum -y install samba
使用pdbedit管理工具
-添加用户:pdbedit -a 用户名
-查询用户:pdbedit -L 用户名
-删除用户:pdbedit -x 用户名
[root@server0 ~]# useradd harry #添加帐号
[root@server0 ~]# useradd kenji
[root@server0 ~]# useradd chihiro
[root@server0 ~]# pdbedit -a harry #将本地用户添加为samba共享帐号
[root@server0 ~]# pdbedit -a kenji
[root@server0 ~]# pdbedit -a chihiro
[root@server0 ~]# pdbedit -L #显示samba共享帐号
配置文件及参数
配置文件:/etc/samba/smb.conf
[global] #全局设置
workgroup = 工作组名
[xxx自定义共享名]
path = 文件夹绝对路径
public = no|yes #默认no
browseable = yes|no #默认no
read only = yes|no #默认yes
write list = 用户1 #默认无
valid users = 用户1 #默认任何用户
hosts allow = 客户机地址
hosts deny = 客户机地址
重启smb服务
[root@server0 ~]# systemctl restart smb
[root@server0 ~]# systemctl enable smb
SELinux布尔值(开与关 on与off)功能的开关
-P 永久设置
[root@server0 ~]# getsebool -a | grep samba #查看SELinux所有影响服务的布尔值功能
[root@server0 ~]# setsebool samba_export_all_ro on #设置SELinux影响服务的功能开关
客户端虚拟机desktop0
安装软件包
[root@desktop0 ~]# yum -y install samba-client
利用smbclient进行访问
列出共享目录
[root@desktop0 ~] # smbclient -L 172.25.0.11
连接到共享文件夹
[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common
客户端访问服务端资源影响方面
1.防火墙策略
2.服务本身的访问控制
3.判断SELinux策略限制
4.服务端目录的本地权限
mount挂载
客户端虚拟机desktop0
安装支持samba挂载的软件,文件系统cifs
[root@desktop0 ~]# yum -y install cifs-utils
挂载访问
[root@desktop0 ~]# mkdir /mnt/nsd
[root@desktop0 ~]# mount -o user=harry,pass=123 //172.25.0.11/common /mnt/nsd/
[root@desktop0 ~]# df -h
开机自动挂载
_netdev:网络设备(先启动网络服务,配置好ip地址,然后再挂载该设备)
[root@desktop0 ~]# vim /etc/fstab
//172.25.0.11/common /mnt/nsd cifs defaults,user=harry,pass=123,_netdev 0 0
[root@desktop0 ~]# umount /mnt/nsd/
[root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
读写samba共享
服务端虚拟机server0
修改配置文件/etc/samba/smb.conf
[root@server0 ~]# vim /etc/samba/smb.conf
[devops]
path = /devops
write list =chihiro
创建共享目录
[root@server0 ~]# mkdir /devops
[root@server0 ~]# echo haha > /devops/test.txt
[root@server0 ~]# ls /devops/
重启smb服务
[root@server0 ~]# systemctl restart smb
客户端虚拟机desktop0
1.开机自动挂载
[root@desktop0 ~]# mkdir /mnt/stu
[root@desktop0 ~]# vim /etc/fstab
//172.25.0.11/devops /mnt/stu cifs defaults,user=chihiro,pass=123,_netdev 0 0
[root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
了解多用户的samba访问,专为不同权限的普通用户设计
服务端虚拟机server0
判断客户端访问服务端时的身份
[root@server0 ~]# getsebool -a | grep samba
[root@server0 ~]# getfacl /devops/
[root@server0 ~]# setfacl -m u:chihiro:rwx /devops/
[root@server0 ~]# getfacl /devops/
客户端虚拟机desktop0
[root@desktop0 ~]# umount /mnt/stu
[root@desktop0 ~]# vim /etc/fstab
//172.25.0.11/devops /mnt/stu cifs defaults,user=kenji,pass=123,_netdev,multiuser,sec=ntlmssp 0 0
[root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
[root@desktop0 ~]# useradd natasha
[root@desktop0 ~]# su - natasha
[natasha@desktop0 ~]$ cd /mnt/stu
[natasha@desktop0 stu]$ cifscreds add -u chihiro 172.25.0.11
Password:
[natasha@desktop0 stu]$ ls /mnt/stu
配置NFS共享:Network File System
搭建普通NFS配置
用途:为客户机提供共享使用的文件夹
协议:NFS(TCP/UDP 2049)、RPC(TCP/UDP 111)
软件包:nfs-utils
系统服务:nfs-server
服务端虚拟机server0
安装软件包
[root@server0 ~]# rpm -q nfs-utils
修改配置文件/etc/exports
[root@server0 ~]# mkdir /public
[root@server0 ~]# echo 123 > /public/abc.txt
[root@server0 ~]# vim /etc/exports
/public *(ro) #共享路径 客户端地址(权限)
[root@server0 ~]# systemctl restart nfs-server
客户端虚拟机desktop0
[root@desktop0 ~]# mkdir /mnt/nfs
[root@desktop0 ~]# vim /etc/fstab
172.25.0.11:/public /mnt/nfs nfs defaults,_netdev 0 0
[root@desktop0 ~]# mount -a
FTP服务
服务端虚拟机server0
默认共享路径:/var/ftp
默认访问用户身份:ftp
客户端访问服务端位置为该用户的家目录
服务端虚拟机desktop0
安装vsftpd软件
[root@server0 ~]# yum -y install vsftpd
启动vsftpd服务
[root@server0 ~]# systemctl restart vsftpd
[root@server0 ~]# systemctl enable vsftpd
客户端虚拟机desktop0
安装客户端lftp软件
[root@desktop0 ~]# yum -y install lftp
[root@desktop0 ~]# lftp 172.25.0.11
lftp 172.25.0.11:~> ls
访问指定用户的家目录
server0:
[root@server0 ~]# useradd tom
[root@server0 ~]# echo 123 | passwd --stdin tom
[root@server0 ~]# echo 123 > /home/tom/123.txt
desktop0:
[root@desktop0 ~]# lftp -u tom 172.25.0.11
lftp [email protected]:~> ls
-rw-r--r-- 1 0 0 4 Mar 26 12:22 123.txt
wc 统计命令
请计算linux系统一共有多少个用户?
[root@desktop0 ~]# wc -l /etc/passwd
41 /etc/passwd
请计算linux系统/etc/有多少tab结尾的文件(不包含子目录)
[root@desktop0 ~]# ls /etc/*tab | wc -l
[root@server0 ~]# ls /etc/*.conf | wc -l
47
[root@server0 ~]# find /etc/ -name "*.conf" |wc -l
396