修改配置文件 /etc/samba/smb.conf
[全局格式下]
workgroup=workgroup
security =share
共享目录
[docs]
path=/usr/share/doc
comment =share documents
public =yes
重启
service smb restart
chkconfig smb on
测试
smbcient -L IP/localhost -N
NMB 提供名称服务
SNB 提供数据传输服务
Samba 用户账号
共享目录设置有效用户
【redhat】
path = /var/redhat
commnet =redhat,s files
valid users =<username> <@groupname>
public = no
新建samba 用户 username 必须是系统用户
useradd username
smbpasswd -a username
more /etc/samba/smbpasswd
smbpasswd --help
用户账号映射
【global】
username map = /etc/samba/smbusers
然后编辑/etc/samba/smbusers 文件使之形成映射。
可以使用smbuseradd unixname:mapname
来实现
HOME目录
[homes] 每个登陆的用户目录
comment = Home Directories
valib users = %s
browseable = no
writable = yes
使用smbclient -L IP -U redhat来测试是否有用户的家目录。
Samba 用户的权限
[redhat]
path = /var/redhat
comment = redhat,s files
public = no
valib users = <username><@groupname>
write list = <username><@groupname>
create mask = 0660
directory mask = 0770
注意:客户端所有的请求访问身份在服务器端都会映射成登陆账号的身份。
目录要允许写 必须 目录本身可写和共享时给写的权限。
testparm 测试SMB 配置文件的语法是否正确。
客户机的主机名 客户机的IP
testparm /etc/samba/smb.conf win2000 192.168.1.2
主要是测试客户机访问的目录和相关信息。
SMB 的安全级别
【global】
security =
share windows 用户不需要认证,就能访问共享名列表
user 客户端必须输入合法的用户才能访问共享名列表,
服务器上需要建立用户账号
USER 只是能对windos客户端 起作用
server 客户端必须输入合法的用户才能访问服务器,但是
客户机需要连到其他的服务器上进行认证。
需要 有域控制服务器的时候在使用server
访问控制
man 5 hosts_access
全局访问控制
[global]
hosts deny = ALL
hosts allow = 10.0.0.
局部访问控制
[docs]
hosts deny =10.0.0.
hosts allow = 10.0.0.21
[redhat]
hosts allow = 10.0.0.
hosts deny =10.0.0.21 (失效)
允许优先!!!!!
要拒绝10.0.0.21 主机
hosts allow = 10.0.0. EXCEPT 10.0.0.21
自动启动Samba服务
如果需要让Samba服务随系统启动而自动加载,可以执行“ntsysv”命
令启动服务配置程序,找到“smb”服务,在其前面加上“*”星号,然后选
择“确定”即可 。