samba的共享和ubuntu图形界面的共享什么关系[已解决]

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
charles.liu23
帖子: 7
注册时间: 2008-04-02 23:24

samba的共享和ubuntu图形界面的共享什么关系[已解决]

#1

帖子 charles.liu23 » 2008-05-02 21:35

我不明白ubuntu图形界面的共享和samba服务到底有没有关系。哪位前辈能指点一二?

我按照Ray兄的帖子设置好了Samba服务

另外:
在图形界面里手动共享了一个目录,和smb.conf里写的共享路径一致
用firestarter把防火墙关闭

这样就能在windows里访问到ubuntu的共享目录。

但我发现如果不在图形界面里设置共享"/home/charles/share"的话,从windows访问会提示“未知的用户名和密码"。(这个是什么原因呢?请帮忙看一下配置信息
如果只在图形界面里共享"/home/charles/123",而不修改smb.conf的话,却可以从windows访问;而且这时候smb.conf里也没体现出"/home/charles/123"这个路径。

以下是配置信息:
charles@charles-desktop:~$ sudo testparm
[sudo] password for charles:
Load smb config files from /etc/samba/smb.conf
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Share]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions

[global]
dos charset = cp936
display charset = UTF-8
server string = %h server (Samba, Ubuntu)
map to guest = Bad User
obey pam restrictions = Yes
passdb backend = tdbsam
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
username map = /etc/samba/smbusers
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
usershare allow guests = Yes
panic action = /usr/share/samba/panic-action %d
invalid users = root

