linux系统部署管理CIFS文件和NFS文件服务器||部署ISCSI服务器
分类:
文章
•
2024-01-29 17:53:52
CIFS文件系统:
CIFS文件系统:是一种Internet文件系统,也称服务器信。适用于MicrosoftWindows服务器和客户端的标准文件和打印机的共享系统信息快(SMB)。
Samba服务:用于linux文件系统作为CIGS/SMB网络文件共享,并将linux打印机作为CIFS/SMB打印机进行共享
一.samba服务
1. cd /etc/yum.repos.d/ 进入目录
2.vim rhel_dvd.repo 编辑配置文件

3. yum clean all 清空缓存
4. yum install samba samba-common samba-client -y 安装软件

5. systemctl start smb 打开软件
6. smbclient -L //172.25.254.107 查看(无需输入密码)

7. rpm -ql samba-common 查找配置文件
/etc/logrotate.d
/etc/logrotate.d/samba
/etc/samba
/etc/samba/lmhosts
/etc/samba/smb.conf 配置文件
8. vim /etc/samba/smb.conf 编辑配置文件
内容:
89(行) workgroup = WESTOS 修改域名

9. systemctl restart smb.service 重启服务
10.测试:登陆服务
smbclient -L //172.25.254.107 查看域名改为WESTOS

二.黑,白名单设定:
白名单:服务端
1. vim /etc/samba/smb.conf 编辑配置文件设定白名单
内容:
96(行) hosts allow = 172.25.254.107 白名单,允许107访问

2. systemctl restart smb.service 重启服务
测试:客户端
smbclient -L //172.25.254.107 107可以访问

黑名单:服务端
1. vim /etc/samba/smb.conf 编辑配置文件设置黑名单
内容:
97 hosts deny = 172.25.254.107 黑名单,不允许107访问

2. systemctl restart smb.service 重启服务
测试:客户端
smbclient -L //172.25.254.107 107访问不了

三.用户认证及挂载:
1. pdbedit -L 查看smb用户
2. useradd westos 新建用户
3. smbpasswd -a westos 把westos用户加入到smb用户
New SMB password: smb登陆时的密码
Retype new SMB password:
Added user westos.
4.smbpasswd -a student 把student用户加入到smb用户
New SMB password: smb登陆时的密码
Retype new SMB password:
Added user westos.

5. useradd westos1 新建用户westos1
smbpasswd -a westos1 把westos1用户加入到smb用户
New SMB password:
Retype new SMB password:
Added user westos1.
6. pdbedit -L 查看smb用户
westos:1001:
westos1:1002:
student:1000:Student User
7. pdbedit -x westos1 删除smb用户westos1
pdbedit -L 查看smb用户
westos:1001:
student:1000:Student User
8. smbclient -L //172.25.254.107 -U westos 用户访问可以看到家目录
Enter westos's password: smb用户密码

注意:要编辑配置文件关闭黑名单。
(一)用户登陆上传,删除:
selinux关闭状态时:
1.smbclient //172.25.254.107/westos -U westos 用户登陆
Enter westos's password: smb用户密码
Domain=[WESTOS] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls 查看家目录文件
. D 0 Thu May 3 21:47:59 2018
.. D 0 Thu May 3 21:50:56 2018
.bash_profile H 193 Wed Jan 29 07:45:18 2014
.mozilla DH 0 Thu Jul 10 18:29:32 2014
.config DH 0 Thu Jul 10 19:06:52 2014
.bashrc H 231 Wed Jan 29 07:45:18 2014
.bash_logout H 18 Wed Jan 29 07:45:18 2014
60458 blocks of size 8192. 56477 blocks available
smb: \> !ls 查看/etc/yum.repos.d(当前位置)目录下的文件
rhel_dvd.repo
smb: \> put rhel_dvd.repo 上传rhel_dvd.repo
putting file rhel_dvd.repo as \rhel_dvd.repo (165.0 kb/s) (average 165.0 kb/s)
smb: \> ls 查看家目录rhel_dvd.repo文件有
. D 0 Thu May 3 22:03:01 2018
.. D 0 Thu May 3 21:50:56 2018
.bash_profile H 193 Wed Jan 29 07:45:18 2014
.mozilla DH 0 Thu Jul 10 18:29:32 2014
rhel_dvd.repo A 169 Thu May 3 22:03:01 2018
.config DH 0 Thu Jul 10 19:06:52 2014
.bashrc H 231 Wed Jan 29 07:45:18 2014
.bash_logout H 18 Wed Jan 29 07:45:18 2014
60458 blocks of size 8192. 56477 blocks available

