7.1 Linux的安全性
Linux安全系统的核心是:用户账户。
用户权限:通过创建用户时分配的用户ID(UID)来跟踪的。
7.1.1 /etc/passwd文件
cat /etc/passwd
root账户时Linux系统的管理员,固定分配给它的UID是0.
Linux系统会为各种各样的功能创建不同的用户账户,但并不是真的用户,叫做“系统账户”,是系统上运行的各种服务进程访问资源用的特殊账户。
/etc/passwd是一个标准的文本文件,可以用任何编辑器进行用户管理,但这样做极其危险!!!
7.1.2 /etc/shadow 文件
只有root用户才能访问。
7.1.3 添加新用户
useradd命令:一次性创建新用户账户及设置用户HOME目录结构。
系统默认值被设置在/etc/default/useradd文件中,-D选项可以查看所用Linux系统中的这些默认值
默认情况下,useradd命令不会创建HOME目录,但是-m选项会使其创建HOME目录。-D 选项后跟上一个指定的值来修改系统默认的新用户设置。
7.1.4 删除用户
userdel命令:只会删除/etc/passwd文件中的用户信息,不会删除系统中属于该账户的任何文件。
-r:会删除用户的HOME目录以及邮件目录。但系统上仍可能存在有已删除用户的其他文件。
7.1.5 修改用户
- usrmod:修改用户账户的字段,指定主要组以及附加组的所属关系。(用户账户修改工具中最强大的一个)
- passwd 修改已有用户的密码;chpasswd:从文件中读取登录名密码时并更新密码
- chsh:修改用户账户的默认登陆shell(必须shell全路径)、chfn:修改用户账户的备注信息; chage:修改密码的过期日期
finger命令:方便地查看Linux系统上的用户信息(Ubuntu没有默认安装该命令)
7.2 使用Linux组
Ubuntu会为每一个用户创建一个单独的与用户账户同名的组。GID
7.2.1 /etc/group文件
7.2.2 创建新组
groupadd命令:创建新组
创建新组时,默认没有用户被分配到该组,/usr/sbin/usermod -G shared rich
即可将rich用户添加到shared组。
7.2.3 修改组
groupmod命令:修改已有组的GID(加-g选项)或组名(加-n选项)
7.3 理解文件权限
7.3.1 使用文件权限符
7.3.2 默认文件权限
umask命令:显示和设置默认权限
文件的全权限是:666
目录的全权限是:777
7.4 改变安全性设置
7.4.1 改变权限
chmod命令:改变文件和目录的安全性设置
命令格式:chmod options mode file
另一种命名格式:
chmod [ugoa...] [[+-=] [rwxXstugo]
u: 用户
g: 组
o: 其他
a: 所有
+:增加权限
-:移除权限
=:将权限设置成后面的值
X:如果对象是目录或者它已有执行权限,赋予执行权限
s:运行时重新设置UID or GID
t:保留文件或目录
7.4.2 改变所属关系
chown命令:改变文件的属主
命令格式:chown option owner[.group] file
chgrp命令:改变文件的默认属组
7.5 共享文件
Linux系统上共享文件的方法:创建组
SUID 设置用户ID
SGID 设置组ID
粘着位
- 用mkdir命令创建希望共享的目录
- 通过chgrp命令将目录的默认属组改为包含所有需要共享文件的用户的组(你必须是该组的成员)
- 将目录的SGID位置位,保证目录中新建文件中都用shared作为默认数组。
- 组成员就能共享目录下创建新文件了。
7.6 小结
- 通过UID and GID 来限制文件、目录及设备的访问。
- /etc/passwd and /etc/group
- useradd 创建新用户账户,usermod 修改账户;groupadd 创建新组账户, groupmod 修改组账户
- 文件和目录的访问权限:rwx-
- umask 设置系统中创建的文件和目录默认安全设置;chmod修改文件和目录的安全设置;chown和chgrp改变文件默认的属主和属组
- 创建共享目录
网友评论