1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187
| 1用户管理配置文件 Linux用户分为三种: 超级用户(root uid=0的用户) UID为0的用户就拥有root权限 普通用户(UID 500-60000) 伪用户 (UID 1-499) 伪用户与系统和程序服务相关 bin,daemon,shutdown,halt等,任务Linux系统默认都有这些伪用户 mail,news,games,apache,ftp,mysql及sshd等,与Linux系统的进程相关 伪用户通常不需要或无法登陆系统 可以没有宿主目录 用户组 每个用户都至少属于一个用户组 每个用户组可以包括多个用户 同一个用户组的用户享有该组共有的权限 用户信息文件:/etc/password root:x:0:0:root:/root:/bin/bash 用户名:密码位:用户标识号UID:缺省组标识号GID:注释性描述(例如存放用户全名等信息):宿主目录(用户登录系统后的缺省目录):命令解释器(用户使用的Shell) 密码文件:/etc/shadow liubin:$1$nWLsUG06$wF5FRtUwwsvsYQd4w2s130:15710:0:99999:7::: 用户名:加密的密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:帐号闲置时间:失效时间:标志 修改/etc/passwd文件来增加用户 添加一个密码为空的用户名为hosanter的用户 1.vim /etc/passwd 2.添加一行 例如 hosanter::502:502:project zhangsan:/home/hosanter:/bin/bash 3.mkdir /home/hosanter 4.ls -ld /home/hosanter 5.chown hosanter /home/hosander 6 vim /etc/shadow 8 添加一行: hosanter::15710:0:99999:7::: 9 cd /etc/skel 新用户信息文件 10 cp -rf .* /home/hosanter 用户组文件:/etc/group 用户组密码文件:/etc/gshadow 用户配置文件: /etc/login.defs /etc/default/useradd 为什么普通用户可以修改密码? ls -l /usr/bin/passwd -rwsr-xr-x 1 root root 22942 2008-01-03 /usr/bin/passwd setUID的定义,当一个可执行程序具有SetUID权限,用户执行这个程序时,将以这个程序所有者的身份执行 SetUID = 4 chmod u+s u-s 4755 755 SetGID = 2 6755 chmod g+s g-s 2755 755 ls -ld /tmp drwxrwxrwxt 7 root root 4096 12-23 03:12 /tmp 粘着位 = 1 其他人 t chmod o+t 1777 如果一个权限为777目录具有粘着位,每一个用户都可以在这个目录下创建文件,但是只能删除自己是所有者的文件 例如 将touch命令授予SetUID权限 chmod u+s /bin/touch 当vi命令被授权SetUID权限 查找SetUID程序: find / -perm -4000 -o -perm -2000 新用户信息文件: /etc/skel 存放了新用户在创建时的最基本的配置文件 登陆信息:/etc/motd sys::3:root,bin,adm 组名 用户登陆时所在的租 组密码 一般不使用(可以让不是这个组的成员添加到组) GID 组标识号 组内用户列表 属于该组的所有用户列表 添加用户组 groupadd +组名 groupadd -g 888 webadmin 指定组的ID 查看用户组 group + 组名 /etc/group 删除用户组 groupdel 组名 修改用户信息 groupmod -n apapche webadmin 修改webadmin组名为apache 添加一个用户指定用户组 useradd -u 1888 -g webadmin -G sys,root -d /backup -s /bin/bash -c "Market wangwu" -e 2011-01-19 liubin useradd设置选项用户名-D 查看缺省参数 u:UID 指定uid g:缺省所属用户组GID G:指定用户所属多个组 d:宿主目录 s:命令解释器Shell c:描述信息 描述信息有空格需要是使用双引号 e:指定用户失效时间 passwd sam 手工添加用户 usermod 修改用户信息 和 把用户添加到组中 usrrmod -l samlee -d /home/samlee -g lampbrother liming 将用户liming的登录名改为samlee 并添加到lampbrother组中 用户目录改为home/samlee usermod -G sys tomgao 把用户tomgao添加到sys组中 newgrp 切换到用户组 gpasswd设置组密码及管理组内成员 gpasswd 为组设置密码 -a 添加用户到用户组 gpasswd -a tomgao sys 添加tomgao到sys组 -d 从用户组中删除用户 gpasswd -d tomgao sys 删除tomgao在sys组 -A 设置用户组管理员 gpasswd -A tomgao sys 设置tomgao为sys组的管理员 -r 删除用户组密码 gpasswd -r sys 删除sys组的密码 -R 禁止用户切换为改组 pwck 检测/etc/passwd文件(锁定文件) vipw 编辑 /etc/passwd文件 id 查看用户id和组信息 finger 查看用户详细信息 su 切换用户 (su - 环境变量切换) passwd -S 查看用户密码状态 who , w 查看当前登录用户信息 禁用和恢复用户 禁用 usermod -L username passwd -l username 恢复 usermod -U username passwd -u username groups 查看用户隶属与那些用户组 newgrp 切换用户组 grpck 用户配置文件检测 chgrp 修改文件所属组 vigr 编辑/etc/group文件(锁定文件) chage 设定密码 -l 查看用户密码设置 -m 密码修改最小天数 -M 密码修改最大天数 -d 密码最后修改的日期 -I 密码过期后,锁定帐户的天数 -E 设置密码的过期日期,如果为0 代表密码立即过期,如果为-1代表用不过期 -W 设置密码过期前 开始警告的天数 启动或停用shadow功能 pwconv/pwunconv 启动 停用
|