smb: \> rm rhel_dvd.repo 删除文件rhel_dvd.repo
smb: \> ls
. D 0 Thu May 3 22:04:22 2018
.. D 0 Thu May 3 21:50:56 2018
.bash_profile H 193 Wed Jan 29 07:45:18 2014
.mozilla DH 0 Thu Jul 10 18:29:32 2014
.config DH 0 Thu Jul 10 19:06:52 2014
.bashrc H 231 Wed Jan 29 07:45:18 2014
.bash_logout H 18 Wed Jan 29 07:45:18 2014
60458 blocks of size 8192. 56477 blocks available
smb: \> ? 查看可执行命令
? allinfo altname archive backup
blocksize cancel case_sensitive cd chmod
chown close del dir du
echo exit get getfacl geteas
hardlink help history iosize lcd
link lock lowercase ls l
mask md mget mkdir more
mput newer notify open posix
posix_encrypt posix_open posix_mkdir posix_rmdir posix_unlink
print prompt put pwd q
queue quit readlink rd recurse
reget rename reput rm rmdir
showacls setea setmode stat symlink
tar tarmode timeout translate unlock
volume vuid wdel logon listconnect
showconnect tcon tdis tid logoff
.. !
(二)用户挂载:一次性挂载和永久挂载
一次性挂载:
1. mount -o username=westos,password=westos //172.25.254.107/westos /mnt
把smb用户挂载在/mnt下,一次性挂载(可以用shell命令,比如touch)
df 查看挂载

2. cd /mnt/ 进入目录ls查看
touch file 可以建立文件,ls可以查看建立的文件file

3. umount /mnt/ 卸载挂载
永久挂载:
1. vim /etc/fstab 编辑配置文件(永久挂载)
内容:
//172.25.254.107/westos /mnt cifs defaults,username=westos,password=westos 0 0
2. mount -a 挂载
3. df 查看挂载

selinux开启状态时:
1. vim /etc/sysconfig/selinux 打开selinux状态


2. systemctl start smb 打开服务
3. smbclient //172.25.254.107/westos -U westos
Enter westos's password:
Domain=[WESTOS] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*
登陆进来查看不到家目录文件
4. vim /etc/samba/smb.conf 查看配置文件bool值
内容:
30 # setsebool -P samba_enable_home_dirs on (30行)

5. setsebool -P samba_enable_home_dirs on 更改bool值
6. smbclient //172.25.254.107/westos -U westos 登陆
Enter westos's password:
Domain=[WESTOS] OS=[Unix] Server=[Samba 4.1.1]
smb: \> ls 可以查看家目录文件

四.共享目录
(1)自己手动建立的目录要更改安全上下文
服务端:
1. mkdir /smbdir 建立目录
touch /smbdir/file 建立文件
semanage fcontext -a -t samba_share_t '/smbdir(/.*)?' 修改安全上下文
restorecon -RvvF /smbdir/ 刷新安全上下文列表

2. vim /etc/samba/smb.conf 编辑配置文件设置共享目录
内容:
322 [westos] 名称(客户端可看到的)
323 comment = smbdir directory 说明(客户端可看到的)
324 path = /smbdir 真实存在的目录位置

3.systemctl restart smb 重启服务
客户端:
1. smbclient -L //172.25.254.107 107可以访问

2. smbclient //172.25.254.107/westos -U westos smb用户westos可以访问,可以看到file文件

(2)系统存在的目录要修改smb的bool值:
服务端:
1.touch /mnt/mntfile 建立文件
2. vim /etc/samba/smb.conf 编辑配置文件设置共享目录
内容:
325 [mnt]
326 comment = mnt directory
327 path = /mnt
2. systemctl restart smb 重启服务
客户端:测试
1. smbclient -L //172.25.254.107 可以访问

