Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2565854
  • 博文数量: 709
  • 博客积分: 12251
  • 博客等级: 上将
  • 技术积分: 7905
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-17 00:00
个人简介

实现有价值的IT服务

文章存档

2012年(7)

2011年(147)

2009年(3)

2008年(5)

2007年(74)

2006年(431)

2005年(42)

分类: LINUX

2006-10-13 15:00:39


协议
SMB(Server Message Block)
基于tcp/ip协议
澳大利亚人开发
功能
文件 打印机
客户
win9x winnt linux unix dos


/usr/sbin/smbd
处理来自用户的连接;文件、权限、用户名的管理
/usr/sbin/nmbd
帮助快速定位服务器,主要是主机名的定位
/usr/sbin/swat
Samba的Web维护工具,可以通过Web来维护Samba
/etc/rc.d/init.d/smb
启动或停止samba服务的脚本程序
/etc/smb.conf
Samba的主要配置文件
/etc/smbusers
samba客户的用户名到Linux用户名的映射文件
/usr/bin/smbstatus
报告当前Samba的连接状态
/usr/bin/mksmbpasswd.sh
从/etc/passwd文件形成smbpasswd文件的程序
/usr/bin/smbadduser
增加新的samba用户的程序
/usr/bin/smbclient
访问smb服务器资源的客户程序
smbclient //Eloo-Server1/share
smbclient //Eloo-Server1/share -I 192.168.0.22
smbclient -M Eloo-Server1
smbclient -L
smbmount //smbserver/service /mnt/smb

/usr/bin/smbpasswd
改变一个用户的smb加密口令
/usr/bin/testparm
检查smb.conf配置文件语法是否正确的程序

smb.conf是由段组成,每个段中又包含参数,参数的赋值方法
参数=参数值
; #开头的都是注释行
宏:log file=/var/log/samba/log.%m

[global]
workgroup=Eloo.com 指该服务器所在的工作组
server string= Samba Server 描述信息
log file=/var/log/samba/log.%m 指定日志文件的存放地点 m代表客户机的netbios名
security = user 指定Samba操作的安全方式
[homes]
comment = Home directories 注释信息
browseable = yes 共享名称可以出现
writeable = yes 共享目录可以让客户写
CREATE MODE=0755 按照unix文件的属性来创建文件
[printers]
path = /var/spool/samba 设置一个可以写的目录,作缓冲池
guest ok = yes 允许任何人访问
printable = yes 可以打印


global中常用的参数
security 确定对客户用户名/口令的验证方式
-user 进行访问之前要输入有效的用户名及口令
-share 不需要有效的用户名及口令即可访问
-server 本质与'user'模式一样,但由其它samba服务器来验证
-domain 指定该samba服务器是一个域控制器
encrypt passwords = yes/no
是否使用Win系统下的加密口令,如果选yes的话,就接收传过来的加密的口令,
如果选no的话,就要接收未加密的口令,但现在的win系统一般都加密,所以要修改注册表,
使之不加密
regedit
/HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/VxD/VNETSUP
编辑-=-新建==Dword值
重命名新值#1为EnablePlainTextPassword
赋值该新键值为1

smb passwd file =/etc/smbpasswd
设置samba服务器的用户密码存放地
username map
把samba客户的用户名映射为linux用户名的文件
ex:root = admin administrator

host allow = 192.68.0. Except 192.68.0.11
允许192.68.0这个子网段内除192.68.0.11这台机器外的的所有机器访问

log file =/var/log/samba/log.%m
如果host1,host2这两台机器访问过服务器,就会在/var/log/samba/目录下生成log.host1,log.host2这两个日志文件

Smb.conf的其它参数说明
path   共享目录的路径(一定要存在)
browseable 共享段是否在控制列表中列出
exec 或 proexec 在建立连接之前有SMB服务器选运行的命令
root preexec 只有root才能执行的命令,常用于挂接文件系统
ex:
  [cdrom]
  comment = cdrom
  path = /mnt/cdrom
  read only = yes
  root preexec = mount /mnt/cdrom
  root postexec = umount /mnt/cdrom  
public 是否公开,如果设置为yes的话,访问此共享目录不需要口令
create mode = 0755 创建文件后文件的权限位
read only 如果设置为yes ,则不允许用户在此目录中进行写文件操作


实验一:把自己本机设置为一台Samba服务器,使/home/user/test目录共享,使用另外一台Windows机器来测试是否能找到此机器并能访问共享目录(注意:此实验中samba的安全级别设置为share级,即所有人都可以访问 security = share)
实验二:内容同上,但要把服务器的安全级别设置为user级别,即security=user,然后再测试。

Share级别
    vi /etc/smb.conf
    [global]段中
    改security = share
后,加一个共享段
    [share]
    path=/home/user/share
    public=yes
    browseable=yes
    netconf     设置主机名
    hostname 设置主机名
    重启即可
实验内容:设置/home/user/share目录共享,使win9x客户端访问
User级别(vi /etc/smb.conf)
    [global]段中
    改security=user
    取消 encrypt passwords = yes
      smb passwd file = /etc/smbpasswd
    的注释
   
      cat /etc/passwd|mksmbpasswd.sh >/etc/smbpasswd
    使系统帐号导入至Samba帐号库中
   
    smbpasswd
    为一个Samba帐号设置密码
    重启服务
阅读(1647) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~