Linux -- Samba-PAM模块应用-系统密码同步;用户与客户端访问控制;磁盘配额;回收站

PAM模块应用

Samba服务器3.X与PAM模块结合已非常完善,通过PAM模块的强大功能可以有效地丰富Samba服务器的各项功能。

6.4.1  系统密码同步

Samba服务器使用完全独立于系统之外的用户认证,这样的好处是可以提高安全性,但同样也带来了一些麻烦,比如修改用户密码是即要修改该用户登录系统的密码,又要修改登录Samba服务器的密码。但通过PAM模块所提供的功能可以有效实现系统用户密码与Samba服务器密码的自动同步。

使用passwd修改用户系统密码时,自动同步Samba服务器用户密码。编辑/etc/pam.d/system-auth文件,将该文件中所有password部分注释(如图6-34所示),再加入如下内容。

passwordrequisite pam_cracklib.so retry=3 passwordrequisite pam_unix.so shadow md5 use_authtok try_first_pass  passwordrequired pam_smbpass.so use_authtok use_first_pass

在上述配置完成后,当用户使用passwd修改系统用户密码时,Samba服务器会自动完成同步,但是如果系统中新增的用户在第一次使用passwd设置用户系统密码前必须先使用smbpasswd
-a将用户增加到Samba服务器中,否则将无法设置用户系统密码。

用户与客户端访问控制

在/etc/samba/smb.conf文件中可以通过hosts allow、hosts deny对访问的客户端进行控制,也可以使用valid
users对访问用户进行控制,但如果希望对特定用户在特定客户端进行控制就必须使用PAM模块了。

下面例子允许tonyzhang在位于192.168.0.0/24的客户端访问,拒绝tomyang在位于192.168.1.0/24的客户端访问。

(1)在/etc/samba/smb.conf文件[global]标签中加入如下内容。

obey pam restrictions=Yes

(2)编辑配置文件/etc/pad.d/samba,在第一个accout前添加如下语句。

account required pam_access.so accessfile=/etc/samba/myacl

(3)在/etc/samba下建立名为myacl的文件,在该文件中增加如下内容。

+:tonyzhang:192.168.0.  -:tomyang:192.168.1.

默认磁盘配额配置

在Samba服务器上对用户使用共享目录空间的限制主要通过系统提供的磁盘配额来实现,但Linux中提供的磁盘配额功能必须针对用户或组来设置,这样如果用户量比较大时,设置起来就不太方便,在Samba服务器可通过指定一个用户或组的配额作为所有用户的默认配额的方法来解决这个问题。在下面的例子中每个用户可以写入test共享目录的数据量都以tonyzhang用户对该分区的配额为准(如希望以某个组的配额作为默认配额,将下面例子中的uid改为gid即可)。

(1)为tonyzhang用户设置磁盘配额。

(2)在/etc/samba/smb.conf文件中定义test共享目录处加入如下内容。

[smbtest]      comment = This is smb test      path = /test      writable = yes      vfs object = default_quota          default_quota:uid = 501    #用户tonyzhang的UID为501。           default_quota:uid nolimit = No 

为Samba服务器配置回收站,需要使用虚拟文件系统(VFS)模块,Samba可以使用多种VFS模块,这些模块存放在/usr/lib/samba/vfs目录中。本章主要讲述通过recycle.so模块实现。
为Samba服务器配置回收站时,需要针对每个共享资源进行配置。在下面的例子中将为Samba服务器的共享资源test配置一个回收站。
[smbtest]      comment = This is smb test      path = /test      writable = yes      vfs object = recycle          recycle:repository = .deleted/%U           recycle:keeptree = Yes          recycle:versions = Yes          recycle:maxsixe = 0          recycle:exclude = *.tmp|*.mp3           recycle:noversions = *.doc  
在上面配置中,各参数含义如下。
(1)vfs object = recycle:载入recycle.so模块,recycle名称不能为其他。
(2)recycle:repository = . 
recycle/%U:回收站的相对路径,这个选项指定删除的文件将被储存在什么目录,它和共享资源的实际路径有关。在上面的例子中,"test"使用/home/test路径,因此任何被删除的内容都被移动到这个目录下的. 
recycle目录中。%U变量是当前浏览共享用户的用户名,因此,每个用户删除的文件都会存放在以他用户名命名的目录下。此参数只能使用相对路径。所配置的目录其他用户必须有写权限。当有文件需在放入此目录时,如出现问题Samba服务器会将相关情况写入日志,所需文件删除。
(3)recycle:keeptree = Yes:在将文件移入回收站时,要建立相对应的目录结构。
(4)recycle:versions = Yes:如果在回收站所在目录中存在同名文件,则以Copy #x of 文件名的形式加以区分。
(5)recycle:maxsixe = 0:回收站的最大使用空间,以字节为单位。0表示没有最大使用空间的限制。
(6)recycle:exclude = *.tmp|*.mp3:不放入回收站的文件类型。
(7)recycle:noversions = *.doc:如果在回收站所在目录中存在同名文件,覆盖原有文件的文件类型。

参考: http://book.51cto.com/art/201108/282449.htm

时间: 2024-10-14 08:14:03

Linux -- Samba-PAM模块应用-系统密码同步;用户与客户端访问控制;磁盘配额;回收站的相关文章

linux中pam模块

