05. 配置 Samba提供匿名服务 配置不允许删除文件

Fernando_chifa 2023-01-13 02:40:52

课时名称课时知识点
05. 配置 Samba提供匿名服务 配置不允许删除文件05. 配置 Samba提供匿名服务 配置不允许删除文件
...全文
55 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
Samba企业实战与应用 1 企业环境与需求 samba服务器目录: 企业数据目录:/panydata 公共目录:/panydata/share 销售部目录:/panydata/sales 技术部:/panydata/tech 企业员工情况: 总经理:gm 销售部:销售部经理 redking、员工 sky、员工 jane 技术部:技术部经理 michael、员工 bill、员工 joy 搭建samba文件服务器,建立公共共享目录,允许所有人访问,权限为只读,为销售部和 技术局部别建立单独的目录,只可以总经理和相应部门员工访问,并且公司员工禁止访 问非本部门的共享目录。这是个典型的企业文件服务器案例。 2 需求分析 对于建立公共目录public字段就可以实现匿名访问,员工只能访问本部门的共享目录 ,禁止访问非本部门的共享目录,我们可以通过设置目录共享字段"browseable = no〞与字段"valid users〞来实现其隐藏功能和相应的访问权限。这样设置不能很好得解决同一目录多种需 求的权限设置,所以我们需要建立独立配置文件,为每个部门建立一个组后并为每个组 建立配置文件来实现隔离用户权限会比拟灵活 3 解决方案 1〕建立各部门专用共享目录 使用mkdir建立需求的共享目录以便分门别类的存储相应资料。 同时设置/panydata共享目录的用户权限 2〕添加samba服务器描述与设置smbpasswd文件 默认/etc/samba/目录下没有smbpasswd文件,我们要先关闭samba的tdbsam验证。 注释掉passdb backend = tdbsam 一行,为了指定samba用户的验证我们加上这一条smb passwd file = /etc/samba/smbpasswd,然后保存退出。 3)添加用户和组 先建立销售部组sales,技术部组tech,然后使用useradd命令添加总经理某某gm与各个 员工的某某并参加相应的用户组。 接着使用smbpasswd命令添加samba用户 最后将某某gm的samba用户添上 〔1〕建立单独配置文件 复制系统的smb配置文件为用户配置文件和组配置文件 这里我们,在global中添加相应字段,确保samba服务器的主配置文件可以调用独立的用 户配置文件和组配置文件。 表示使samba服务器加载/etc/samba目录下格式为"〞的配置文件。 表示使samba服务器加载/etc/samba目录下格式为"〞的配置文件。 设置共享目录/panydata/share 〔5〕设置总经理gm配置文件 〔6〕设置销售部组sales配置文件 〔7〕设置技术部组tech配置文件 〔8〕开启samba服务 service smb start 〔9〕测试 我们先用gm某某登录测试 可以全部看到共享目录。 /panydata/share目录只读 注意: 最好禁用RHEL5中的selinux功能,否如此会出现些莫名其妙滴问题,比如下面的某某gm 明明对共享目录sales和tech是777的权限,但就是只能创建文件却不能创建文件夹~ 关闭selinux,打开selinux配置文件/etc/selinux/config设置selinux = disabled后保存退出并重启Linux系统。 查看selinux当前状态sestatus -v 现在我们就可以创建文件夹了 现在我们以其他某某测试,在之前先删除刚刚建立的默认连接 就用技术部joy吧 在这里技术部的员工就看不到销售部的共享目录。 同时对public目录只读权限,对tech目录有读写权限。 因为禁止对共享目录sales访问,就算知道了\\192.168.72.128\sales路径也是不能访问 的 4 Samba排错 1〕Linux服务一般滴排错方法 〔1〕错误信息 一般仔细看下显示的错误信息,根据错误提示一般的问题就可以判断问题出在什么地方 了。 〔2〕配置文件 第2个我们可以查配置文件,有时可能误操作导致配置失误,服务无法正常运行,我们可 以通过检查配置文件来确认问题。现在很多服务的软件包有自带配置文件检查工具,我 们可以通过这些工具对配置文件进展检查~ 〔3〕日志文件 如果服务出现问题,我们还可以使用tail命令来动态监控日志文件〔在CLI状态下可以使 用Ctrl+Alt+F1~F6切换到另一个CLI文字终端下查看〕。 tail -F /var/log/messages 2〕samba服务故障排错 〔1〕使用testparm命令检查 上面提到软件包有自带的配置文件检查工具,我们可以使用testparm命令检测smb.conf 文件的语法,如果报错,说明smb.conf文件设置有错误,这样我们可以根据提示信息来 修改主配置文件和独立配置文件。 t
http://www.linuxidc.com/Linux/2014-12/110459.htm Samba-4.1.14服务器安装和配置 http://www.2cto.com/os/201408/327930.html 【Linux笔记】sambav4.1.9源码安装及基本使用说明 http://blog.sina.com.cn/s/blog_627617bf0101s4ps.html samba4.1.6源代码部署及配置 (2014-04-04 09:41:00)转载 2016/6/14 15:23 由于ubuntu14.04.4麒麟版本使用: sudo apt-get install samba安装的samba是:V4.3.9 共享文件时ubuntu上的samba V4.3.9会出错(崩溃)。 所以直接使用源码安装来共享文件了(从win7来访问ubuntu14.04.4麒麟版本)。 标签: samba linux资源共享 smb 分类: Samba SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。 samba服务器搭建: 1.解压samba-4.1.6.tar.gz得到samba-4.1.6目录 tar -xvzf samba-4.1.6.tar.gz 2.进入samba-4.1.6目录,在该目录下输入: ./configure --prefix=/usr/local sudo ./configure --prefix=/usr/local/samba-4.1.6 make make install sudo make install 注意:4.x版本的samba的build system是基于python的,必须安装有python2.5版本以上。(python3.x系列的不行) 如果系统没有符合条件的python版本,可以运行samba-4.1.6目录下的install_with_python.sh,会自动帮你安装python。(./install_with_python.sh /usr/local) 3.创建一个文件夹,用来共享文件 mkdir -p /home/fzuir/share chmod 777 /home/fzuir/share 4.samba配置samba源码目录samba-4.1.6中的samba-4.1.6/examples/smb.conf.default复制到安装目录,一般是/usr/local/samba/etc/中 cp ~/samba-4.1.6/examples/smb.conf.default /usr/local/samba/etc/ 修改配置文件 sudo vim /usr/local/samba/smb.conf (1)修改samba服务器的安全模式,samba的安全模式有:(默认是user,不修改也可) share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低。 user:Samba Server共享目录只能被授权的用户访问,由Samba Server负责检查账号和密码的正确性。账号和密码要在本Samba Server中建立。 server:依靠其他Windows NT/2000或Samba Server来验证用户的账号和密码,是一种代理验证。此种安全模式下,系统管理员可以把所有的Windows用户和口令集中到一个NT系统上,使用Windows NT进行Samba认证, 远程服务器可以自动认证全部用户和口令,如果认证失败,Samba将使用用户级安全模式作为替代的方式。 domain:域安全级别,使用主域控制器(PDC)来完成认证。 修改方法:在配置文件中查找security=user,把前面的注释#去掉。 (2)添加文件共享定义信息 修改方法:在配置文件末尾添加如下内容: [Share] comment=Shared Folder path=/home/fzuir/share #public=yes(允许匿名访问) writable=yes(可写) #readonly=yes(只读) valid users=fzuir (可访问用户名,组可用 @组名) create mask=0700 directory mask=0700 available=yes browseable=yes [rootroot] comment=rootroot Shared Folder path=/ #public=yes writable=yes #readonly=yes valid users=rootroot create mask=0700 directory mask=0700 available=yes browseable=yes (3)修改编码 在[global]段内添加如下三行: display charset=UTF-8 unix charset=UTF-8 dos charset=cp936 5.添加samba用户 添加fzuir这个网络访问账户,fzuir用户如果已存在则不用。 sudo useradd fzuir 上面只是新增了fzuir这个用户,却没有赋予本机登录密码,所以只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。 现在在samba中添加这个帐号 sudo /usr/local/samba/bin/smbpasswd -a fzuir sudo /usr/local/samba-4.1.6/bin/smbpasswd -a fzuir cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ sudo /usr/local/samba-4.1.6/bin/smbpasswd -a rootroot Ignoring unknown parameter "display charset" New SMB password: Retype new SMB password: Added user rootroot. cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ 6.测试并启动samba sudo /usr/local/samba/bin/testparm cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ sudo /usr/local/samba-4.1.6/bin/testparm Load smb config files from /usr/local/samba-4.1.6/etc/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Unknown parameter encountered: "display charset" Ignoring unknown parameter "display charset" Processing section "[homes]" Processing section "[printers]" Processing section "[rootroot]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions [global] dos charset = cp936 workgroup = MYGROUP server string = Samba Server server role = standalone server log file = /usr/local/samba/var/log.%m max log size = 50 dns proxy = No idmap config * : backend = tdb [homes] comment = Home Directories read only = No browseable = No [printers] comment = All Printers path = /usr/spool/samba printable = Yes print ok = Yes browseable = No [rootroot] comment = rootroot Shared Folder path = / valid users = rootroot read only = No create mask = 0700 directory mask = 0700 cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ 重启samba: sudo /usr/local/samba/sbin/smbd restart sudo /usr/local/samba/sbin/nmbd restart sudo /usr/local/samba-4.1.6/sbin/smbd restart sudo /usr/local/samba-4.1.6/sbin/nmbd restart 7.在不同的系统之间访问samba (1)windows下:在文件管理器地址栏中输入\\samba服务器IP 即可以查看共享文件夹或者打印机。 \\192.168.0.8 (2)linux下: 方法1:使用smbclient 客户机以同样方式安装samba ①列出某个IP地址所提供的共享文件夹 sudo /usr/local/samba/bin/smbclient -L 192.168.0.1 -U username%password ②使用smbclient获取共享文件 sudo /usr/local/samba/bin/smbclient //192.168.0.1/Share -U username%password 执行成功后进入smbclient环境,出现命令提示符:smb:\> 这里可使用的命令有: ?:列出所有可用命令 cd:进入共享文件目录 del:删除某个文档 lcd:变换本机目录 ls:查看目前所在目录 dir:同ls get:下载单个文件 mget:下载多个文件 mput:上传多个文件 put:上传单个文件 rm:删除文件夹 exit:离开 方法2:使用mount进行挂载 可以使用mount挂载远程共享文件夹: sudo mount -o username=fzuir,password=123456 //192.168.0.1/Share /mnt/tmp

1

社区成员

发帖
与我相关
我的任务
社区管理员
  • Fernando_chifa
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