Linux12samba软件包
samba软件包主要用于共享文件的管理
总共分为三种:1服务器 保存主机列表,文件,目录对客户端进行授权
2客户端 请求验证,访问文件,目录
3浏览服务器 缓存主机列表
首先了解windiws网上邻居,对于一台客户端需要设置自己的主机名,工作组(或者域)。工作组和域的区别:工作组里的计算机平等,只需要修改客户端的工作组后就可以进入某个工作组;域里的计算机相互不平等,需要域服务器,必须通过认证才能加入,包括主域控制器和辅域控制器。
windows客户端访问共享文件夹方式:1 在网上邻居---整个网络---microsoft---workgroup从这里可以看到在workgroup组里的计算机
2 根据主机名或者主机ip地址直接访问,要求主机名(Ip地址)唯一,在地址栏中直接输入//myhostname或者//192.168.1.150
下面使用samba创建文件共享
修改/etc/samba/smb.conf文件,该文件包含三种字段:[global] [homes]以及自定义字段 #表示注视 ;表示不生效 可以使用man smb.conf查看帮助
[global]
workgroup = WORKGROUP //设置其工作组的名称
netbios name = redhatEL5 //设置其主机名,该主机名可以任意设定,该名称并不是hostname,查看本机的hostname方法#hostname
server string = Samba Server //对其描述
security = user //可设置3种share/user/server 设置为share客户端访问时不需要输入用户名;设置为user时需要输入smb设置的用户密码;设置为server时必须输入启用下面的password server项,其身份认证由相应服务器进行
password server = <server>
log file = /var/log/samba/log.%m //使用客户机的netbios主机名创建不同的日志,%I表示Ip地址,更多通配符可以查看帮助#man 5 hosts_access
encrypt password = yes //是否加密密码
smb passwd file = /etc/samba/sbmpasswd //密码文件存放位置
include = /etc/samba/smb.conf.%m //为不同的客户端主机使用不同的配置文件,%I表示Ip地址,更多通配符可以查看帮助#man 5 hosts_access
interfaces = 192.168.1.0/24
name resolve order = wins //设置名称解析顺序,可设置为wins/lmhosts/bcast分别表示wins服务器/本地lmhosts文件/局域网广播,如开启wins下面两项必开一个
wins support = yes //本机做为wins服务器
wins server = 12.12.21.12 //wins服务器地址
host deny = ALL EXCEPT 192.1.1.1 //设置不可访问的限制,支持主机名、ip、通配符,更多通配符可以查看帮助#man 5 hosts_access
host allow = 192.0.0 //设置可以访问的,支持主机名、ip、通配符,更多通配符可以查看帮助#man 5 hosts_access 注意某ip或主机只要在一处允许了其他地方禁用将失效。
[homes]
comment = Home Directions //共享文件夹描述
valid users = %S //用户设置为只有用户自己可以访问
browseable = no //是否可以浏览
writeable = yes //是否可写
[myshare]
path = /var/share //共享文件路径
comment = myshareFiles //对共享文件的描述
public = no //是否需要验证用户
valid users = redhat //设置可以访问的用户,可以是户名或者工作组名@workgroup
write list = redhat //允许写的控制,可以是用户名或者工作组名@workgroup
creat mask = 0660 //创建的文件权限 ,注意无论是创建还是修改,在服务器上的操作系统默认都是系统用户进行的而不是samba用户,假设系统用户名test,使用samba的名称映射后为smbtest(方法:首先启动名称映射,在smb.conf文件中使username map生效,执行#smbuseradd test:smbtest,或者直接修改/etc/samba/smbusers文件),服务器上默认的操作都是test用户
directory mask = 0770 //创建的文件夹权限
进行一个简单实例:设置一个共享文件夹,需要用户登录,并且可以创建、修改文件
使用root身份登录(su - )
#mkdir /tmp/sharefile
#chmod 777 /tmp/sharefile
修改/etc/samba/smb.conf文件:
security = user
netbios name = redhatserver
添加一下内容
path = /tmp/sharfile
comment = mysharefile
public = no
valid users = redhat
write list = redhat
creat mask = 0660
directory mask = 0770
保存后退出
创建samba用户
#useradd redhat
#passwd redhat
#smbpassswd -a redhat
重新启动smb
#service smb restart
在win客户机上访问,地址栏输入//redhatserver后输入用户名redhat和密码