配置Samba​共享

实验01:配置Samba共享

. 实验目标 

根据公司的信息化建设要求,构建Samba服务器以提供文件资源共享服务。

1.   Samba匿名共享

工作组为Tarena

将目录 /usr/src 共享给所有人

共享名设为 tools

允许所有人访问、无需密码验证

访问权限为只读

2.   Samba用户验证

修改原有的 [tools] 匿名共享设置

不再允许所有人访问

只允许nick读取、tom写入

拒绝其他用户或匿名访问

上传目录的权限为755

上传文件的权限为644

3.   Samba账户别名与访问地址控制

把普通帐户nick设置别名为jim

设置只允许192.168.10.20地址访问

. 实验前提条件

1. 所有实验机在相同网络(vmnet4)

2. DHCP服务器有固定IP

. 实验步骤

一.Samba匿名共享

实验要求:

工作组为Tarena

将目录 /usr/src 共享给所有人

共享名设为 tools

允许所有人访问、无需密码验证

访问权限为只读

(一)IP配置

1. 设置ip地址

[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

HWADDR=00:0c:29:48:71:56  (MAK地址)

IPADDR=192.168.10.253   (ip地址)

NETMASK=255.255.255.0   (子网掩码)

~

2. 设置网关及主机名

[[email protected] ~]# vim /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=yes

HOSTNAME=dhcpser.tarena.com  (主机名)

GATEWAY=192.168.10.254    (网关地址)

3. 配置搜索域

[[email protected] ~]#  vim /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1               localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

192.168.10.253  dhcpser.tarena.com       dhcpser (搜索域)

4. 重启服务

[[email protected] ~]# service network restart

[[email protected] ~]# chkconfig network on

5. 验证

[[email protected] ~]# ifconfig eth0(验证ip地址)

[[email protected] ~]# route -n(验证网络)

[[email protected] ~]# hostname (验证主机名)

[[email protected] ~]# ping dhcpser.tarena.com(验证搜索域)

(二)安装软件包

1 检测是否安装samba-client samba samba-common

[[email protected] ~]# rpm -q samba-client samba samba-common

package samba-client is not installed

package samba is not installed

package samba-common is not installed

放入RHEL5.9 iso镜像

2. 建yum库

[[email protected] ~]# cd /etc/yum.repos.d/

[[email protected] yum.repos.d]# cp rhel-debuginfo.repo

rhel-server.repo

[[email protected] yum.repos.d]# vim rhel-server.repo

[rhel-server]

name=Red Hat Enterprise Linux Server

baseurl=file:///misc/cd/Server

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

3. 清yum

[email protected] yum.repos.d]# yum clean all

Loaded plugins: product-id, security, subscription-manager

This system is not registered to Red Hat Subscription Management.

You can use subscription-manager to register.

Cleaning up Everything

4. 安装

[[email protected] yum.repos.d]# yum -y install samba samba-client

samba-common

(三)修改配置文件smb.conf 

[[email protected] yum.repos.d]# cd

[[email protected] ~]# cd /etc/samba/

[[email protected] samba]# ls

lmhosts  smb.conf  smbusers

[[email protected] samba]# cp smb.conf smb.conf.bak

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

...

74         workgroup = Tarena   //工作组名

75         server string = Win File Ser  //允许匿名访问共享

...

89         log file = /var/log/samba/%m.log

...

91         max log size = 50

...

101         security = share

...

221         load printers = no      //屏蔽共享时看到的打印图标

...

289 [tools]

290         comment = Tools Public  //共享目录的描述

291         path = /usr/src    //指定共享路径

292         public = yes   //所有人都可访问

293         read only = yes      //默认的权限为只读

(四)启动服务

[[email protected] ~]# testparm

[[email protected] ~]# service smb restart

关闭 SMB 服务:                                            [确定]

关闭 NMB 服务:                                            [确定]

启动 SMB 服务:                                            [确定]

启动 NMB 服务:                                            [确定]

[[email protected] ~]# chkconfig smb on

使用netstat 命令可以验证服务进程状态,其中smbd 程序负责监听TCP 协议的139 端口  (SMB 协议)、445端口(CIFS 协议),而nmbd 服务程序负责监听UDP 协议的137-138 端口(NetBIOS协议)。netstat验证操作及输出结果如下所示:

[[email protected] ~]# netstat -anptu | grep mbd(查看该端口)

tcp        0      0 0.0.0.0:139                 0.0.0.0:*

LISTEN      8097/smbd

tcp        0      0 0.0.0.0:445                 0.0.0.0:*

LISTEN      8097/smbd

udp        0      0 192.168.10.253:137          0.0.0.0:*

8100/nmbd

udp        0      0 0.0.0.0:137                 0.0.0.0:*

8100/nmbd

udp        0      0 192.168.10.253:138          0.0.0.0:*

8100/nmbd

udp        0      0 0.0.0.0:138                 0.0.0.0:*

8100/nmbd

. 结果验证

一.客户端检测

(一).windows上测试

1.)浏览服务器192.168.4.5所提供的共享资源

从桌面双击“计算机”以打开资源管理器,然后在地址栏输入访问Samba服务器的

UNC路径(不含共享名),即可以浏览的方式列出对方提供的共享资源,如图-4所示。

本例中只看到192.168.10.253提供了一个名为“tools”的共享,而另一个名为rhel5lib

的共享却看不到(因为browseable=no,效果就是隐藏了)。

UNC路径 \\192.168.10.253

2 访问192.168.4.5提供的tools匿名共享(正常共享)。

通过浏览看到对方提供的tools共享以后,直接双击tools共享文件夹(或者直接访问共

享资源的UNC路径:\\192.168.4.5\tools),即可打开此共享资源,查看其中的子目录、

文件等资料

3 访问192.168.4.5提供的rhel5lib匿名共享(隐藏共享)。

由于rhel5lib是隐藏共享,因此通过浏览192.168.4.5主机的方式无法看到此共享资源。

只有在客户机明确知道有这个共享的时候,可通过UNC路径直接访问,例如从资源管

理器直接访问地址:\\192.168.4.5\rhel5lib

(二). Linux上检测

1. 安装samba-client

[[email protected] yum.repos.d]# yum -y install samba-client

2. 查看查询共享列表

[[email protected] ~]# smbclient -L 192.168.10.253   //服务器IP地址

Password:   //直接回车

Domain=[TARENA] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]

Sharename       Type      Comment

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

tools           Disk      Tools Public

IPC$            IPC       IPC Service (Win File Ser)

Domain=[TARENA] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]

Server               Comment

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

DHCPSER              Win File Ser

Workgroup            Master

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

TARENA               DHCPSER

3. 访问共享目录

[[email protected] ~]# smbclient //192.168.10.253/tools

Password:

Domain=[TARENA] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]

Server not using user level security and no password supplied.

smb: \>

在“smb:\> ”操作环境中,提供了一个类似于ftp 命令程序的环境,通过特定的命令可  以对共享目录进行列表、上传、下载等操作。例如,使用ls 可以查看资源列表、pwd 查看当前路径、get和mget用来下载文件、put和mput用于上传文件

若要查看所有可用的交互指令,可使用“?”或“help”命令

4. mount挂载

[[email protected] ~]# mkdir -p /data/smb  //创建挂载点

[[email protected] ~]# mount -t cifs //192.168.10.253/tools

/data/smb/    //挂载共享资源

Password:      //直接回车匿名访问

[[email protected] ~]# mount | tail -1  //确认挂载结果

//192.168.10.253/tools on /data/smb type cifs (rw,mand)

5. 挂载设置固定到/etc/fstab文件

[[email protected] ~]# vim /etc/fstab

//192.168.10.253/tools   /data/smb    cifs   defaults  0  0

注:如果服务器的共享资源比较稳定,可以将挂载设置固定到/etc/fstab文件中,以便每次开机后自动挂载,为了免除密码验证,需要添加“username=guest,password=”的挂载参数

6. 测试

[[email protected] ~]# grep smb /etc/fstab

//192.168.10.253/tools   /data/smb    cifs   defaults  0  0

二.Samba用户验证

实验要求:

修改原有的 [tools] 匿名共享设置

不再允许所有人访问

只允许nick读取、tom写入

拒绝其他用户或匿名访问

上传目录的权限为755

上传文件的权限为644

(一)服务端

