Samba服务安装配置

samba:用于实现Linux和windows之间文件共享

功能:实现匿名用户和本地用户的文件共享

工作原理:

smb进程:控制发布目录与权限,负责文件传输TCP 139 445

nmb进程:用于名称解析udp 137 138

Samba安装:

步骤:(安装|查询|软件列表)

#yum install samba -y

#rpm -qa|grep samba

samba-winbind-3.6.23-36.el6_8.x86_64

samba-client-3.6.23-36.el6_8.x86_64     //客户端

samba-3.6.23-36.el6_8.x86_64            //服务端

samba4-libs-4.0.0-66.el6_6.rc4.x86_64   //库文件

samba-common-3.6.23-36.el6_8.x86_64     //工具包

samba-winbind-clients-3.6.23-36.el6_8.x86_64

[[email protected] ~]# rpm -ql samba|grep etc

/etc/logrotate.d/samba  //日志轮转

/etc/pam.d/samba        //认证模块

/etc/rc.d/init.d/nmb    //启动脚本

/etc/rc.d/init.d/smb    //启动脚本

/etc/samba/smbusers     //用户别名

二进制命令

/usr/sbin/nmbd

/usr/sbin/smbd

/etc/samba/smb.conf   //主配置文件

/usr/bin/smbpasswd      //配置smb用户密码命令

/usr/bin/testparm       //检查语法命令

/usr/bin/smbxlient   //客户端命令

了解主配置文件

#cat /etc/samba/smb.conf|grep -v ^#|grep -v ^‘;‘|grep [a-z]

[global]    //全局选项

workgroup = MYGROUP //工作组

server string = Samba Server Version %v //smb服务的版本描述

# logs split per machine

log file = /var/log/samba/log.%m    //日志文件及格式

# max 50KB per log file, then rotate

max log size = 50       //日志的最大大小

security = user     //认证模式:user(用户名密码),share(匿名用户),server(外部服务器)

passdb backend = tdbsam

# the login script name depends on the machine name

# the login script name depends on the unix user used

# disables profiles support by specifing an empty path

load printers = yes //加载打印机

cups options = raw  //打印机选项

#obtain list of printers automatically on SystemV

[homes]     //局部选项,默认共享本地用户的家目录

comment = Home Directories  //描述

browseable = no         //隐藏标签

writable = yes  //可写

[printers]      //共享名称

comment = All Printers

path = /var/spool/samba

browseable = no

guest ok = no  ------> public = no

writable = no  ------> read only = yes

printable = yes //打印选项

不修改配置文件启动服务

[[email protected] ~]# /etc/init.d/nmb start

[[email protected] ~]# /etc/init.d/smb start

默认情况:

security = user

客户端测试:

配置oldboy的数据库密码

[[email protected] ~]# smbpasswd -a oldboy   

-a  打开

-d  关闭

linux客户端连接:

[[email protected] ~]# smbclient -L 192.168.8.132 -U oldboy

[[email protected] ~]# smbclient //192.168.8.132/oldboy -U oldboy

Enter oldboy‘s password:

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8]

smb: \>

windows客户端连接

\\192.168.8.132 ---->输入用户名密码即可访问

总结:默认情况,本地用户可以访问自己的家目录, 但是需要将用户加入到smb数据库中,匿名用户没有可访问的目录.

如果security = share 本地用户无法访问;

security = user 本地用户可以访问, 匿名用户能否访问取决于是否有共享目录允许匿名用户访问。

匿名用户共享:

server: /samba/share

mkdir /samba/share -p

[[email protected] /]# vim /etc/samba/smb.conf

security = share

[anon_share]

comment = anon share

path = /samba/share

public = yes writable = yes

browseable = yes

service smb restart     //重启服务

测试:

#smbclient 192.168.8.132/anon_share

security = share 匿名用户可以访问本地用户不可以

基于本地用户和密码访问

[[email protected] /]# vim /etc/samba/smb.conf

