Samba的配置

对于linux与windows共享,和平共处,我们可以用Samba软件

Samba是一套免费的开源软件,可以在linux或其他类unix操作系统上实现windows域控制器,文件服务,打印服务等。

Samba实现了windows系统所使用的核心网络协议:SMB(Server Message Block)

Samba可以提供如下功能:

活动目录服务(Active Directory Server, ADS)

主域控制器(Primary Domain Controller, PDC)

共享目录

共享打印机

Samba是一个高性能的服务软件,只需要更低的硬件就可以实现windows server相同的性能。

一、安装Samba

sudo apt-get install samba

安装完成之后,在windwos上访问(我的linux server ip:192.168.1.66):

输入\\192.168.1.66 如图:

通过标题栏可以看出已经可以访问了,但里面没有共享资源

二、Samba的配置

Samba的配置文件是/etc/samba/smb.conf,它所使用的语法和windows的.ini文件差不多。

注:在修改配置练习时,请备份原配置文件

最简单的配置

[global]

security=share

[linux_share]

path=/home/linux/share

public=yes

这个配置分成两段:

第一段:global

第二段:linux_share 这是一个自己定义的名字,当从windows访问时,就可以看到这个共享文件夹的名称

security=share, 表示安全等级为share,这样用户不需要经过密码验证了。

path定义了共享的文件夹的路径

public=yes 表示公开给所有人访问

配置完成时,检查一下配置文件的语法: 用testparm命令

如图:

重启Samba生效

sudo /etc/init.d/smbd restart

现在通过windows访问可以看到我们创建的共享文件夹了

三、Samba的安全认证

Samba提供了安全认证等级,分4个级别:

share   :  不需要输入用户名和密码

user    :  
需要输入用户名,密码, Samba对用户进行认证

server  :  
认证工作由另一台Samba服务器或者Windows server负责

domain  :   指定一台windows
server来进行用户认证

其中user是Samba的默认安全认证级别,也就是说在/etc/samba/smb.conf配置文件中,将security一行改为security=user,那么用户在浏览共享内容前,就必须输入用户名和密码。

现在把安全级别提升为user

sudo vim /etc/samba/smb.conf

[global]

security=user

[linux_share]

path=/home/linux/share

valid users=cdyemail    
#指定有效的用户,多个用可访问用逗号隔开

public=no    
     
   
 #公开访问为否

重启samba服务:sudo /etc/init.d/smbd restart

通过windows访问如图:

现在要密码了,但是输入linux的用户名和密码无法通过认证,如果想让Samba通过认证,需要以下几点:

(1)、在ubuntu系统中创建用户

(2)、在Samba中创建该用户

(3)、在windows中创建相同的用户(和Samba用户密码相同)

1、在Ubuntu中创建用户

如果要将某个资源共享给新用户,必须先用adduser命令向Ubuntu中添加该用户。如:

我们打算将某个资源共享给一个叫做cdyemail的用户,首先要做的就是在Ubuntu系统中创建这个用户

sudo useradd cdyemail

这样,系统中就有了cdyemail这个用户了。

2、在Samba中创建用户

Ubuntu系统中的用户,和Samba用户是两回事,要将资源共享给某个系统中的用户,必须将该用户添加到Samba中。

添加方法:

sudo smbpasswd -a cdyemail

#smbpasswd是命令, -a表示add user , cdyemail表示用户名

这样cdyemail的认证信息就被写入到Samba中了。重启Samba生效

添加完用户和密码后,现在可以在windows中通过这个用户名和密码进行访问了。

3、在windows中创建相同的用户

在windows客户端中,我们需要创建与samba中完全相同的用户名和密码,这样才能通过Samba的认证,我们在windows客户端上打开
Samba共享资源时,Samba会自动将windows环境中的用户信息传递到服务器上进行验证,因此如果登录的windows用户和Samba用户名
相同的话(密码也相同),就不需要输入密码了,自动就能通过认证。

我在测试中通过,相当给力!!

4、Samba用户密码修改

如果修改密码了,则windows与Samba都要同步修改。在Samba中修改的方法如下:

sudo smbpasswd cdyemail #cdyemail为要修改的用户名

如果windows不修改,则要手动输入Samba修改后的用户名和密码,windows修改后要求注销一下(重登录)

三、共享权限的控制

目录我们只要以访问文件的内容,但没有权限修改文件,也无法向共享目录添加新文件。

1、添加文件写入权限

[global]

security=user

[linux_share]

path=/home/linux/share

valid users=cdyemail

writeable=yes  #添加一句,表示具有写权限了

public=no

重启samba服务 sudo /etc/init.d/smbd restart
,之后就可以写文件了,但要求服务器上的目录本身有这个权限。我测试时用rwx权限测试成功。

对于服务器目录权限的测试:

由于我共享的是share目录,创建时用root,所以在默认的情况下,即使开了writeable也没有权限写,因为服务器目录的本身权限有问题。

(1)先修改用户所属

sudo chown cdyemail:cdyemail

(2)只保留cdyemail用户有权限访问这个目录

sudo chmod u+rwx,g-rwx,o-rwx share

(3)访问,测试写文件

测试成功,cdyemail用户有权限写。

*********未完************

由于现在要在命令行下进行数据共享的工作,所以先记录到这儿,有时间再记录其它的功能

访问服务器的共享资源:

服务器配置如下,一个要求用户认证的共享,一个大众都可能访问的。

[global]

security=user

[share_resource]

path=/home/linux/share

valid users=shareuser

writeable=yes

public=no

[public]

path=/home/linux/public

writeable=yes

public=yes

客户机访问如下:

安装:smbclient , smbfs

smbclient可以查看资源,下载资源等,这里用mount挂载远程的共享目录

sudo mount -t smbfs -o username=shareuser,passwd=*****
//192.168.1.66/share_resource  /mnt/data

#smbfs是文件系统类型

#share_resource就是在samba中定义的共享名称,挂载到/mnt/data目录上

*************************

时间: 2024-10-20 16:31:57

Samba的配置的相关文章

Samba网络配置

Samba网络配置 操作环境 ubuntu14.04 1. 更新Linux源列表 sudo apt-get update 2. 安装Samba服务 sudo apt-get install samba samba-common 3. 新建访问共享资源的用户和设置密码 1.打开"终端窗口",输入"sudo useradd smbuser"-->回车-->用户创建成功.2.输入"sudo smbpasswd -a smbuser"--&g

centos samba/squid 配置 第二十七节课

centos  samba/squid 配置  第二十七节课 上半节课 下半节课 一. samba配置1. 什么是sambaSamba服务类似于windows上的共享功能,可以实现在Linux上共享文件,windows上访问,当然在Linux上也可以访问到.是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务. 注意:smb侦听端口:139  和  445  端口 2. 安装配置samba yum install -y samba samb

samba简单配置

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB (Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它 为局域网内的不同计算机之间提供文件及打印机等资源的共享服务. samb启动的进程 nmbd  NetBIOS服务  smbd 监听端口    早些版本的TCP139     UDP 137和138 我这里用的samba4没有找到UDP端口,只开放了139端口 如果系统自带可以先卸载,r

samba服务配置

Samba服务的配置 配置匿名访问: [[email protected]~]# yum -y install samba samba-client       //安装samba所需的软件包 [[email protected] ~]# vim /etc/samba/smb.conf        //修改配置文件 [global] workgroup =WORKGROUP          //工作组更改为workgroup security = share               //

Samba服务配置详解

引用一下David_Tang同学的Samba简介: Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器信息块 .SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件.后来微软又把 SMB 改名为 CIFS(Common Internet File System),即通用互联网文件系统,并且加入了许多新的功能,这样一来,使得

Ubuntu_12.04 server amd64安装读取数据失败以及samba的配置

Ubuntu_12.04 server amd64.iso 找了好多工具都会出现在安装组件的时候报错: 从光盘读取数据失败,请检查光盘的完整性: 那首先需要怀疑的是制作u盘启动盘工具错误,我试过很多建议不要使用UltraISO,LinuxLive USB Creator ,Win32 Disk Imager,LaoMaoTao_V2014,WinImage,SaleaeLogic_1.1.16C... 这些都是血淋淋的教训. 建议使用Universal-USB-Installer-1.9.5.4

Samba快速配置

Samba是linux,unix,windows之间进行交互操作的软件组件,Sanma是基于GPL协议的自由开源软件. 快速配置samba文件服务器 1.关闭防火墙和SELinux [[email protected] ~]# setenforce 0        #临时关闭 [[email protected] ~] # sed -i"/SELINUX=/c SELINUX=disable“\ >/etc/sysconfig/selinux       #永久的关闭 [[email p

CentOS 6.5 samba实例配置

服务端:Linux CostOS 6.5 ,IP:192.168.1.201客户端:windows7 64位,IP:192.168.1.120 说明:配置此服务用于加强对samba服务的理解,并对用到的smb.conf配置参数做简要的注释,其他没有用到的smb.conf配置参数见我博客的samba配置参数详解 一.题目 (1)在此服务器中安装配置Samba服务,创建三个用户m1,m2,m3.分别建立共享m1,m2,m3,public,本地目录分别为/opt/a1./opt/a2./opt/a3.

Samba服务配置详解(匿名,身份,别名,访问控制,挂载访问)

Samba服务配置详解 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务.SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统.打印机及其他资源.通过设置"NetBIOS over TCP/IP"使得Samba不但能与局域网络主机分享资源,还