访问控制实验.docx

上传人:b****8 文档编号:29215789 上传时间:2023-07-21 格式:DOCX 页数:12 大小:468.17KB
下载 相关 举报
访问控制实验.docx_第1页
第1页 / 共12页
访问控制实验.docx_第2页
第2页 / 共12页
访问控制实验.docx_第3页
第3页 / 共12页
访问控制实验.docx_第4页
第4页 / 共12页
访问控制实验.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

访问控制实验.docx

《访问控制实验.docx》由会员分享,可在线阅读,更多相关《访问控制实验.docx(12页珍藏版)》请在冰豆网上搜索。

访问控制实验.docx

访问控制实验

一、实验项目名称

访问控制实验

二、实验目的

掌握Linux环境下用户管理和进程管理的常用命令,了解Linux用户管理的一般原则,掌握Linux中用户管理、授权管理和PAM等相关的系统安全配置方法,建立起Linux操作系统的基本安全框架。

三、实验内容与实验步骤

Linux访问控制实验、linux文件系统访问控制实验

四、实验环境

在计算机或虚拟机上安装Linux环境,本实验在VMwareWorkstation虚拟机上安装的Ubuntu10.04上进行。

五、实验过程与分析

(一)、linux访问控制实验

任务一:

用户管理

步骤1:

查看和添加名为mylist的新账户。

用su命令切换到新建的账户,检查shadow文件的权限设置是否安全。

设置安全时,普通用户mylist没有查看该系统文件的权限。

步骤2:

添加和更改密码(与实验3一致,不再截图)

步骤3:

账户的禁用与恢复

步骤3-1:

输入下列命令行,以管理员身份锁定新建账户,试图再转入mylist账户发现无法转入。

检查用户mylist的当前状态,L表示账户已经被锁定了。

将锁定账户解锁

步骤4:

建立名为mygroup的用户组。

将新建的用户组更名为mygroup1,将新建用户mylist加入到新建的组mygroup1中。

将mylist设置为该用户组的管理员;用su命令转换到mylist用户下,并将系统中的一个普通用户testuser1加入到mygroup1中,被设置为组管理员的用户可以将其他用户加入到该组中,普通用户则没有此权限。

步骤5:

设置密码规则

编辑/etc/login.defs目录下的defs文件;在文件中找到有关口令信息相应内容

步骤6:

为账户和组相关系统文件加上不可更改属性,防止非授权用户获得权限

锁定/etc/passwd,再次建立新用户friend时,由于系统文件被锁定,无法完成操作命令。

解除对于passwd文件的锁定,再分别用同样的方法锁定/etc/shadow(用户口令加密文件),无法创建用户,锁定/etc/group(用户组名列表)/etc/gshadow(组密码文件),无法创建组。

步骤7:

删除用户和用户组

步骤8:

编写一个简单的账号木马,并且运行木马程序,输入正确口令信息报错,再次输入才能正确登陆。

这时就可以到/tmp/下看到刚才输入的密码已被存到/tmp/catchpass文件中。

任务二:

授权管理

步骤1:

超级用户权限授权管理:

使用su命令对用户授权:

使用su命令对用户授权添加新用户testuser1;首先修改su的PAM配置文件(/etc/pam.d/su),然后以testuser1用户登录系统,尝试命令suroot,输入正确的root密码,也无法拥有root权限

此时,将PAM配置文件(/etc/pam.d/su)修改回原先状态,再次尝试suroot,输入正确的root密码,可以正常拥有root权限。

再次修改su的PAM配置文件(/etc/pam.d/su),以root身份登录系统,把testuser1用户加入到用户组wheel中后,又可以使用su命令了。

步骤1-3:

使用sudo为用户授权:

sudo命令提供了另一种授予用户管理权限的方法。

用户在管理命令前加一个sudo命令,这个用户就会被提示输入他自己的口令。

验证后,如果这个命令被授予该用户执行,它就会以根用户身份执行该命令。

以用户名zhang登录,没有权限为其他用户更改密码

在文件系统中的/etc目录下找到sudoers文件进行编辑。

通过命令chmod666/etc/sudoers修改sudoers权限,在文件sudoers中添加语句

使用命令chmod440/etc/sudoers将文件修改为原先状态。

步骤1-4:

以用户名hzb登录系统,发现其可以为testuser1改密码

步骤2:

利用PAM进行权限控制

步骤2-1:

控制使用ssh登录的用户。

步骤2-2:

控制密码可以重试三次,不提示输入旧密码

步骤2-3:

密码强度控制。

新密码使用MD5方式加密,密码长度为10位,其中2位数字,2位其他字符,至少3位不得与旧密码相同;

然后使用一个用户名登录系统(不要使用root登录),试着为该用户更改口令。

步骤2-4:

配置vsftp的认证方式。

下面是vsftp服务器利用PAM模块进行用户认证的三个步骤。

首先用pam_ftp模块检查当前用户是否为匿名用户,如果是匿名用户,则sufficient控制标志表明无须再进行后面的认证步骤,直接通过认证;否则继续使用pam_unix_auth模块来进行标准的Linux认证,即用/etc/passwd和/etc/shadow进行认证;通过了pam_unix_auth模块的认证之后,还要继续用pam_listfile模块来检查该用户是否出现在文件/etc/ftpusers中,如果是则该用户被拒绝掉

步骤2-5:

