1. linux的ACL
ACL可以针对单一用户、单一文件或目录进行设置r、w、x的权限设置,对于需要使用特殊权限的使用状况非常有帮助。首先需要查看系统是否支持acl

ACL的设置技巧
getfacl:取得某个文件或目录的ACL设置项目
setfacl:设置某个文件或目录的ACL规定
1.setfacl的用法
-m: 设置后续的acl参数给文件使用
-x:删除后续的acl参数
-b:删除所有的acl参数
-k:删除默认的acl参数
-R:递归设置
-d:设置默认acl参数
针对特定用户的方式 u:[用户账号列表]:[rwx]
针对特定用户组的方式g:[用户组列表]:[rwx]
针对有效权限mask的设置方式m:rwx
例题:根据鸟哥的例子编写脚本如下
#!/bin/bash
groupadd projecta
I=0
for(( I=1 ; I<=5 ;I=I+1 ))
do
if ! id pro$I > /dev/null;then
useradd -d /home/pro$I -c 'projecta user' -G projecta -s /bin/bash pro$I
echo "password" | passwd --stdin pro$I
else
echo "当前用户已存在"
fi
done
mkdir -pv /home/projecta
chgrp projecta /home/projecta
chmod 2770 /home/projecta
这样就可以创建5个用户以及一个共同需要开发的目录了。下面我们测试下acl的控制:

创建完成acl的权限之后,

2.用户信息传递
查询用户
w、who、lastlog
用户对谈
write、mesg
用户邮件信息
mail
2. linux的终端类型
借鉴别人的内容:http://blog.chinaunix.net/uid-28253945-id-3672532.html
1.tty:终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。
2. 虚拟终端(/dev/pts/n):使用xshell或者远程telnet到主机时使用的终端交互就是虚拟终端(pseudo-tty)。
3. /dev/ttySn:使用计算机串行端口连接的终端设备。计算机把每个串行端口看作是一个字符设备。例如,在命令行提示符下键入:echo test > /dev/ttyS1会把单词”test”发送到连接在ttyS1(COM2)端口的设备上。可接串口来实验。
4. 控制台终端(/dev/ttyn, /dev/console) 在Linux 系统中,计算机显示器通常被称为控制台终端 (Console)。它仿真了类型为Linux的一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2 等。当你在控制台上登录时,使用的是tty1。使用Alt+[F1—F6]组合键时,我们就可以切换到tty2、tty3等上面去。tty1–tty6等称为虚拟终端,而tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上。因此不管当前正在使用哪个虚拟终端,系统信息都会发送到控制台终端上。你可以登录到不同的虚拟终端上去,因而可以让系统同时有几个不同的会话期存在。
5.其他类型:Linux系统中还针对很多不同的字符设备存在有很多其它种类的终端设备特殊文件。例如针对ISDN设备的/dev/ttyIn终端设备等。
console: 控制台
pty: 物理终端 (VGA)
tty#: 虚拟终端 (VGA)
ttyS#: 串行终端
pts/#: 伪终端
上述pts和tty、console比较常见,pty和ttyS没怎么用过。
转载于:https://my.oschina.net/alfredliukai/blog/510558
分享到:
相关推荐
PAM 模块类型有四种: ① auth 模块:负责用户验证,例如验证用户名和密码。 ② account 模块:负责账户管理,例如检查账户是否过期。 ③ session 模块:负责用户会话管理,例如记录用户的操作记录。 ④ ...
该文档适用于,对linux 有一定了解,从事或者正要从事linux pam模块开发的同学
PAM模块类型** PAM模块分为四种类型:`auth`、`account`、`session`和`password`。它们分别对应认证、账户管理、会话管理和密码管理。每种类型的模块都有特定的职责: - `auth`:验证用户身份。 - `account`:...
Linux-PAM(Pluggable Authentication Modules)是一种基于模块的身份验证机制,它允许系统管理员自由选择应用程序使用的验证机制。通过设置 Linux-PAM 模块的配置文件,可以实现用户登陆的控制。Linux-PAM 模块由多...
### 如何设置PAM模块控制Linux密码策略 在Linux系统中,为了确保用户账户的安全性,通常会采用一系列措施来加强密码策略。其中,PAM(Pluggable Authentication Modules)模块是一个非常重要的组件,它提供了灵活的...
这个包在Linux系统中扮演着至关重要的角色,它管理着系统的用户密码信息,与PAM(Pluggable Authentication Modules)紧密协作,确保密码的安全性和复杂度。让我们深入探讨一下其中涉及的知识点。 `shadow` 包是...
本文将深入探讨`pam_chroot`这个特定的PAM模块,以及它在Linux环境下的应用。 `pam_chroot`模块是PAM的一个组件,它的主要功能是在用户登录会话期间限制用户对系统的访问权限,将用户的根目录(或称为“chroot jail...
在Linux-PAM-1.3.0.tar.gz这个压缩包中,包含了版本为1.3.0的PAM的源代码和其他相关文件,允许用户在系统上安装和配置PAM来实现多样的认证策略。 PAM的核心概念在于“插件式”,这意味着它能够根据需求加载不同的...
指令由四个元素组成:控制标志(如required、sufficient等)、模块类型(如auth、account等)、模块名(如pam_unix)和模块参数。 **三、PAM模块开发** 开发PAM模块需要对PAM API有深入理解。PAM提供了若干函数供...
配置文件`pam.conf`是PAM的核心,它定义了服务(如登录、SFTP等)、模块类型(认证、账户、口令、会话)、控制标志(如必需、可选、尝试等)和模块路径及选项。例如,一个简单的配置条目可能如下: ``` service_...
为了解决这些问题,Linux引入了PAM(可插拔认证模块)。 PAM是一种认证框架,允许系统管理员根据需要组合不同的认证模块,以适应各种服务和应用程序的需求。PAM的主要优点在于其模块化设计,它将认证逻辑从应用程序...
4. **模块类型**:PAM支持多种类型的模块,包括但不限于认证(authentication)、账户(account)、会话(session)等。这些模块分别负责不同阶段的任务处理,比如认证模块处理用户的用户名密码验证,账户模块检查...
这些配置文件包含了PAM模块的调用顺序,每行都代表一个PAM服务请求,包括模块类型(比如auth、account、session、password)、控制标志(决定模块行为,如required、requisite、sufficient、optional)以及模块路径...
Linux-PAM(Pluggable Authentication Modules,插入式身份验证模块)是 Linux 操作系统中的一种身份验证机制,允许系统管理员根据需要选择和配置不同的身份验证模块,以满足不同的身份验证需求。本指南将为系统管理...
linux pam源码
NULL 博文链接:https://dingody.iteye.com/blog/1978152
综上所述,“pam_linux的可插入身份验证模块(PAM)的Safe Rust API开发技术.zip”包含的内容可能是关于如何在Rust环境中构建一个安全、高效的PAM接口的指南,这对于想要在Rust项目中集成强大认证机制的开发者来说是...
Linux——PAM-的应用开发和内部实现源码分析,介绍了如何利用PAM模块编程进行对Linux操作系统安全访问。
- **模块名**:要使用的PAM模块名称。 - **参数**:传递给PAM模块的参数。 #### 示例配置 以下是一个简单的 `/etc/pam.d/sshd` 配置示例: ``` #%PAM-1.0 auth required pam_listfile.so item=user sense=deny ...