一、samba的多用户挂载
- 出现问题:服务器端的共享目录是WESTOS,当客户端的root用户通过持有的samba账号(lee用户身份),将共享目录挂载到/opt目录,此时切换到/opt目录可以看到共享目录中的内容,但此时切换到客户端的westos用户(未经过服务器的samba认证,没有输入用户名和密码),也能看到共享目录的内容。
解决方法:客户端安装cifs-utils软件
使用mount命令,可以查看到用户挂载信息(使用的samba账号),这样很不安全
编辑/root/westossmb文件(认证密码文件),写入用户名和密码
之后进行挂载,但此时westos仍能看到/opt目录中的内容
先卸载挂载点,在挂载的时候加入参数multiuser(支持多用户认证,没有通过认证的用户不能访问samba服务)
此时,westos用户将无法访问/opt目录
sec参数的要求
查看samba服务的信息
最后加入参数sec=ntlmssp(支持多用户指认证的认证方式)
最后切换到westos用户,通过命令:cifscreds add -u westos 172.25.254.88(为客户端的westos用户添加认证:账号为westos),并输入密码,此时westos认证成功,当westos用户去访问/opt时,也可以看到共享目录中的文件
[westos@westosa /]$ cifscreds add -u lee 172.25.254.88
Key search failed: Key has expired :当遇到此报错信息
[westos@westosa /]$ cifscreds add -u lee -d 172.25.254.88
Password:
[westos@westosa ~]$ cifscreds clearall :执行以上两条命令解决报错
二、autofs+samba
- westosa占用了服务器的资源,但是没有数据交互,所以要对客户端优化,解决服务器端的压力。
客户端安装autofs软件
编辑/etc/autofs.conf 配置文件,设定3s之后自动卸载;
编辑/etc/auto.master 主策略文件,设定最终挂载点的上层目录为 /westos,以及子策略文件/etc/auto.samba ;
编辑子策略文件/etc/auto.samba ,设定最终挂载点、挂载参数(当前使用的挂载资源是samba共享-cifs)、挂载资源(://172.25.254.88/WESTOS)
设定完成,重启服务,此时/westos目录被自动创建((不需要建立/westos,设定好之后系统会自动映射)
停止服务后,westos目录消失
重启之后切换到 /westos/samba目录,df可以看到服务器的共享目录被自动挂载到当前目录
退出/westos目录,3s之后 df ,共享目录自动卸载
三、nfs(对数据的传输优化更好,安全性更高)
- westosb安装 nfs-util服务
设定westosb火墙允许 nfs-server
westosa显示被挂载的共享目录失败
nfs对外开放的端口:2049
- 当westosa访问westosb的nfs服务时,先访问westosb的rpc-bind服务(随即分配端口的程序),接着westosa用随机分配的端口去访问mountd服务(管理挂载设备),为了得到确定的访问端口。
- 设定westosb火墙允许rpc-bind服务
错误信息发生变化
设定westosb火墙允许 mountd 服务
westosa查看共享目录
编辑nfs的 共享配置文件/etc/exports,设定共享目录,共享范围(所有人),权限(只读),并刷新:exports -rv
westosa查看共享目录成功
此时(服务端)westosa就可以进行挂载
将共享目录的权限改为777,由于设定了/westos目录只读,因此时westosa无法在/mnt中建立文件
设定254网段的用户可以对此共享目录读写,其余用户只读;
此时westosa可以在/mnt中建立文件
- nfs配置参数
anonuid=1000:指定用户ID为1000,刷新设定
此时在/mnt中所建立的文件拥有者为westos
anongid=1001 :指定用户组为1001
此时在/mnt中所建立的文件拥有组为lee
no_root_squash:不能和指定用户身份的参数(anonuid、anonuid)一起出现;当客户端以root身份挂载共享目录到/mnt后,(在/mnt中建立的文件拥有者和拥有组都是root)延用root身份到服务器。
sync :更改生成后同步数据到服务器
async :时时同步数据到服务器
四、nfs+autofs
- 客户端安装autofa自动挂载工具
编辑/etc/auto.master ,设定挂载目录为/westos,策略文件为/etc/auto.nfs,
编辑/etc/auto.nfs,设定最终挂载点为nfs、挂载版本、 nfs服务器的共享目录;
重启服务后生效,当客户端切换到/westos后,可以看到最终挂载目录nfs,进入dfs目录后,df即可看到服务器的共享目录已被自动挂载到/westos/nfs目录上。
- 将共享目录/westos下的目录,分别进行挂载:
在服务器端共享目录目录/westos下建立5个目录westos{1…5}
编辑/etc/autofs.conf文件,设定等待资源闲置超时3S后,挂载资源自动卸载。
编辑/etc/auto.nfs,设定最终挂载目录为*(/westos下的任意目录),此时,客户端切换到/westos下任意westos*(1…5)目录,df 可以看到挂载信息。
切换到家目录,3s后,挂载资源自动卸载