控制su的操作能够进入的其他用户。

创建/etc/security/suok文件,其中的内容为允许进入的用户名,one,two,root

在/etc/pam.d/su中添加:

authrequiredpam_listfile.soonerr=failitem=usersense=allowfile=/etc/security/suok

只有suok文件里的用户可以由su进入

尝试用su转入用户,由于onetwo在suok中,所以可以由su进入,three则不行。

控制只有在root组中的用户可以通过密码su成为root,可以在/etc/pam.d/su中添加:

authsufficientpam_wheel.sogroup=root

在/etc/group中添加root组中的成员。

将one添加到root组。

尝试用one,two利用su进入root权限,只有root组中的one可以。

(二)、linux文件系统访问控制实验

步骤1:

新建文件夹和文件:

在/home/hzb目录下新建名为myfolder的文件夹。

用mkdir命令在myfolder文件夹下建立一个名为child的子文件夹,用cd命令进入child文件夹,并新建一个名为newfile的文件。

步骤2:

编辑文件:

在“插入”模式下输入:

thisisanewfile.

步骤3:

查看文件内容及访问权限:

用cat命令查看文件内容,用ll命令查看相关的文件信息

步骤4:

文件的打开

使用gcc编译器编译程序,并生成可执行文件open_file

从中可以看到,系统成功打开(或创建)/home/hzb/hello文件,文件描述符为3。

使用ls–l进一步查看该文件信息如下:

由此可见,文件的执行权限“rwxr-xr-x”与程序中的“MODE”宏定义是吻合的,文件的长度为0,这与“FLAGS”宏定义是吻合的。

步骤5:

设置或管理文件所属用户、用户组和其他组用户的权限

方法一:

用chmod命令将newfile文件的访问权限设置为所属用户有读、写和执行的权限,用户组有读、执行的权限,其他用户没有任何权限,再次查看并记录用户权限,发现修改成功。

方法二:

以下用chmod函数编程实现改变文件访问权限:

change_mode.c

使用gcc编译change_mode.c,并生成可执行文件change_mode,运行程序,得到输出结果

·

使用llnewfile命令查看文件/home/hzb/myfolder/child/newfile的访问控制信息,发现访问权限改变。

从中可以看到,显示的文件的执行权限信息与程序中的“MODE”参数值0755是吻合的,即实验成功执行。

步骤6:

改变文件或目录的所有权

首先进入root用户,进入/home路径,新建文件mytest1.txt,改变文件的访问控制权限为666,后查看文件权限;

打开mytest1.txt文件,在文件中输入数字“123456”并保存退出;此时将文件mytest1.txt复制到用户hzb目录下,进入/home/hzb目录下,查看文件mytest1.txt内容:

得到123456。

再次查看文件的访问控制权限,发现变成644但属组,属主没变。

使用zhang用户登录并查看文件的访问控制权限,权限还是644,属组,属主是root,此时,尝试在文件mytest1.txt中输入信息“testtext”,无权限无法写入

使用chown命令改变文件mytest1.txt的所有权,再次使用用户zhang对文件mytest1.txt进行写操作,写入内容为“testtest”,并用cat命令显示输出文件mytest1.txt的内容。

可以看出在进行chown命令之前,zhang用户不能写mytest1.txt文件,在执行chown命令之后则可以对文件进行读写了。

在上面的实验中更改了mytest1.txt的属住,没有更改它的组,它的组仍然是root,下面把mytest1.txt文件所属的组修改为zhang

步骤7:

配置并应用ACL管理文件的访问权限

步骤7-1:

首先配置文件系统支持ACL:

Linux系统默认可能支持ACL,若不支持,则需要进行配置。

(1)可以直接修改/etc/fstab文件。

修改方法通常是打开/etc/fstab文件,在defaults后面添加acl,然后输入命令#mount–oremount或者重启系统就可以了;

(2)或者也可以直接在命令行终端中安装ACL工具。

步骤7-2:

以根用户身份登录系统,创建一个文件onn.txt,并查看/home/zhang目录下文件,看到onn.txt

步骤7-3:

以zhang用户身份登录系统,进行写测试,以zhang用户身份进行写测试失败

步骤7-4:

使用setfacl命令设置文件test.txt,使得用户hzb具有读写权限。

可以使用getfacl命令查询文件ACL属性,可以看出设置ACL后,ll命令的输出中test.txt文件的权限后面多出一个“+”,这也是ACL执行的一个标志。

5.2.5实验结果分析

(一)熟悉了su、sudo、useradd、passwd、groupadd、userdel、groupdel和chattr等Linux下常用命令的使用方法以及简单账号木马的工作原理。

另一个是授权管理,进行了超级用户权限授权管理和利用插件式鉴别模块(PAM)认证机制进行权限控制。

PAM是统一身份认证框架,基本思想是服务程序与认证机制的分离,在etc/pam/.d目录下存放配置文件,有四种模块,三种控制标记,任意组合能符合多种系统需求。

(二)进行了文件系统相关实验,包括文件的创建、打开与关闭以及文件的权限管理,对linux文件系统增强了解。

其中文件的权限管理又包含设置或管理文件的访问权限、改变文件或目录的所有者和访问控制列表ACL三部分。

Linux针对多用户环境下文件管理提供套完善控制机制,但对于超级用户等角色文件操作危险性太高。

 

 

 

 

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1