samba搭建实现匿名和非匿名共用共享

samba搭建实现匿名和非匿名共用共享

实现功能:搭建公司活动照片共享,普通员工可以查看和上传但不能修改和删除。人事部需要有管理照片权限,上传、添加和删除

搭建环境:centos6.5镜像+samba-3.6.9

yum安装samba服务

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

[[email protected] ~]# mkdir /mnt/cdrom && mount /dev/cdrom /mnt/cdrom

mount: block device /dev/sr0 is write-protected, mounting read-only

#新建名为cdrom的目录并且挂载centos6.5光盘镜像到该目录

[[email protected] ~]# ll /mnt/cdrom/

总用量 682

-r--r--r--. 2 root root     14 11月 29 2013 CentOS_BuildTag

dr-xr-xr-x. 3 root root   2048 11月 29 2013 EFI

-r--r--r--. 2 root root    212 11月 28 2013 EULA

-r--r--r--. 2 root root  18009 11月 28 2013 GPL

dr-xr-xr-x. 3 root root   2048 11月 29 2013 images

dr-xr-xr-x. 2 root root   2048 11月 29 2013 isolinux

dr-xr-xr-x. 2 root root 655360 11月 29 2013 Packages

-r--r--r--. 2 root root   1354 11月 28 2013 RELEASE-NOTES-en-US.html

dr-xr-xr-x. 2 root root   4096 11月 29 2013 repodata

-r--r--r--. 2 root root   1706 11月 28 2013 RPM-GPG-KEY-CentOS-6

-r--r--r--. 2 root root   1730 11月 28 2013 RPM-GPG-KEY-CentOS-Debug-6

-r--r--r--. 2 root root   1730 11月 28 2013 RPM-GPG-KEY-CentOS-Security-6

-r--r--r--. 2 root root   1734 11月 28 2013 RPM-GPG-KEY-CentOS-Testing-6

-r--r--r--. 1 root root   3380 11月 29 2013 TRANS.TBL

[[email protected] ~]#

查看该挂载目录确定显示光盘内容

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

[[email protected] ~]# mkdir /etc/yum.bak && mv /etc/yum.repos.d/* /etc/yum.bak

[[email protected] ~]#

#新建yum.bak目录用于备份默认yum配置文件,并且把原有yum.repos.d目录下所有系统默认配置文件移动到该备份目录

[[email protected] ~]# vim /etc/yum.repos.d/cdinstll.repo

#新建自定义名称为cdinstll.repo的yum配置文件

[cdinstall]

#自定义命名

name=cdinstall

#自定义命名

baseurl=file:///mnt/cdrom

#自定义路径,此路径为光盘挂载目录

enabled=1

#是否检查GPG-KEY,0为不检查,1为检查

gpgcheck=0

#是否启用yum源,0为不启用,1为启用

#配置完毕wq保存退出

yum clean all

#配置完成后要清除下yum缓存

[[email protected] yum.repos.d]# yum install samba

#yum安装samba服务

[[email protected] yum.repos.d]# rpm -qa | grep mba

samba-winbind-clients-3.6.9-164.el6.x86_64

samba-common-3.6.9-164.el6.x86_64

samba-3.6.9-164.el6.x86_64

samba-client-3.6.9-164.el6.x86_64

samba-winbind-3.6.9-164.el6.x86_64

samba4-libs-4.0.0-58.el6.rc4.x86_64

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

#查看已经安装的samba服务

[[email protected] yum.repos.d]# chkconfig iptables off

#关闭防火墙

[[email protected] yum.repos.d]# vim /etc/selinux/config

#关闭selinux(SELINUX=disabled)需要重启服务器

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

#重启下服务器

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

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

#备份下samba的配置文件

[[email protected] ~]# cat /etc/samba/smb.conf.bak | grep -iv ^"#" | grep -iv ^"$" | grep -iv ";" > /etc/samba/smb.conf

#过滤下配置文件中的多余信息

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

#查看配置文件过滤后的配置信息

[global]

workgroup = MYGROUP

server string = Samba Server Version %v

# logs split per machine

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

# max 50KB per log file, then rotate

max log size = 50

security = user

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

writable = no

printable = yes

[[email protected] ~]#

#根据需求并没有要求打印 所以【printers】配置信息可以删除或注释掉

[global]

workgroup = MYGROUP

server string = Samba Server Version %v

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

max log size = 50

security = user

passdb backend = tdbsam

load printers = yes

cups options = raw

[homes]

comment = Home Directories

browseable = no

writable = yes

#整理完毕wq保存退出,以上就是删除后需求的剩余配置信息,看起来简洁明了多了

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

workgroup = workgroup

#工作组修改为workgroup与公司Windows系统默认工作组保持一致