2. smbclient //172.25.254.107/mnt -U westos smb用户访问不了

服务端:修改smb的bool值
1. getsebool -a | grep samba 查看smb的bool值
samba_create_home_dirs --> off
samba_domain_controller --> on
samba_enable_home_dirs --> on
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
use_samba_home_dirs --> off
virt_sandbox_use_samba --> off
virt_use_samba --> off

2. setsebool -P samba_export_all_rw on 读写打开
客户端:可以访问
1. smbclient //172.25.254.107/mnt -U westos

(3)用户的写权限
1)所有用户可以写:
服务度:
1. vim /etc/samba/smb.conf 编辑文件
内容:
writable = yes 任何用户都可以
write list = westos westos用户可写(@westos表示组成员可写)
2. systemctl restart smb.service 重启服务
3. chmod 777 /smbdir/
4.mount //172.25.254.107/westos /mnt -o password=westos,username=westos

客户端:
1.touch /smbdir/file

2.smbclient //172.25.254.107/mnt -U westos

3. rm -fr /smbdir/file

2)westos用户可以建立,删除文件
1. touch /mnt/file 建立文件,并查看
file
2. rm -fr /mnt/file 删除文件

student用户可建立,删除文件
westos用户可写:
1.vim /etc/samba/smb.conf 编辑文件
内容:
write list = westos 只有westos用户可以建立,删除文件

2. systemctl restart smb.service 重启服务
服务端:student用户不可写
westos用户组可写:vim /etc/samba/smb.conf 编辑配置文件
write list = @westos
browseable=yes 隐藏文件
admin users=student 以student用户建立文件
guest ok=yes 匿名用户可以登陆

服务端:测试

五.smb多用户挂载:
客户端:
1. yum install cifs-utils -y 安装软件
2. man mount.cifs 查看挂载手册
3. vim /root/smbuser 编辑文件
内容:
username=student
password=student

4. mount -o credentials=/root/smbuser,sec=ntlmssp,multiuser //172.25.254.107/westos /mnt 挂载

5. cd /mnt/ 进入目录查看
6. touch hello 建立文件
touch: cannot touch ‘hello’: Permission denied 不能建立文件

服务端:
切换到student用户
1. cifscreds add -u westos 172.25.254.107
Password: 输入密码

2.cd /mnt/ 进入目录ls查看
3.touch file 可以建立文件
4.rm -fr file 可以删除文件
恢复:
1.umount /mnt/
2.rm -fr /root/smbuser
NFS网络文件系统:
NFS:网络文件系统,是通过网络,对不同主机上的文件进行共享。
NFS:autofs服务,设定自动挂载。
服务端:
1. yum install nfs-utils -y 安装软件
2. systemctl start nfs 打开软件
3. mkdir /nfsdir 建立目录

4. vim /etc/exports 编辑配置文件
内容:
/nfsdir *(sync) 允许所有人同步
5. exportfs -rv 重启服务
exporting *:/nfsdir
6. systemctl stop firewalld 关闭防火
7.systemctl disable firewalld 开机关闭防火墙

客户端:
1. showmount -e 172.25.254.107
Export list for 172.25.254.107:
/nfsdir *
2.mount 172.25.254.107:/nfsdir /mnt 挂载
3. df 查看年挂载

4.umount /mnt/ 卸载
服务端:(107)
7. vim /etc/exports 编辑配置文件
内容:
/nfsdir *(sync) 172.25.254.207(rw,sync) 允许所有人同步,207读写同步

8. exportfs -rv 重启服务
exporting 172.25.254.207:/nfsdir
exporting *:/nfsdir

客户端:(207)
1. showmount -e 172.25.254.107
2. mount 172.25.254.107:/nfsdir /mnt 挂载
3. df 查看挂载

3.cd /mnt/ 进入目录
4.touch file 建立文件权限不够,跟/nfsdir目录权限有关
touch: cannot touch ‘file’: Permission denied

3.umount /mnt 卸载挂载