security = user

[local_share]

comment = local share

path = /samba/local

public = no

writable = yes

browseable = yes

service smb restart     //重启服务

测试:

#smbclient 192.168.8.132/local_share

======================================================================

samba实践:

基于用户名密码的综合访问

需求: 公司:uplooking

1、财务部 /samba/upl_cw cw01用户有可读可写权限,财务部门员工可读,boss01对其有管理权限

2、市场部 /samba/upl_sc 该部门的员工可读可写,公司所有员工可以查询相关资料,boss02对其有管理权限

3、人事部 /samba/upl_rs rs01总监可读写,人事部门员工可以对财务部门查询,vip用户可查询人事部门

4、休息区 /samba/upl_pub 所有人都可以自己管理自己的文件

步骤:

1、创建用户组

groupadd uplooking

groupadd cw

groupadd sc

groupadd rs

每个部门2个员工:

useradd -g cw -G uplooking cw01

useradd -g cw -G uplooking cw02

useradd -g sc -G uplooking sc01

useradd -g sc -G uplooking sc02

useradd -g rs -G uplooking rs01

useradd -g rs -G uplooking rs02

useradd -g uplooking -G cw boss01

useradd -g uplooking -G sc boss02

useradd vip

2、创建目录及修改相应的权限

mkdir /samba/upl_{cw,sc,rs,pub} -p

chmod 770 /samba -R

chown root.uplooking /samba

chown root.cw upl_cw

chown root.sc upl_sc

chown root.rs upl_rs

chmod 1777 upl_pub

3、搭建Samba服务,发布共享目录

vim /etc/samba/smb.conf

[财务共享目录]

commet = 财务

path = /samba/upl_cw

valid users = @cw,boss01,@rs

read list = @cw,boss01,@rs

write list = cw01,boss01

[市场共享目录]

commet = 市场

path = /samba/upl_sc

valid users = @uplooking

read list = @uplooking,boss02,@sc

write list = boss02,@sc

[HR共享目录]

commet = HR

path = /samba/upl_rs

valid users = @rs,vip

read list = @rs,vip,boss02

write list = rs01

[休息区共享目录]

commet = 休息

path = /samba/upl_pub

valid users = @uplooking

read list = @uplooking

write list = @uplooking

4、检查语法

/usr/bin/testparm

5、配置smb用户名密码

smbpasswd -a cw01

smbpasswd -a cw02

smbpasswd -a rs01

smbpasswd -a rs02

smbpasswd -a sc01

smbpasswd -a sc02

smbpasswd -a boss01

smbpasswd -a boss02

smbpasswd -a vip

/usr/bin/pdbedit -L 列出smb数据库里的用户

5、重启服务 service smb restart

6、测试验证 Linux windows cmd ---->net use * /del /y          //清空缓存

7、相应的acl控制策略

#setfacl -m u:rs01:rx upl_cw

#setfacl -m u:vip:rx upl_rs #setfacl -m u:vip:rx .

用户别名:

#vim /etc/samba/smusers

vip = zhangsan

[global]

username

map = /etc/samba/smbusers

-------------------------------------------------------------------

以上可能需要acl控制权限设置

setfacl 设置文档访问控制列表

-b  删除所有附加的ACL条目

-k 删除默认的ACL

-m 添加ACL条目

-x 删除制定的ACL条目

-R 递归处理所有的子文件与子目录

使用getfacl查看文档的ACL权限,使用setfacl来设置文档的ACL权限。

时间: 2024-11-09 00:23:34

Samba服务安装配置的相关文章

CentOS 6.7 samba服务安装和配置

CentOS 6.7 samba服务安装和配置 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务. SMB是基于客户机/服务器型的协议,因而一台Samba服务器既可以充当文件共享服务器,也可以充当一个Samba的客户端,例如,一台在Linux 下已经架设好的Samba服务器,wi

Samba服务安装

