信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

这是信息系统安全实验系列的第三篇~

1. 实验目的

       操作系统基础练习

2. 实验内容

(1)配置电脑,使开机之后不是图形界面,而是字符界面(在etc/下面修改一个文件),后续操作均在字符界面下完成;

(2)解读UNIX账户文件/etc/passwd;

(3)解读UNIX组文件/etc/group;

(4)解读UNIX口令文件/etc/shadow,解释各个字段的含义;

(5)掌握Linux用户修改口令过程;

(6)掌握mount挂载命令:将U盘,或者光盘mount挂载到我的机器上;

(7)了解目标机器上有哪些软件是在Windows开机时自动启动的。

3. 实验过程记录

(1)配置电脑使开机后为字符界面

       /etc/default/grub文件中的grub_cmdline_linux_default的值决定了开机默认进入的模式,所以将其修改后,更新grub文件并重启,即可开机即进入字符界面。

  • 修改grub文件

       输入命令sudo vi /etc/default/grub并修改grub文件(把“quiet”改为了“text”),如图1所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                       图1(修改grub文件)

  • 更新grub文件,如图2所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                       图2(更新grub文件)

  • 重启,开机即进入字符界面,如图3所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                图3(进入字符界面)

(2)解读UNIX账户文件/etc/passwd

       输入sudo vi /etc/passwd和密码后,可以查看账户文件,如图4所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                        图4(查看账户文件)

       账户文件中每一行记录对应着一个用户,每一行的格式为:

                                                用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

       各个字段代表的意义如表1所示:

用户名

代表用户账号的字符串。

 

 

口令

一些系统中,存放着加密后的用户口令字。但现在许多Linux系统(如SVR4)都使用了shadow技术,把真正的加密后的用户口令字存放到/etc/shadow文件中,而在/etc/passwd文件的口令字段中只存放一个特殊的字符,例如“x”或者“*”。

 

用户

标识号

系统内部用它来标识用户。0是超级用户root的标识号,1-99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。

组标识号

用户所属的用户组。

注释性

描述

用户的一些个人情况,例如用户的真实姓名、电话、地址等。

 

主目录

用户的起始工作目录,它是用户在登录到系统之后所处的目录。在大多数系统中,各用户的主目录都被组织在同一个特定的目录下,而用户主目录的名称就是该用户的登录名。

 

登录

Shell

用户登录后,要启动一个进程,负责将用户的操作传给内核,这个进程是用户登录到系统后运行的命令解释器或某个特定的程序,即Shell。

                                                                              表1(账户文件每一字段的意义)

       以第一行为例,用户名是root即超级用户,x用来代替口令,第一个0是超级用户的id,第二个0是超级用户所属的用户组id,注释性描述中说明该用户为超级用户,主目录为/root即超级用户登陆到系统后所处的目录,登录shell为/bin/bash,是超级用户登陆到系统后默认启动的进程。

       另外,系统中会有一些默认的账户,这些帐户有着特殊的用途,一般用于进行系统管理,如bin拥有可执行的用户命令文件,sys拥有系统文件,adm拥有帐户文件等。

(3)解读UNIX组文件/etc/group

       输入sudo vi /etc/group和密码后,可以查看组文件,如图5所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                                  图5(查看组文件)

       组文件中每一行记录代表一个用户组的信息,每一行的格式为:

                                                             组名:口令:组标识号:组内用户列表

       各个字段代表的意义如表2所示:

 

组名

代表用户组的字符串。

 

口令

用户组的口令字段。为了安全,在/etc/group文件的口令字段中只存放一个特殊的字符,例如“x”或者“*”。

组标识号

系统内部用它来标识用户组。

组内

用户

列表

属于这个组的所有用户的列表,不同用户之间用逗号(,)分隔。这个用户组可能是用户的主组,也可能是附加组。

                                                                       表2(组文件每一字段的意义)

       以sudo这一行为例,用户组名为sudo,x用来代替口令,这个用户组的id是27,用户列表中记录了名为xiuxiu的用户。