security = share

#修改默认访问安全模式为匿名访问

browseable = yes

#浏览改为YES

[[email protected] ~]#

#修改配置文件信息使Windows员工客户机可以访问

[[email protected] ~]# service smb restart

关闭 SMB 服务:                                            [失败]

启动 SMB 服务:                                            [确定]

[[email protected] ~]#

#修改完成后重启Samba服务,在确定服务器时间和客户机时间一致的情况下现在就可以匿名访问Samba服务器共享数据了,访问方式\\ip地址

会看到一个名称为homes的文件夹但不能打开,因为还没有权限

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

[[email protected] ~]# mkdir /smb-photo

[[email protected] ~]# mkdir /smb-photo/活动照片

[[email protected] ~]# mkdir /smb-photo/公司美女

[[email protected] ~]# mkdir /smb-photo/公司帅哥

[[email protected] ~]# mkdir /smb-photo/上传照片

#新建自定义名称为smb-pohoto的目录,里边分别新建要求所需的目录

[[email protected] smb-photo]# chmod 777 上传照片

#修改上传照片的目录权限为777,即任何人都可以把照片存放在该目录 其他目录普通用户则只有查看和执行权限并没有写入权限

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

[global]

workgroup = workgroup

server string = Samba Server Version %v

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

max log size = 50

security = share

passdb backend = tdbsam

load printers = yes

cups options = raw

[公司美女]

comment = Home Directories

#评语可随便写

path = /smb-photo/公司美女

#该目录所在系统路径

public = yes

#是否公共匿名可以访问

browseable = yes

#是否可以浏览

writable = yes

#是否可以写入(此处权限给写入是为了以后新建人事部管理用户的写入,不想公共匿名用户写入可以直接在系统目录775权限即可)

[公司帅哥]

comment = Home Directories

path = /smb-photo/公司帅哥

public = yes

browseable = yes

writable = yes

[活动照片]

comment = Home Directories

path = /smb-photo/活动照片

public = yes

browseable = yes

writable = yes

[上传照片]

comment = Home Directories

path = /smb-photo/上传照片

public = yes

browseable = yes

writable = yes

[[email protected] smb-photo]# service smb restart

关闭 SMB 服务:                                            [确定]

启动 SMB 服务:                                            [确定]

[[email protected] smb-photo]#

#修改配置文件为上图然后保存退出重启Samba服务

#之后再次用客户机访问就可以打开【公司美女】【公司帅哥】【活动照片】【上传照片】几个文件夹,并且任何客户端访问都有权限把照片上传到【上传照片】的文件夹,而其他文件夹则只有访问权限没有写入权限

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

[[email protected] ~]# useradd smb-root

[[email protected] ~]# passwd smb-root

更改用户 smb-root 的密码 。

新的 密码:123456

无效的密码: 它基于字典单词

无效的密码: 过于简单

重新输入新的 密码:123456

passwd: 所有的身份验证令牌已经成功更新。

[[email protected] ~]#

#新建管理Samba的系统用户

[[email protected] ~]# ll -d /smb-photo/

drwxr-xr-x 6 root root 4096 12月 21 15:58 /smb-photo/

[[email protected] ~]# chown smb-root.smb-root /smb-photo/

[[email protected] ~]# ll -d /smb-photo/

drwxr-xr-x 6 smb-root smb-root 4096 12月 21 15:58 /smb-photo/

[[email protected] ~]#

#为了以后便于管理和权限分配 把新建的smb-photo目录的属主和属组修改为新建的samba管理用于,即smb-root

[[email protected] ~]# cd /smb-photo/

[[email protected] smb-photo]# chown smb-root.smb-root *

[[email protected] smb-photo]# ll

总用量 16

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 公司美女

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 公司帅哥

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 活动照片

drwxrwxrwx 2 smb-root smb-root 4096 12月 21 15:58 上传照片

[[email protected] smb-photo]#

#共享目录下的子目录也雷同

[[email protected] smb-photo]# smbpasswd -a smb-root

New SMB password:654321

Retype new SMB password:654321

Added user smb-root.

[[email protected] smb-photo]#

#添加系统用户所对应的Samba用户

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

[照片管理]

comment = Home Directories

path = /smb-photo

#用于照片管理路径

public = no

#关闭公共匿名访问

browseable = yes

#是否可以浏览

writable = yes

#是否可以写入

valid users = smb-root

#有效的登录用户

write list = smb-root

#写入用户列表

directory mask =0775

#该用户创建目录的权限

create mask = 0775

#该用户创建文件的权限

[[email protected] smb-photo]#

#新增照片管理,目录为/smb-photo用于人事部照片管理

