最新消息: 新版网站上线了!!!

samba 配置共享 win7 无权限访问

1. 首先检查 samba是否启动,防火墙是否关闭

#service smb status    =>检查smb是否启动

#/etc/init.d/iptables status  =>检查 防火墙是否关闭

#service iptables stop  =>关闭防火墙

#service smb start     =>启动smb

2. 检查配置文件是否配置正确


我这里只说(并对配置文件进行精简)最基本的必须的配置项目。最基本的(最精简,最小的)samba配置文件,可以包括2部分,分别是: [global] 和 [用户自定义共享名字],2部分。我先讲global部分
[global]下面,每个选项都是对samba服务整体的选项进行配置的,比如采用何种登录模式,是否记录日志,工作组是什么,等等。该条目下,最基本的配置应该包括如下 3 行:
(1) workgroup = WORKGROUP
这个选项是配置 samba 机器所在的”局域网工作组“,自认是需要和局域网内其他要共享的机子,处在同一个组了。默认是 WORKGROUP组,如果你机子不是,请自行修改。
(2) security = share
这里设置的是samba 共享的模式。
share,是采用匿名模式;
users,是采用”用户名和密码登录“的方式;
如果你是采用匿名模式,就用share,就是了。
(3) server string = Ubuntu Linux
这个选项是说的:当前电脑,在局域网中的”名字“。我自己改成了叫:ubuntu Linux,大家也可以随便改,当然不能用中文。其实这个选项其实是可有可无的,但为了局域网内其他机子能更明显的找到你,我建议还是写个容易分辨的名字吧。
最基础的就这3行(或者也能叫2行)。剩下的,如果大家有兴趣,可以在网上搜下具体的内容。如果都写出来,呵呵,我估计今天别吃饭了。
[用户自定义共享名字] 部分
这部分是具体定义你的共享文件夹的相关属性,名称,权限的。一般包括如下项目,就足够使用了
(1) path = /software
这里设置的是具体的共享文件夹的路径,必须是绝对路径,不要写错哦,写成了不存在的路径或者多了不该有的空格,那么就拒绝访问了!
(2) browseable = yes
设置该共享文件夹,在局域网内是否”可以被看到“,一般都是  yes,(要是no,看不到怎么共享?)
(3) writable = yes
用户是否具有对该文件夹的写入(修改,删除)权限。自己看着办吧,可以修改就yes,否则就no
(4) guest ok = yes
是否允许匿名用户访问。这个是和上面的 security选项配合使用的,你要用share(匿名模式),这里肯定必须是yes了。如果是user模式,这里就是no(或者不要这个选项)
(5) valid users = 可用的用户名
这个项目,是针对 security的 users 模式的。如果那里设置的 users模式,这个选项就能指定,该共享文件夹,都允许哪些用户访问。
(6) comment = Ubuntu Linux File share
这个是对该共享文件夹进行补充说明的,有点注释的意思,它不是必须的。自己看着办, =后面的内容,必须是英文,随便写就行。
上面5个就是最基本的,最精简的选项了。足够一般使用了。下面,我给出2种模式的实例,大家看下。上面每个项目都看懂了,应该就能看明白下面的配置文件
三. 匿名模式的基础精简配置文件

[global]
workgroup = WORKGROUP
server string = Ubuntu Linux
security = share
[Ubuntu-Share]
path = /software
browseable = yes
writable = yes
guest ok = yes



3. 執行..
輸入:gpedit.msc
叫出「本機安全性原則」



如下圖:

電腦設定 - widnows 設定 - 安全性設定 - 本機原則 - 安全性選項

找:網路安全性 Lan Manager 驗證等級



修改值為以下:
優先使用 LV 和 NTLM (傳統編碼)
如有交涉,使用 NTLMv2 (win7 新的編碼)


4 . 最后的最后实在无法解决,请看绝招 :参看 smb.conf 里面的说明

意思即是如果要让你自己建的文件能被共享且允许被写,

需要

set a label “samba_share_t” to it .

所以运行

chcon–t samba_share_t /temp/

输入命令

ls –ldZ /temp/

 

,得到:

drwxr-xrwx

rootrootroot:object_r:samba_share_t /temp/

意思即是如果要让你自己建的文件能被共享且允许被写,

需要set a label “samba_share_t” to it .

 

#
# If you create a new directory you want to share you should mark it as
# "samba_share_t" so that selinux will let you write into it.
# Make sure not to do that on system directories as they may already have
# been marked with othe SELinux labels.
#
# Use ls -ldZ /path to see which context a directory has
#
# Set labels only on directories you created!
# To set a label use the following: chcon -t samba_share_t /path
#
# If you need to share a system created directory you can use one of the
# following (read-only/read-write):
# setsebool -P samba_export_all_ro on
# or
# setsebool -P samba_export_all_rw on
//If you want to share files other than home directorie
<如果你希望将目录共享给其他用户,你需要设置>
chcon -t samba_share_t /directory
当然这个方式不是很推荐

5. 最后还有一种可能让win 7无权限访问 samba 服务器

那就是selinux 禁止了 samba的行为

#getenforce   =>查看selinux 的状态

如果是 “Enforcing”,那么就

#setenforce 0  =>暂时设置为 “permissive”

如果要永久设置为 “permissive” ,那么就需要修改

#vim /etc/selinux/config

SELINUX=permissive

:wq

然后 重启

#reboot

转载请注明:谷谷点程序 » samba 配置共享 win7 无权限访问