(4)解读UNIX口令文件/etc/shadow

       输入sudo vi /etc/shadow和密码后,可以查看口令文件,如图6所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

             图6(查看口令文件)

       口令文件中每一行记录代表一个用户口令的信息,每一行的格式为:

                                                  登录名:加密口令:最后一次修改时间:最小时间间隔:

                                                  最大时间间隔:警告时间:不活动时间:失效时间:标志

       各个字段代表的意义如表3所示:

登录名

即用户名,代表用户账号的字符串。

 

 

加密口令

加密后的用户口令字。如果为空,则对应用户没有口令,登录时不需要口令;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录;星号代表帐号被锁定;双叹号表示这个密码已经过期了。

最后一次

修改时间

从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。

最小时间间隔

两次修改口令之间所需的最小天数。

最大时间间隔

口令保持有效的最大天数。

警告

时间

从系统开始警告用户到用户密码正式失效之间的天数。

不活动

时间

用户没有登录活动但账号仍能保持有效的最大天数。

 

失效时间

是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号。

标志

保留字段。

                                                                       表3(口令文件每一字段的意义)

       以xiuxiu那一行为例,由1开头,表明是用MD5加密的,CJgMw4c.表示撒的盐值,其后由$开始到:结束的那一段是用撒盐后的口令加密过的字段。17836表示从某个时刻起,到用户xiuxiu最后一次修改口令时的天数。0表示两次修改口令之间的时间间隔没有要求。99999表示口令可以保持有效99999天。7表示从系统开始警告用户到用户密码正式失效之间的时间间隔为7天。

(5)掌握Linux用户修改口令过程

       输入命令sudo passwd xiuxiu(xiuxiu是用户名),再输入新口令即可修改。如图7所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                              图7(修改用户口令)

       再次打开口令文件,可以看到口令已被修改,如图8所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                                 图8(修改口令后的口令文件)

(6)掌握mount挂载命令:将u盘mount挂载到机器上

①    插入u盘

       输入命令sudo fdisk -l可以查看系统的磁盘列表,如图9所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                             图9(查看系统磁盘列表)

       插入u盘后,再次输入命令sudo fdisk -l查看系统的磁盘列表,如图10所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                              图10(再次查看系统磁盘列表)

       从上图可以发现,系统多了一个盘:sdb,同时系统多了一个sdb1的磁盘分区,这个磁盘分区就是要挂载的U盘。

②    新建目录作为u盘的挂接点

       输入命令sudo mkdir /mnt/usb新建目录,用于挂载u盘,如图11所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

       图11(新建目录作为u盘挂接点)

  •   采用mount命令把U盘挂载在/mnt/usb

       输入命令sudo mount /dev/sdb1 /mnt/usb把U盘挂载在/mnt/usb,如图12所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

               图12(采用mount命令挂载u盘)

  •  查看u盘文件

       输入命令ll mnt/usb可以查看u盘中的文件,如图13所示(因为u盘中许多文件夹使用了中文,所以显示为“?”):

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                 图13-1(查看u盘文件)

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                              图13-2(在windows中查看到的u盘内容,可与上图对比查看)

  •  解挂u盘

        输入命令sudo umount /mnt/usb即可解挂u盘,如图14所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

       图14(采用umount命令解挂u盘)

(7)了解自己电脑上有哪些软件在Windows开机时自动启动

       按win+r键,输入regedit打开注册表编辑器,如图15所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                图15(打开注册表编辑器)

依次点击:

\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,如图16所示:

信息系统安全实验(三):图形界面到字符界面的转换、解读/etc/下文件、linux用户口令修改、mount挂载命令、查看开机自启动软件

                                                                                  图16(查看开机自启动的软件)

上图中右侧的软件即为开机自启动的软件。