天天看点

Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(上)

Samba简介:在UNIX系统中,Samba是通过服务器消息块协议(SMB)在网络上的计算机之间,共享文件和打印服务的软件包。

SMB简介:Server Message Block,SMB协议是一种服务器/客户端协议,位于应用层,是Windows共享文件和打印服务的标准化协议,可以在两台计算机之间共享文件,打印机。

服务基本限定:

1、那些主机可以访问

2、那些用户可以访问

一、 确认已经安装samba

rpm -qa | grep samba

启动程序

/etc/rc.d/init.d/smb start

二、Samba有两个守护进程

1、smbd

– 监听139TCP端口

2、nmbd

– 监听137、138UDP端口

作用: 1、smbd进程的作用是处理SMB请求包,负责用户验证和文件共享【最终要】

2、nmbd进程的作用是处理浏览共享,和计算机名称解析

三、Samba配置

Samba配置文件保存在:

/etc/samba/smb.conf

包括四个设置段:

[global]

设置全局环境选项

主要选项设置:

workgroup=指定工作组或域

server string=描述 

security=制定系统的安全模式

1、share

无权限验证

2、user

由Linux的Samba服务器作验证【缺省,推荐使用】

3、server

第三方主机验证

4、doman

第三方主机验证【第三方必须是Windows域控制器】

hosts allow=限定主机访问

【如果该段被注释掉,则表示所有的主机都可访问】 hosts deny=限定主机不能访问【这两项一般不同时使用】【默认是没有这一项的】

log file=指定日志文件存放位置【最好保留这一项】

max log size=指定日志文件所占空间【注释了则表示没限制】

[homes]

设置用户宿主目录共享,如果每个用户不能访问自己的宿主目录,则注释掉该项

主要选项设置

comment描述

browseable=no

//没有权限访问的目录是不可见的

writeable/writable=yes

//可写,no,只读

[printers]

设置打印机共享【不常用】

[sharefiles]

设置文件共享

【分号“;”也是注释符】

四、【Samba应用示例一】

允许用户通过Windows客户端访问自己的宿主目录

1、安装Samba,不需要对配置文件作任何修改,即可完成此功能,但是如果开启了SELinux,或是Netfilter/Iptables,则需做如下工作,关闭防火墙

# iptables -F

//关闭Iptables

# setsebool -P samba_enable_home_dirs on

//改变SELinux策略

或者,编辑/etc/selinux/config将SELinux项改为disabled,设置SELinux永久不启动

【最佳实践】

gesebool -a | grep samba

查看SELinux所有与Samba有关的策略

2、设置用户Samba验证

smbpasswd -a 用户名

【-a表示添加】

3、启动Samba服务

4、Windows访问Samba服务器共享资源

开始 → 运行 → 输入\\Samba服务器地址 

【断开连接:Windows → com : net use * /delete /y】

5、Samba服务器端访问的客户端信息

smbstatus

同时,用户登录的全部信息保存在/var/log/samba目录下

继续阅读