Samba简单配置--匿名用户共享资料可读可写的实现
http://e-mailwu.blog.163.com/blog/static/65104036200931893921923/
http://www.cnblogs.com/god_like_donkey/archive/2009/07/12/1521930.html
第一步: 更改smb.conf
我们来实现一个最简单的功能,让所有用户可以读写一个Samba 服务器共享的一个文件夹;我们要改动一下smb.conf ;
首先您要备份一下smb.conf文件;
[root@localhost ~]# cd /etc/samba
[root@localhost samba]# mv smb.conf smb.confBAK
然后我们来重新创建一个smb.conf文件;
[root@localhost samba]#touch smb.conf
然后我们把下面这段写入smb.conf中;
[global]
workgroup = LinuxSir
netbios name = LinuxSir05
server string = Linux Samba Server TestServer
security = share
[linuxsir]
path = /opt/linuxsir
writable = yes
browseable = yes
guest ok = yes
注解:
[global]这段是全局配置,是必段写的。其中有如下的几行;
workgroup 就是Windows中显示的工作组;在这里我设置的是LINUXSIR (用大写);
netbios name 就是在Windows中显示出来的计算机名;
server string 就是Samba服务器说明,可以自己来定义;这个不是什么重要的;
security 这是验证和登录方式,这里我们用了share ;验证方式有好多种,这是其中一种;另外一种常用的是user的验证方式;
如果用share呢,就是不用设置用户和密码了;
[linuxsir] 这个在Windows中显示出来是共享的目录;
path = 可以设置要共享的目录放在哪里;
writable 是否可写,这里我设置为可写;(设置目录其他用户对这个目录有“写”的权限)
browseable 是否可以浏览,可以;可以浏览意味着,我们在工作组下能看到共享文件夹。如果您不想显示出来,
那就设置为 browseable=no
guest ok 匿名用户以guest身份是登录;
第二步:建立相应目录并授权(可以略掉);
[root@localhost ~]# mkdir -p /opt/linuxsir
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@localhost ~]# chown -R nobody:nobody /opt/linuxsir
注释:关于授权nobody,我们先用id命令查看了nobody用户的信息,发现他的用户组也是nobody,我们要以这个为准。有些系统nobody用户组并非是nobody ;
第三步:启动smbd和nmbd服务器;
[root@localhost ~]# smbd
[root@localhost ~]# nmbd
第四步:查看smbd进程,确认Samba 服务器是否运行起来了;
[root@localhost ~]# pgrep smbd
13564
13568
第五步:访问Samba 服务器的共享;
在Linux 中您可以用下面的命令来访问;
[root@localhost ~]# smbclient -L //LinuxSir05
Password: 注:直接按回车
在Windows中,您可以用下面的办法来访问;
在运行里输入:
\\计算机名地(IP)
前段时间在实验室的4*4核服务器上安装Samba服务器,解决了服务器安装的硬件问题后,在服务器上配好了Samba,但在客户机访问Samba时,显示错误。查看到主机机器上右上方有红色感叹号显示,点击一看,是SELinux报警,报警时间与每次客户机访问samba时间一致,估计是SELinux太严谨的问题,将客户机的错误信息在网上搜索,查找到果然是samba与SELinux冲突的问题。
PS:曹老师开始用挂载的方法配NSF时也没配成功,同样是SELinux的问题,关闭后可解决。
方法一:关闭SELinux,并修改配置文件,使系统启动时不启动SELinux。(我采用的是这种方法)
Disable selinux
[root@Jie ~]# vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
把 SELINUX设定为disable, 下次启动系统后将会停止SElinux。
Linux核心参数(Kernel Parameter)
或者可以在核心参数后加上: selinux=0 (停止) 或 selinux=1 (开启)参数
档案/boot/grub/menu.lst
title Fedora Core (2.6.18-1.2798.fc6)
root (hd0,0)
kernel /vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet selinux=0
initrd /initrd-2.6.18-1.2798.fc6.img
检查SELinux现时况态
要知到你现在是否使用 SELinux:
# getenforce
disabled
方法二:不关闭SELinux配置 samba的方法(未测试)
将smb.conf中如下这两行启用(去掉行首的;号就可以了)
setsebool -P samba_domain_controller on setsebool -P samba_enable_home_dirs on这两行生效后,自己的home目录就可以正常读写了。
如果想将/home/samba/temp目录设置成完全的共享就应该在字符状态写输入:chcon -t samba_share_t /home/samba/temp 同时不要忘记将/home/samba/temp目录属性设置成777 就可以了。其它和以前的FC版本应该没有什么区别了。
默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smb.conf中允许了这项操作。
假设你已经配置了共享目录/share并允许用户进行读写,而你又不想关闭SELinux的话,可以试试以下操作:
程序代码:
#/usr/sbin/setsebool -P allow_smbd_anon_write=1
#chcon -t public_content_rw_t /share
其中第一条语句设置SELinux放行标记了public_content_rw_t的内容,第二条语句把欲共享的/share目录标记为public_content_rw_t。
附SELinux资料:
selinux简介
SElinux 在linux内核级别上提供了一个灵活的强制访问控制系统(MAC),这个强制访问控制系统是建立在自由访问控制系统(DAC)之上的。
DAC是指系统的安全访问控制都是由系统管理员root自由管理的,不是系统强制行为
MAC运行的时候,比如一个应用程序或者一个线程以某个用户UID或者SUID运行的时候同样对一些其他的对象拥有访问控制限制,比如文件,套接子(sockets)或者其他的线程
通过运行SElinux MAC内核可以保护系统不受到恶意程序的侵犯,或者系统本身的bug不会给系统带来致命影响(把影响限定在一定范围内)
SElinux为每一个用户,程序,进程,还有文件定义了访问还有传输的权限。然后管理所有这些对象之间的交互关系
对于SELinux设定的对象全限是可以根据需要在安装时候规定严格程度,或者完全禁用
在大多数情况下,SElinux对于用户来说是完全透明的,普通用户根本感觉不到 Selinux的存在,只有系统管理员才需要对这些用户环境,以及策略进行考虑。这些策略可以按照需要宽松的部署或者应用严格的限制,Selinux提供 了非常具体的控制策略,范围覆盖整个linux系统
比如,当一个对象如应用程序要访问一个文件对象,内核中的控制程序检查访问向量缓存 (AVC),从这里寻找目标和对象的权限,如果在这里没有发现权限定义,则继续查询安全定义的上下关联,以及文件权限,然后作出准许访问以及拒绝访问的决 定。如果在var/log/messages出现avc: denied信息,则表明访问拒绝。
目标和对象通过安装的策略来决定自身的安全关联,同时这些安装的策略也负责给系统产生安全列表提供信息。
除了运行强制模式以外,SELinux可以运行在许可模式,这时候,检查AVC之后,拒绝的情况被记录。Selinux不强制使用这种策略.
以下介绍一下SELinux相关的工具
/usr/bin/setenforce 修改SELinux的实时运行模式
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
如果要彻底禁用SELinux 需要在/etc/sysconfig/selinux中设置参数selinux=0 ,或者在/etc/grub.conf中添加这个参数
/usr/bin/setstatus -v
Samba简单配置--匿名用户共享资料可读可写的实现的更多相关文章
- samba简单配置
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB (Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种 ...
- Jenkins配置匿名用户拥有只读权限
场景:查看cucumber reporting测试报告时需要登陆,比较麻烦 解决:允许匿名用户拥有只读权限 操作:Jenkins->系统管理->全局安全配置->授权策略,勾选“All ...
- centos 6.5 samba简单配置
1.安装samba yum -y install samba (我的显示已经安装啦!) 2.编辑samba的配置文件 vi /etc/samba/smb.conf 用 testparm查看我配置后的 ...
- centos7搭建ftp服务器并配置匿名用户
什么是FTP? FTP(File Transfer Protocol,文件传输协议),是TCP/IP网络和Internet上最早使用的协议之一.用来将实现从一台电脑传送文件到另一台电脑,或者接收和查看 ...
- <转载> FreeNAS的安装和简单配置 http://freenas.cn/?p=342
前些日子在公司搭了一个模拟生产环境的平台.由于是测试环境,资源有限只能使用虚拟机实现,所以存储这块就想到了使用FreeNAS.很早以前玩儿过几次,当时是生产环境需要上存储设备,经过对比还是选择的更可靠 ...
- vsftpd配置虚拟用户为登录用户02
1.安装vsftpd 安装依赖包: yum -y install pam pam-devel db4 de4-devel db4-uitls db4-tcl 新建vsftpd系统用户: #建立Vsft ...
- ubuntu ftp 建立匿名用户 [转]
转自:http://www.cnblogs.com/cocoajin/p/3761414.html ubuntu server vsftpd 匿名用户上传下载及目录设置 1:vsftpd服务器安装: ...
- ubuntu server vsftpd 匿名用户上传下载及目录设置
ubuntu server vsftpd 匿名用户上传下载及目录设置 1:vsftpd服务器安装: sudo apt-get install vsftpd #安装 cd /srv/ #切换到默认匿名用 ...
- samba共享修改匿名用户为非nobody
samba共享修改匿名用户为非nobody 1)linux的samba用户,如果开启匿名用户登陆共享权限,security 设置为 share ,配置如下:[root@centos69:~]$grep ...
随机推荐
- activitmq+keepalived+nfs 非zk的高可用集群构建
nfs 192.168.10.32 maast 192.168.10.4 savel 192.168.10.31 应对这个需求既要高可用又要消息延迟,只能使用变态方式实现 nfs部署 #yum ins ...
- 自己封装一个readline函数实现服务器客户端回射
实现的功能:一次只能读取一行,客户端输入之后,一回车,马上字符串传到服务器端并显示在终端,然后服务器端将字符串又传回给客户端. 服务器端可以接收多个客户端的连接请求,并fork一个子进程来进行服务. ...
- shim和polyfill的区别
今天看vue的响应原理,突然被提到shim这个词,翻阅些许资料然后整理出以下这些内容. 在JavaScript的世界里,有两个词经常被提到,shim和polyfill. 首先理解这两个词之前我们先来了 ...
- [Usaco2009 Nov]lights
题目描述: 给出$n$,$m$,表示有$n$盏灯和$m$条奇怪的电线,按下电线一段的灯后另一端会有影响. 求最少按几次. 题解: 高消解异或方程组,得到一堆自由元后搜索自由元状态,然后不断更新答案. ...
- loj6063 Shadow
题目描述 题解: 显然凸多面体投下来一定是个凸多边形. 对于$30$分,直接投到$x-y$平面上即可. 对于$100$分,考虑搞出平面的一般式方程$ax+by+cz+d=0$. 给出平面上三个点$A, ...
- openjudge-1664 放苹果
总时间限制: 1000ms 内存限制: 65536kB 描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. 输 ...
- Ubuntu16.04下安装pip
按照下面的步骤来安装 sudo apt-get install python-setuptools python-dev build-essential 安装python2的pip (要想好你用p ...
- blocking and nonblocking assign
key word: 仿真建模 clock采样block/nonblock blocking时,有时候clk会sample edge后的data: nobocking时,clk sample 以前的d ...
- Android设置透明状态
xml中: android:background="@android:color/transparent" 半透明: android:background="#e0000 ...
- .net异步编程async和await的讨论收获
微软官方描述: C# 5 引入了一种简便方法,即异步编程.此方法利用了 .NET Framework 4.5 及更高版本..NET Core 和 Windows 运行时中的异步支持. 编译器可执行开发 ...