1.新建相应账户与samba密码

[[email protected] ~]# useradd nick

[[email protected] ~]#  useradd tom

[[email protected] ~]# echo "redhat" | passwd --stdin nick

Changing password for user nick.

passwd: all authentication tokens updated successfully.

[[email protected] ~]# echo "redhat" | passwd --stdin tom

Changing password for user tom.

passwd: all authentication tokens updated successfully.

[[email protected] ~]# pdbedit -a nick

new password:   //为共享用户nick设置口令

retype new password:  //重复输入所设置的口令

Unix username:        nick

NT username:

Account Flags:        [U          ]

User SID:

S-1-5-21-2619881084-3148751359-2625704057-1000

Primary Group SID:

S-1-5-21-2619881084-3148751359-2625704057-513

Full Name:

Home Directory:       \\dhcpser\nick

HomeDir Drive:

Logon Script:

Profile Path:         \\dhcpser\nick\profile

Domain:               DHCPSER

Account desc:

Workstations:

Munged dial:

Logon time:           0

Logoff time:          never

Kickoff time:         never

Password last set:    一, 15 9月 2014 01:56:49 CST

Password can change:  一, 15 9月 2014 01:56:49 CST

Password must change: never

Last bad password   : 0

Bad password count  : 0

Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

[[email protected] ~]# pdbedit -a tom

new password:  //为共享用户tom设置口令

retype new password://重复输入所设置的口令

Unix username:        tom

NT username:

Account Flags:        [U          ]

User SID:

S-1-5-21-2619881084-3148751359-2625704057-1001

Primary Group SID:

S-1-5-21-2619881084-3148751359-2625704057-513

Full Name:

Home Directory:       \\dhcpser\tom

HomeDir Drive:

Logon Script:

Profile Path:         \\dhcpser\tom\profile

Domain:               DHCPSER

Account desc:

Workstations:

Munged dial:

Logon time:           0

Logoff time:          never

Kickoff time:         never

Password last set:    一, 15 9月 2014 01:57:03 CST

Password can change:  一, 15 9月 2014 01:57:03 CST

Password must change: never

Last bad password   : 0

Bad password count  : 0

Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

2. 修改主配置文件

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

...

101         security = user   //安全等级提高为user

...

289 [tools]

290         comment = Tools Public

291         path = /usr/src

292         public = no     //不再对所有人公开

293         valid users = nick,tom    //合法的共享用户

294         write list = tom    //允许有写入权限的用户

295         read only = yes

296         directory mask = 0755//所建目录的默认权限

297         create mask = 0644  //所建文件的默认权限

...

3. 共享目录的访问权限

[[email protected] ~]# setfacl -m u:tom:rwx /usr/src/

4. 重启smb服务

[[email protected] ~]# service smb restart

关闭 SMB 服务:                                            [确定]

关闭 NMB 服务:                                            [确定]

启动 SMB 服务:                                            [确定]

启动 NMB 服务:                                            [确定]

 (二).客户端测试

1.用户nick可只读访问,而用户tom可写入

[[email protected] ~]# smbclient -U nick //192.168.10.253/tools

Password:

Domain=[DHCPSER] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]

smb: \> ls

0:40:56 2013

..                                  D        0  Wed Jul 10 17:15:29 2013

kernels                             D        0  Thu Oct  1 22:58:39 2009

debug                               D        0  Thu Oct  1 22:58:39 2009

vmware-tools-distrib                D        0  Thu Nov  1 08:28:29 2012

38751 blocks of size 524288. 29243 blocks available

smb: \>

2.挂载

[[email protected] ~]# mount -o username=nick //192.168.10.10/tools /data/smb

三.Samba账户别名与访问地址控制

实验要求:

把普通帐户nick设置别名为jim

设置只允许192.168.10.20地址访问

(一)服务端

1. 修改Samba用户别名文件

[[email protected] ~]# vim /etc/samba/smbusers

# Unix_name = SMB_name1 SMB_name2 ...

root = administrator admin

nobody = guest pcguest smbguest

nick = jim

2、修改主配置文件

...

76         username map = /etc/samba/smbusers

...

289 [tools]

290         comment = Tools Public

291         path = /usr/src

292         public = no

293         valid users = nick,tom