安装Samba服务   1.在可以联网的机器上使用yum工具安装,如果未联网,则挂载系统光盘进行安装. # yum install samba samba-client samba-swat 有依赖关系的包samba-common.samba-winbind-clients.libsmbclient将自动安装上去. 2.查看安装状况 3.安装包说明 samba-common-3.5.10-125.el6.x86_64               //主要提供samba服务器的设置文件与设置文件语

一、掌握Samba服务的配置原理;二、在linux下配置samba共享服务

一.掌握Samba服务的配置原理二.在linux下配置samba共享服务(匿名共享.身份验证.账户映射.访问控制)Samba介绍:Samba是运行在Linux与Unix之上的免费共享服务的软件,是典型服务器/客户端模式,它有两个进程,一个是smbd,主要是用来管理共享文件的进程,另一个是nmbd,用来实现主机名到IP地址的转换(相当于Windows下的NetBIOS的功能),smbd运行在TCP的139.445端口,nmbd则运行在UDP的137.138端口(运行samba服务后可以用如:net

详解“FTP文件传输服务”安装配置实例

"FTP文件传输服务"安装配置实例 家住海边喜欢浪:zhang789.blog.51cto.com 目录 简介 ftp工作原理 常见的FTP服务 Vsftpd服务器的安装 Vsftpd.conf配置文件详解 配置FTP服务器实例 实例:配置匿名用户 实例:配置本地用户登录 实例:配置虚拟用户登录(MySQL认证) 实例:控制用户登录 实例:设置欢迎信息 分析vsftpd日志管理 FTP服务器配置与管理 简介 FTP 是File Transfer Protocol(文件传输协议)的英文简

Rsyslog日志服务安装配置

rsyslog服务端配置  centos6.4 x64系统  系统自带rsyslog 5.8版本 rsyslog 是一个 syslogd 的多线程增强版. 现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了 rsyslog负责写入日志, logrotate负责备份和删除旧日志, 以及更新日志文件 ################################### #首先部署好lamp环境,详情见lamp安装文档 #更新系统时间   rsyslog-mysql是rs

ubuntu 下telnet服务安装配置

1. sudo apt-get install xinetd telnetd 2. sudo vim /etc/xinetd.conf并加入以下内容进行下一步的Ubuntu Linux telnet设置: # Simple configuration file for xinetd # # Some defaults, and include /etc/xinetd.d/ defaults { # Please note that you need a log_type line to be a

web服务安装配置

本文主要是以 CentOS 6系列为操作系统,来安装配置web服务,并实现虚拟用户,https,和基本的用户认证等相关内容. 写在前面: 操作系统: CentOS 6.5 服务器的IP: 172.16.10.9 httpd的版本:httpd-2.2.15 系列 SElINUX状态:disabled 下面开始安装配置旅程: 一.web的安装配置 1.安装:yum install httpd  mod_ssl -y mod_ssl 是实现 https 协议时所依赖的包 2.配置文件的相关说明: 配置

Hadoop系列之zookeeper(分布式协调服务)安装配置

Hadoop系列之zookeeper(分布式协调服务)安装配置 1.安装cd /root/softtar zxvf zookeeper-3.4.6.tar.gzmv zookeeper-3.4.6 /usr/local/hadoop/zookeeper2.修改配置文件mkdir -p /data/zookeeper/data //3个节点都需要创建此目录cd /usr/local/hadoop/zookeeper/confcp zoo_sample.cfg zoo.cfg#vim zoo.cfg

Ubuntu系统samba服务安装和配置

开发主机和虚拟机之间文件交换除了vmtools之外还可以利用samba服务.在windows下将虚拟机中的文件夹映射为windows下的一个盘.方便文件的操作.samba的安装和配置 1.安装samba软件 sudo apt-get install samba 然后会自动解决依赖关系,自动安装samba 2.配置samba服务 修改/etc/samba/smb.conf文件 在文件的最后添加 [my] comment = Public Stuff path = /home/mingyuan/sa