#此时就实现了人事部的需求,普通员工访问不需输入账户密码,只有打开【照片管理】时会弹出用户登录框,输入smb-root账户密码就可以登录了,且该目录对应的是/smb-photo,该目录下的所有子目录人事部都有新建修改和删除的权限,而普通用户对其他目录只有查看权限

#【以下为非匿名访问】

[[email protected] smb-photo]# vim /etc/samba/smbusers

root = administrator admin

nobody = guest pcguest smbguest

smb-root = rsb

#为了不让别人知晓系统用户smb-root把该用户映射成虚拟不存在的rsb用户进行访问

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

security = user

#安全验证方式更改为用户验证

username map = /etc/samba/smbusers

#全局配置加入用户名映射数据库文件指向

具体哪个用户可以访问哪个文件可以在smb.conf配置文件中的[]目录下写

如:想用123用户访问名称为abc的共享

[[email protected] smb-photo]# vim /etc/samba/smbusers

[abc]

valid users = 123

write list = 123

[[email protected] smb-photo]#

--------------------------------------------完-----------------------------------

时间: 2024-10-19 01:09:18

samba搭建实现匿名和非匿名共用共享的相关文章

samba搭建实现linux资源在windows实现共享

yum install -y samba samba-client 配置smb的配置文件 vim /etc/samba/smb.conf 修改workgroup=WORKGROUP 实例1(共享一个目录,任何人都可以访问,不用输入密码就可以访问,但是要求只读) 把security=user 改成security=share [test]  (共享的目录:注意这个共享的目录在Linux 里是不存在的) comment=shar all (这里是描述,随便写什么) path=/tmp/samba  

匿名对象与非匿名对象的区别

类封装完以后就可以通过使用new关键字和类的构造方法来创建对象,这种对象分为两种:匿名对象与非匿名对象.何为匿名对象,何为非匿名对象呢?举个例子:假如有如下类: package com.heima.vo; public class Student{                    private String name="lisi";                    private int age=12;                    public void pri

内部类(匿名,非匿名)

package innerclass; /* * 方法中的内部类, * 1:非匿名内部类 * 2:匿名内部类 */public class Parcel5 { //方法中的内部类,非匿名内部类 public Destination destination(String s){ class PDestination implements Destination{ private String label; @Override public String readLable() { // TODO

【初学菜鸟作--samba搭建与配置】

Samba(跨平台的共享服务)使用以及配置案例:       实验一: 工作组为Tarena       将目录 /usr/src 共享给所有人       共享名设为 tools       允许所有人访问.无需密码验证       访问权限为只读 实验步骤: 配置服务端与客户端的ip地址,保证连通 通过yum安装samba-client服务 安装:samba-commonsamba-client完成后,进行主配置文件修改来配置共享 [[email protected] samba]# vim

《samba搭建win客户端和linux客户端的区别》

samba服务的搭建 客户的使用系统的不同也导致测试结果的不同. linux系统客户端: security = user or share smbclient -L //192.168.7.113/westos  都是可以看到共享目录的, 二者不同之处在于,   security = user 时 [[email protected] samba]# smbclient //192.168.7.113/westos Enter root's password: Anonymous login s

匿名对象和匿名类

一.匿名对象 匿名对象是没有名字的实体,也就是该实体没有对应的变量名引用  匿名对象的特征:            创建的匿名类的对象只能够调用一次            匿名对象只在堆内存中开辟空间,而不存在栈内存的引用            每次创建匿名对象都是不同的对象  package com.yyx.pratice; public class AnonymousObject { public static void main(String[] args) { printStuInfo(

java匿名类和匿名对象及this的其他用法

/* 匿名内部类:就是内部类的简写格式. 必须前提:内部类必须继承或者实现一个类或者接口. 匿名内部类其实就是一个匿名 子类对象. 格式:new 父类对象 or 接口(){ 子类内容:(覆盖父类的, 而且可以增加自己的方法) }//相当于将 继承父类 和 new 的过程 写到了一起有某有!很方便有某有! */ class Outer{ int num; public Outer(){ num = 5; } class Inner{ int num; public Inner(){ num = 1

.NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法

开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以,跟着本篇的步伐,继续来围观. /* 新语法索引 */ 1.自动属性 Auto-Implemented Properties 2.隐式类型 var 3.参数默认值 和 命名参数 4.对象初始化器 与 集合初始化器 { } 5.匿名类 & 匿名方法 6.扩展方法 7.系统内置委托 Func / Acti

匿名类和匿名对象

https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 2017年08月12日 16:19:40 qq_39728125 阅读数:628更多 个人分类: java基础 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_39728125/article/details/77119736 匿名类和匿名对象 在Java中有匿名类和匿名对象的概念,有名字可知他们是因为没有