一.pam简介 Linux-PAM(linux可插入认证模块)是一套共享库,使本地系统管理员可以随意选择程序的认证方式. 换句话说,不用(重新编写)重新编译一个包含PAM功能的应用程序,就可以改变它使用的认证机制. 这种方式下,就算升级本地认证机制,也不用修改程序. PAM使用配置/etc/pam.d/下的文件,来管理对程序的认证方式.应用程序 调用相应的配置文件,从而调用本地的认证模块.模块放置在/lib/security下,以加载动态库的形式进,像我们使用su命令时,系统会提示你输入root

Linux下PAM模块学习总结

在Linux中执行有些程序时,这些程序在执行前首先要对启动它的用户进行认证,符合一定的要求之后才允许执行,例如login, su等.在Linux中进行身份或是状态的验证程序是由PAM来进行的,PAM(Pluggable Authentication Modules)可动态加载验证模块,因为可以按需要动态的对验证的内容进行变更,所以可以大大提高验证的灵活性. 一.PAM模块介绍 Linux-PAM(即linux可插入认证模块)是一套共享库,使本地系统管理员可以随意选择程序的认证方式.换句话说,不用

linux云自动化运维基础知识19(分区加密,磁盘配额)

一.分区加密 1.创建加密 cryptsetup   luksFormat   /dev/vdb2 This will overwrite data on /dev/vdb2 irrevocably. Are you sure? (Type uppercase yes): YES            ##确定加密Enter passphrase:                     ##密码大于8位,并且不能太简单Verify passphrase:                    

Linux中如何针对用户及组设置磁盘配额

在centos系统中,不同的文件系统使用不同磁盘配额管理工具.例如,xfs文件系统通过 xfs_quota 工具进行管理:EXT3/4 文件系统通过 quota 工具进行管理,这里我们使用的是xfs文件系统.所以使用 xfs_quota 管理工具. 除了内核和 xfs_quota 软件的支持以外,指定的分区必须已经挂载且支持磁盘配额功能.注意:xfs文件系统只有在首次挂载时才启动磁盘限额功能,下面为设置磁盘配额的具体过程: 下面开始设置配额: 其中需要限制什么就写入限制字段即可,(0表示无限制)

认识Linux的磁盘配额

对于管理Windows系统的网络管理员来说,配置磁盘配额是一件比较容易的事情,那么,如何在Linux下配置磁盘配额,在配置磁盘配额时需要注意哪些问题,可能有些读者朋友就不太清楚了,本文将为大家介绍Linux下磁盘配额的知识和技巧. Linux系统在默认情况下,并不限制每个用户使用磁盘空间的大小,如果某个用户疏忽或恶意将磁盘占满,将导致系统无法进行写操作甚至崩溃.我们可以做一个磁盘爆满测试,一个没有设置磁盘配额的Linux系统中,使用某一普通用户登录,执行命令:$ dd if=/dev/zero

Linux 磁盘配额 quota

Quota一直就是个很有用的东西.如果您曾经申请过网络的mail服务时,那么肯定就会明白什么是20MB的邮件空间. 30MB的免费网页空间,这个20MB,30MB就是quota这个东西搞出来的.如果我们要限制用户使用硬盘的容量使用大小,就需要quota来处理. 一.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 在Linux系统中,由于是多人多任务的环境,所以会有多人共同使用一个硬盘空间的情况发生,如果其中有少数几个使用者大量的占掉了硬盘空间的话,那势必压缩其它使用者的使用权力,因此

在Linux上创建磁盘配额

磁盘配额的概述及管理 为什么创建磁盘配额 在Linux根分区的磁盘空间耗尽时,Linux将无法再创建新的文件(包括程序运行的临时文件),从而导致服务程序崩溃,系统无法启动等故障现象. 为了避免出现类似问题,可以设置启用磁盘配额功能,对用户在指定文件系统(分区)中使用磁盘空间.文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保证系统存储空间的稳定性和持续可用性. 使用磁盘配额的前提条件 设置磁盘配额,需要安装 quota 软件包,用于配置和管理磁盘配额,在RHEL 6中,系统默认

【Red Hat linux】quota软件磁盘配额管理

磁盘配额介绍 quota软件设置的磁盘配额功能,只在指定的文件系统(分区)有效,磁盘配额的限制对象为系统中指定的用户账号.组账号进行限制. 磁盘配额的限制类型分为: 磁盘容量:限制用户能够使用的磁盘数据块大小,也就是限制磁盘空间的大小,默认单位为KB. 文件数量:限制用户能够拥有的文件个数,在linux中每一个文件都有一个对应的数字标记,称为i节点            号,这个编号在同一个文件系统内是唯一的. 磁盘配额的限制方法: 软限制:指在固定期限内暂时允许这个用户超过这个限制,但是系统会

Linux下的磁盘配额设置

磁盘配额概念 磁盘配额其实就是给每个用户分配一定的磁盘额度,只允许他使用这个额度范围内的磁盘空间.在linux系统中,是多用户多任务的环境,所以会有很多人共用一个磁盘的情况.针对每个用户去限定一定量的磁盘空间是有必要的,这样才显得公平. 在linux中,用来管理磁盘配额的东西就是quota了,quota在实际应用中是针对整个分区进行限制的.比如,如果我们限制了/dev/sdb1这个分区,而/dev/sdb1 是挂载在/home 目录下的,那么/home 所有目录都会受到限制. 配额命令 quot