294         write list = tom

295         read only = yes

296         directory mask = 0755

297         create mask = 0644

298         hosts allow = 192.168.10.200

3.重启服务

[[email protected] ~]# service smb restart

关闭 SMB 服务:                                            [确定]

关闭 NMB 服务:                                            [确定]

启动 SMB 服务:                                            [确定]

启动 NMB 服务:                                            [确定]

. 结论验证

客户端

[[email protected] ~]#  smbclient  -U  tom  //192.168.10.253/tools

Password:

Domain=[DHCPSER] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]

smb: \> ls

时间: 2024-10-24 05:41:52

配置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

Ubuntu14安装配置samba共享功能

Windows和虚拟机的Linux进行文件共享除了使用VMware tool外,也可使用samba,samba使用范围更广 1.安装samba工具 sudo apt-get install samba 2.配置samba sudo vi /etc/samba/smb.conf 在文件最后添加如下命令 [share] path = /home/duser/share valid users = duser writable = yes browseable = yes create mode =

centos6.5配置samba

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

Centos下samba共享打印机

先说需求,公司有一台型号为HP LaserJet m1120 mfp的打印机,由于不是网络打印机使用起来十分不便,公司老大要求将这台打印机连在公司的内网linux服务器上(CentOS),然后配置samba共享打印机.下面开工,主要分三大步骤,如符合你的需求,请继续阅读. 第一步,要保证你的打印机在linux服务器上可以正常打印.1.公司的惠普打印机连接埠为USB,将打印机插在服务器上,可以看到/dev/usb/lp0就是我的打印机2.到http://www.linuxprinting.org/

samba共享目录构建wordpress与mysql

项目一 (1) 使用samba共享/data/application/web,在目录中提供wordpress; (2) 使用samba客户端挂载samba server共享的目录至/var/www/html: (3) 客户端(lamp),部署wordpress,并让其正常访问:要确保能正常发文章,上传图片: (4) 客户端2(lamp),挂载samba server共享的目录至/var/www/html:验正其wordpress是否可被访   问:要确保能正常发文章,上传图片: samba服务器

配置Samba服务器配置现实文件共享(详解)

配置Samba服务器配置现实文件共享     一:实验环境 Samba服务端:xuegod63.cn   IP:192.168.1.63 Samba客户端:xuegod64.cn   IP:192.168.1.64 1:关闭iptables #很重要 2:关闭selinux 二:实验目标 1.samba服务器概述 2.samba服务器配置文件 3.实战,举例 三:实验代码 第一块:Samba服务概述:     Samba 最先在Linux 和Windows 两个平台之间架起了一座桥梁,正是由于S

配置samba服务一例

问题: 在/data/share目录下建立三个子目录public.training.devel用途如下 public目录用于存放公共数据,如公司的规章制度 training目录用于存放公司的技术培训资料 devel目录用于存放项目开发数据 将/data/share/public/目录共享为public,所有员工都可以访问,但只有读取权限 将/data/share/training目录共享为peixun,允许管理员admin和技术部的所有员工读取数据,但不能写入,禁止其它人访问 将/data/sh

centos 7最小安装后安装配置samba

工作需要搭建一个文件服务器,推荐使用Centos7,安装速度快,免费,安全,稳定. 准备如下: Centos 7系统包,把系统按实际条件刻成启动盘或刻入U盘中,保证网络正常: 安装系统可以选择最小安装,速度快,占用资源小,更安全稳定,安装时设置网络ip和计算机名. 我这里启用系统的firewalld和selinux,所以更安全,selinux是对系统权限的升级,不应该关闭. 系统安装后: 安装vim: yum install vim -y 安装网络工具包: yum install net-too

CentOS 7.2 安装配置Samba服务器

1背景 转Linux刚刚1年,vim操作还不能应对工程代码,之前一直都是Gnome桌面 + Clion 作开发环境,无奈在服务器上没有这样的环境, 看同事是(Windows)Source Insight + WinSCP + Linux 开发,来回同步文件有点麻烦,所以想尝试搭个Samba服务器做共享文件. 不过希望以后还是要转到vim上来. 2环境 CentOS系统 [[email protected] ~]# cat /etc/redhat-release CentOS Linux rele