autofs服务:在客户端做(自动挂载,不用时会自动卸载)
1. yum install autofs -y 安装软件
2. systemctl start autofs 打开服务
3.cd /net/ 进入目录
4. cd 172.25.254.107 进入查看当前位置
/net/172.25.254.107

nfsdir
6. cd nfsdir/ 进入目录
7. df 查看,会自动挂载

8. rpm -qc autofs 查看配置文件
/etc/auto.master
/etc/auto.misc
/etc/auto.net
/etc/auto.smb
/etc/autofs_ldap_auth.conf
/etc/sysconfig/autofs
/usr/lib/systemd/system/autofs.service
9. vim /etc/sysconfig/autofs 编辑配置文件
内容:
13 TIMEOUT=5 设置时间5秒不用后会自动卸载(默认为300秒)

10. systemctl restart autofs 重启服务
11. df 查看挂载,(5秒后自动卸载)

在客户端:
1. vim /etc/auto.master 编辑文件
内容:
8 /mnt /etc/auto.mnt
挂载上及目录 文件
2. vim /etc/auto.mnt 编辑文件
内容:
nfsdir -ro,vers=3 172.25.254.107:/nfsdir
挂载点 挂载参数vers=3(版本3) 挂载文件
3. systemctl restart autofs 重启服务
4. cd /mnt/nfsdir 进入目录
df 查看挂载

5. mount 查看挂载参数
172.25.254.107:/nfsdir on /mnt/nfsdir type nfs (ro,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=172.25.254.107,mountvers=3,mountport=20048,mountproto=udp,local_lock=none,addr=172.25.254.107)
用户登陆权限:
在服务端:
1. vim /etc/exports 编辑配置文件
内容:/nfsdir *(sync) 172.25.254.207(rw,sync,no_root_squash) 允许所有人同步,允许207这台主机读写同步,以root用户挂载

2. exportfs -rv 重启服务
exporting 172.25.254.207:/nfsdir
exporting *:/nfsdir

在客户端:
1. vim /etc/auto.mnt 编辑文件
内容:
nfsdir -rw,vers=3 172.25.254.107:/nfsdir 修改挂载参数为rw
2. systemctl restart autofs 重启服务
3. cd /net/172.25.254.107
4. cd nfsdir/ 进入目录
5. df 查看挂载

6. touch file 可以建立文件
7.ll 查看显示文件,文件是以root用户,root组建立。

在服务端:更改挂载参数
1. vim /etc/exports
内容:
/nfsdir *(sync) 172.25.254.207(rw,sync,anonuid=1000,anongid=1000) 指定文件的建立者

2. exportfs -rv
exporting 172.25.254.207:/nfsdir
exporting *:/nfsdir

3. chmod 777 /nfsdir/ 更改目录权限

在客户端:207
1. cd /net/172.25.254.107 登陆
cd nfsdir/ 进入目录查看文件

2. touch file1 建的文件是以student用户建立的
3. ll 查看文件
total 0
-rw-r--r--. 1 root root 0 May 4 04:06 file
-rw-r--r--. 1 student student 0 May 4 04:14 file1
ISCSI服务器(网络设备的架设):
一.服务端:
1. yum install targetcli -y 安装软件
2. systemctl start target 打开服务
3. fdisk /dev/vdb 添加一个分区

4. partprobe 同步分区表

5.
第一步:登陆查看设备

ls查看设备:蓝色为目录,紫色为文件

第二步:关联设备,添加分区
/> /backstores/block create westos:storage1 /dev/vdb2
第三步:建立IQN
/> /iscsi create iqn.2018-05.com.westos:storage1
第四步:建立ACL(加密)
/>/iscsi/iqn.2018-05.com.westos:storage1/tpg1/acls create
iqn.2018-05.com.westos:storage1
第五步:关联设备
/>/iscsi/iqn.2018-05.com.westos:storage1/tpg1/luns create /backstores/block/westos:storage1
第六步:打开端口
/>/ iscsi/iqn.2018-05.com.westos:storage1/tpg1/portals create 172.25.254.107
第七步:退出
/> exit
二.客户端:
1. yum search iscsi 查看软件包
Loaded plugins: langpacks
============================== N/S matched: iscsi ==============================
iscsi-initiator-utils.i686 : iSCSI daemon and utility programs
iscsi-initiator-utils.x86_64 : iSCSI daemon and utility programs
iscsi-initiator-utils-iscsiuio.x86_64 : Userspace configuration daemon required
: for some iSCSI hardware
libiscsi.i686 : iSCSI client library
libiscsi.x86_64 : iSCSI client library
Name and summary matches only, use "search all" for everything.
2. yum install iscsi-initiator-utils-iscsiuio.x86_64 -y 安装软件
3. iscsiadm -m discovery -t st -p 172.25.254.107 查找设备
172.25.254.107:3260,1 iqn.2018-05.com.westos:storage1