[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
printable = Yes
browseable = No

[print$]
comment = Printer Drivers
path = /var/lib/samba/printers

[Share]
comment = Shared Folder with username and password
path = /home/charles/share
valid users = charles
force user = charles
force group = nogroup
read only = No
create mask = 0700
directory mask = 0700
guest ok = Yes
上次由 charles.liu23 在 2008-05-12 17:49,总共编辑 1 次。
centry
帖子: 43
注册时间: 2008-04-21 13:10

#2

帖子 centry » 2008-05-03 18:22

我接着问一个,我在图形界面里设置共享的时候,
弹出提示说,我的权限不够,要管理员才可以启动共享文件夹,
请问在图形界面不注销重登录可以临时获得管理员权限吗?
因为我在终端试过用“sudo -i”来获得管理员权限,
但这样操作之后,仍无法在图形界面设置共享文件夹。
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#3

帖子 angelus » 2008-05-03 18:35

我先回答下2楼的问题
在图形界面要使用管理员权限,可以使用命令
sudo nautilus /xxx/xxx 暂时使用root打开目录,关闭窗口就退出root权限了,只能用来打开目录
nautilus是gnome的文件管理,是ubuntu界面的管理,只能在ubuntu中用,
至于xubuntu不太记得了,好象是th什么的,可以在系统附件中看到那个文件管理名
kubuntu没有用过,对华丽占资源的东西不太感冒
上次由 angelus 在 2008-05-03 20:03,总共编辑 2 次。
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#4

帖子 angelus » 2008-05-03 19:16

提下关于samba的安全等级,samba有4种安全等级,这里主要提2种
share :用户不需要帐户和口令就可以登入samba服务器
user: 由samba服务器负责检测用户帐号和口令(默认)

这也是楼主访问samba服务器时,显示未知用户名和密码的原因(默认是需要提供用户和口令的)
在配置文件中的global下加入security=share就可以匿名访问了

如果需要user访问,就需要手动添加的
在global下加入: smb passwd file=/etc/samba/smbpasswd (默认的指定用户口令的文件)
一般smb安装好后是不建立/etc/samba/smbpasswd的,这就需要自己建立了
建立好后需要更改成只有root用户有rw权限,其他都没有,因为关系到系统密码问题,
在将系统所有的用户的密码都导入smbpasswd文件中,使用命令
sudo cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
然后使用vi进入smbpasswd,去掉你不想让登陆的shell帐户的密码。
最后在使用smbpasswd命令设置系统用户的samba口令,
例如用户xyz ,添加xyz的samba口令:
smbpasswd xyz (按提示操作就好了)
设置用户的samba口令的好处是不言而寓的,别人就是知道你登陆samba的用户和口令,也不能用来登陆你的服务器
除非你两个口令设置的一样。。。。

最后说下/etc/passwd文件,这是系统存放系统用户和密码的文件,包括root用户
每一行都代表一个用户和相关的说明,当然,密码是加密保存在别的文件中的,用x代替,
所以添加samba的密码验证文件时候一定要注意下smbpasswd的权限问题,不可以大意了
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#5

帖子 angelus » 2008-05-03 19:37

最后综合下就不难得出第一个问题的答案,
主动设置文件为共享,相当与开放匿名samba服务
而使用配置文件指定的目录,就需要user权限了。

想来系统的共享文件和samba都只是一个前端,其实和win通信的是SMB协议,原理简单说下
SMB是服务信息块的意思,是一个高层协议,提供在网络上的不同计算机之间共享文件,打印机和不同通信资料的手段

SMB让NetBIOS和SMB协议运行在tcp/ip上,并使用NetBIOS的名字解释器让linux机器可以在win的“网上邻居”
中被看到,从而可以和win系列进行沟通。
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
centry
帖子: 43
注册时间: 2008-04-21 13:10

#6

帖子 centry » 2008-05-03 22:03

非常感谢楼上的兄弟给我的解答,用你的办法,我现在已经成功地建立了共享文件夹!
不过,建立了共享文件夹以后,现在通过网内的windows机器可以看到我的计算机并进入共享文件夹,但却无法读取文件夹内的文件,每次我尝试打开文件夹内的文件时都提示“服务被拒绝”,这是怎么回事?因为我并不想在我的计算机上架设服务器,因此,似乎可以不用去改smb.conf的内容吧?
接着问个问题,既然SMB是为了linux机器在网上邻居中被win机器看到,那么,如何才能让win机器被lin机器看到呢?因为我的ubuntu在局域网内只能看到局域网群组,看不到群组里的计算机,但通过smb:///192.168.*.*/ 则可以进入指定的计算机,并可以读写其中的文件,这就有一个问题,我们这个局域网内计算机上百台,如果要记住上百台计算机对应的IP地址,确实不容易。如何才能让ubuntu象win一样可以在“网络服务器”内直接看到windows的机器并通过点击来进入呢?
上次由 centry 在 2008-05-03 22:27,总共编辑 1 次。
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#7

帖子 angelus » 2008-05-04 8:17

楼上的兄弟,匿名访问共享文件,是要牵扯到文件权限的问题的,你看下共享的文件权限,
一般来说匿名访问一般都归属到文件的其他权限中,需要给文件加上其他的读权限,才能打开文件,要想写,就必须打开其他用户的写权限。
可以使用命令 sudo chmod o+rw /xxx/xxx (这个是同时打开其他用户读写,不写就去掉w)

基本上共享文件和samba是没有关系的,不用修改samba
还有第2个问题,大型网络结构一般都只是建立一个主服务器,客户机是不设置共享,因此是不需要记住那么多的,只要记主主服务器的。

基本上我使用的是文字环境,一般让ubuntu访问win都是使用命令的,没有用过ubuntu的网络,
现在论坛很多问题都是关于u访问w的共享不能在网络上看到,听说7.04可以看到,不知道是不是8.04的BUG
你可以去找另外的共享网络软件代替U提供的图象共享网络,很可能是版本的BUG

图形用户的共享和samba的区别
图象共享是为了不安装samba也可以让别人看到自己共享的一种代替手段
samba是专业提供共享资源的服务软件
两个是没有联系的,只是底层使用的协议一样
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#8

帖子 angelus » 2008-05-04 9:06

这只是在网上找的一个方法,没有实验过有没用,自己想应该不能解决问题吧,你可以试下,然后把结果发出来

如果不能实现WIN计算机和Samba资源互访。可以在各自的主机中添加对方的主机名和IP地址,然后再测试:方法如下:

在linux系统/etc/hosts中添加:win-IP Win hostname (192.168.0.11 mywinpc)

在windows系统c:\windows\hosts中添加:linux-IP linux—hostname
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
头像
kopision
帖子: 578
注册时间: 2007-05-06 18:11

#9

帖子 kopision » 2008-05-04 13:17

其实可不可以设置成部分文件夹用security = share的访问方式,其他文件夹用security = user的方式呢?因为放图片啊音乐啊之类的文件夹没必要限制写入权限啊,但有关工作的文件夹就不想让其他人修改
……
angelus
帖子: 445
注册时间: 2007-08-27 17:31

#10

帖子 angelus » 2008-05-04 14:31

呵呵,这个就有点难为samba,全局设定只能有一种安全等级,要么都要用户密码,要么都不要
解决方法并不是没有,samba是可以设定不同共享目录的不同权限的,不重要的可以设置读写权限,
重要的文件目录只添加读权限。
当然了这个用户需要对系统共享的目录要有必要的权限

linux系统用户有两种:超级,一般 (当然还有特殊的一种用户的集合 “组”)
在实际工作中,也需要类似的结构去创建管理samba的各种权限。
一个超级管理者,一个公开帐户,几组相同权限者
超级管理者就很简单,把所有要共享的目录所有者设顶为它,并给RWX权限
在配置文件中给它添加读写共享
公开帐户也是一样,把它要共享的目录(注意只是公用的目录),所有者和组都不设置为它,然后只给读写权限
在配置文件中给它读写共享
组 用户用的比较多,常是某个部门多个用户分为一个组
把要共享的目录设置为770权限,所有者和组有所有权限,其他没有权限
然后在配置文件中给 组 加让读写共享(当然了多个用户必须在系统中属于一个组)

这样看起来是非常麻烦,但却能很好的组织共享系统,构架越严紧,安全和扩展性才越好,也越适合大型应用
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼
charles.liu23
帖子: 7
注册时间: 2008-04-02 23:24

#11

帖子 charles.liu23 » 2008-05-04 15:24

我靠,回答太详细了,非常感谢!我现在就试试
angelus是哪个意思啊
ino1
帖子: 266
注册时间: 2006-10-28 18:05

#12

帖子 ino1 » 2008-05-05 20:21

kopision 写了:其实可不可以设置成部分文件夹用security = share的访问方式,其他文件夹用security = user的方式呢?因为放图片啊音乐啊之类的文件夹没必要限制写入权限啊,但有关工作的文件夹就不想让其他人修改
可以的。
使用user级别,对完全开放的资源使用public=yes参数;
P4M 2.4GHz 256+512MDDR IGP340M共享64M
越来越喜欢beryl了,把我的桌面扩展得好大呀!
头像
lucky_yjw
帖子: 129
注册时间: 2009-07-17 20:57

Re:

#13

帖子 lucky_yjw » 2009-09-20 20:22

angelus 写了: 图形用户的共享和samba的区别
图象共享是为了不安装samba也可以让别人看到自己共享的一种代替手段
samba是专业提供共享资源的服务软件
两个是没有联系的,只是底层使用的协议一样
能说得再具体点吗?图形用户界面的共享究竟用的是什么服务软件?他究竟修改了哪些配置档?功能上有什么局限性?
能否提供相关的资料?反正我知道他是没修改过smb.conf也可以达到共享的目的,但却也用到了samba的一些程序。
本科农民工:
钱少,事多,离家远....
位微,权轻,责任重....
新建的个人网站
回复