4. iscsiadm -m node -T iqn.2018-05.com.westos:storage1 -p 172.25.254.107
5. iscsiadm -m node -T iqn.2018-05.com.westos:storage1 -p 172.25.254.107 -l 登陆
Logging in to [iface: default, target: iqn.2018-04.com.westos:storage1, portal: 172.25.254.107,3260] (multiple)
iscsiadm: Could not login to [iface: default, target: iqn.2018-04.com.westos:storage1, portal: 172.25.254.107,3260].
iscsiadm: initiator reported error (24 - iSCSI login failed due to authorization failure)
iscsiadm: Could not log into all portals 钥匙不匹配登不进去
6. vim /etc/iscsi/initiatorname.iscsi 编辑文件
内容:
InitiatorName=iqn.2018-05.com.westos:storage1 钥匙

7. systemctl restart iscsid 重启服务
8. iscsiadm -m discovery -t st -p 172.25.254.107 发现设备
172.25.254.107:3260,1 iqn.2018-05.com.westos:storage1
9. iscsiadm -m node -T iqn.2018-05.com.westos:storage1 -p 172.25.254.107 -l 登陆
Logging in to [iface: default, target: iqn.2018-04.com.westos:storage1, portal: 172.25.254.107,3260] (multiple)
Login to [iface: default, target: iqn.2018-04.com.westos:storage1, portal: 172.25.254.107,3260] successful. 登陆成功
10. fdisk -l 查看分区,可以看到一个sda分区


11. fdisk /dev/sda 对sda分区进行分区

12. mkfs.xfs /dev/sda1 格式化分区表

三.挂载(临时)
mount /dev/sda1 /mnt/ 挂载
在/mnt/写文件实际上在172.25.254.107主机的/dev/vdb2里面。

四.设定永久挂载
1.vim /etc/fstab 编辑配置文件
内容:
/dev/sda1 /mnt xfs defaults,_netdev 0 0 _netdev表示网络设备

2.mount -a 挂载

3.如果重启后无法正常开启:
virsh destroy server 强制关闭
rht-vmctl start server 打开虚拟机
rht-vmctl view server 显示虚拟机
4.df 查看挂载

五.设备的还原:
一.服务端:
1.targetcli 登陆
2.clearconfig confirm=True 删除真实设备

设备已删除:

二.客户端:
1.yum install tree -y 安装目录树软件

2.tree /var/lib/iscsi/ 查看设备
/var/lib/iscsi/
├── ifaces
├── isns
├── nodes
│ └── iqn.2018-04.com.westos:storage1
│ └── 172.25.254.107,3260,1
│ └── default
├── send_targets
│ └── 172.25.254.107,3260
│ ├── iqn.2018-04.com.westos:storage1,172.25.254.107,3260,1,default -> /var/lib/iscsi/nodes/iqn.2018-04.com.westos:storage1/172.25.254.107,3260,1
│ └── st_config
├── slp
└── static
10 directories, 2 files

注意:-u 卸载,重启后设备会再次出现。-o delete删除,重启后设备不会出现。
2.iscsiadm -m node -T iqn.2018-05.com.westos:storage1 -u 卸载,重启后设备会再次出现
3.iscsiadm -m node -T iqn.2018-05.com.westos:storage1 -o delete 删除,重启后不会出现
4.tree /var/lib/iscsi/ 查看设备
/var/lib/iscsi/
├── ifaces
├── isns
├── nodes
├── send_targets
│ └── 172.25.254.107,3260
│ └── st_config
├── slp
└── static
7 directories, 1 file
