linux创建用户时修改到的文件
1 /etc/passwd //存放用户信息 2 /etc/shadow //存放用户密码信息 3 /etc/group //存放用户组信息 4 /etc/gshadow //存放组信息密码 5 /home/[username] //家目录 6 文件中含有初始配置文件,为隐藏信息 7 /etc/skel/ //存放着用户信息的模板信息,如:创建用户是home下面的隐藏的文件 8 /var/spool/mail/[username] //用户的邮箱
各个文件中包含的信息解析
1 Linux组的类别: 2 用户的基本组(主组): 3 组名同用户名,且仅包含一个用户:私有组 4 用户的附加组(额外组): 5 6 Linux用户和组相关的配置文件: 7 /etc/passwd:用户及其属性信息(名称、UID、基本组ID等等); 8 /etc/group:组及其属性信息; 9 /etc/shadow:用户密码及其相关属性; 10 /etc/gshadow:组密码及其相关属性; 11 12 /etc/passwd: 13 name:password:UID:GID:GECOS:directory:shell 14 15 用户名:密码:UID:GID:GECOS:主目录:默认shell 16 17 /etc/group: 18 group_name:password:GID:user_list 19 20 组名:组密码:GID:以当前组为附加组的用户列表(分隔符为逗号) 21 22 /etc/shadow 23 用户名:加密了的密码:最近一次更改密码的日期:密码的最小使用期限:最大密码使用期限:密码警告时间段:密码禁用期:账户过期日期:保留字段 24 25 加密机制: 26 加密:明文--> 密文 27 解密:密文--> 明文 28 29 单向加密:提取数据指纹 30 md5: message digest, 128bits 31 sha1: secure hash algorithm, 160bits 32 sha224: 224bits 33 sha256: 256bits 34 sha384: 384bits 35 sha512: 512bits 36 37 雪崩效应:初始的条件的微小改变,将会引起结果的巨大改变; 38 定长输出: 39 40 密码的复杂性策略: 41 1、使用数字、大写字母、小写字母及特殊字符中至少3种; 42 2、足够长; 43 3、使用随机密码; 44 4、定期更换;不要使用最近曾经使用过的密码; 45 46 用户和组相关的管理命令: 47 用户创建:useradd 48 useradd [options] LOGIN 49 -u UID: [UID_MIN, UID_MAX], 定义在/etc/login.defs 50 -g GID:指明用户所属基本组,可为组名,也可以GID; 51 -c "COMMENT":用户的注释信息; 52 -d /PATH/TO/HOME_DIR: 以指定的路径为家目录; 53 -s SHELL: 指明用户的默认shell程序,可用列表在/etc/shells文件中; 54 -G GROUP1[,GROUP2,...[,GROUPN]]]:为用户指明附加组;组必须事先存在; 55 -r: 创建系统用户 56 CentOS 6: ID<500 57 CentOS 7: ID<1000 58 59 默认值设定:/etc/default/useradd文件中 60 useradd -D 61 -s SHELL 62 useradd user1 -u “13” -g “103” -c“描述信息” -d /home/user1“家目录” -s “/bin ologin” 63 usermod user1 -G group2 //覆盖的方式修改group用户组 64 usermod user1 -aG group2 //追加的方式增加grout用户组
用户相关修改
1 用户属性修改:usermod 2 usermod [OPTION] login 3 4 -u UID: 新UID 5 -g GID: 新基本组 6 -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项,表示append; 7 -s SHELL:新的默认SHELL; 8 -c 'COMMENT':新的注释信息; 9 -d HOME: 新的家目录;原有家目录中的文件不会同时移动至新的家目录;若要移动,则同时使用-m选项; 10 -l login_name: 新的名字; 11 12 -L: lock指定用户 13 -U: unlock指定用户 14 15 -e YYYY-MM-DD: 指明用户账号过期日期; 16 -f INACTIVE: 设定非活动期限; 17 18 给用户添加密码:passwd 19 passwd [OPTIONS] UserName: 修改指定用户的密码,仅root用户权限 20 passwd: 修改自己的密码; 21 22 常用选项: 23 -l: 锁定指定用户 24 -u: 解锁指定用户 25 26 -n mindays: 指定最短使用期限 27 -x maxdays:最大使用期限 28 -w warndays:提前多少天开始警告 29 -i inactivedays:非活动期限; 30 31 --stdin:从标准输入接收用户密码; 32 echo "PASSWORD" | passwd --stdin USERNAME 33 34 Note: /dev/null, bit buckets 35 /dev/zero, 36 37 删除用户:userdel 38 userdel [OPTION]... login 39 -r: 删除用户家目录; 40 41 组属性修改:groupmod 42 groupmod [OPTION]... group 43 -n group_name: 新名字 44 -g GID: 新的GID; 45 46 组删除:groupdel 47 groupdel GROUP 48 49 组密码:gpasswd 50 gpasswd [OPTION] GROUP 51 52 -a user: 将user添加至指定组中; 53 -d user: 删除用户user的以当前组为组名的附加组 54 55 -A user1,user2,...: 设置有管理权限的用户列表 56 57 newgrp命令:临时切换基本组; 58 如果用户本不属于此组,则需要组密码;
权限管理
1 文件的权限主要针对三类对象进行定义: 2 owner: 属主, u 3 group: 属组, g 4 other: 其他, o 5 6 每个文件针对每类访问者都定义了三种权限: 7 r: Readable 8 w: Writable 9 x: eXcutable 10 11 文件: 12 r: 可使用文件查看类工具获取其内容; 13 w: 可修改其内容; 14 x: 可以把此文件提请内核启动为一个进程; 15 16 目录: 17 r: 可以使用ls查看此目录中文件列表; 18 w: 可在此目录中创建文件,也可删除此目录中的文件; 19 x: 可以使用ls -l查看此目录中文件列表,可以cd进入此目录; 20 21 --- 000 0 22 --x 001 1 23 -w- 010 2 24 -wx 011 3 25 r-- 100 4 26 r-x 101 5 27 rw- 110 6 28 rwx 111 7 29 30 例如: 31 640: rw-r----- 32 rwxr-xr-x: 755 33 34 修改文件权限:chmod 35 chmod [OPTION]... OCTAL-MODE FILE... 36 37 -R: 递归修改权限 38 39 chmod [OPTION]... MODE[,MODE]... FILE... 40 MODE: 41 修改一类用户的所有权限: 42 u= 43 g= 44 o= 45 ug= 46 a= 47 u=,g= 48 49 修改一类用户某位或某些位权限 50 u+ 51 u- 52 53 chmod [OPTION]... --reference=RFILE FILE... 54 参考RFILE文件的权限,将FILE的修改为同RFILE; 55 56 修改文件的属主和属组: 57 仅root可用; 58 59 修改文件的属主:chown 60 chown [OPTION]... [OWNER][:[GROUP]] FILE... 61 62 用法: 63 OWNER 64 OWNER:GROUP 65 :GROUP 66 67 Note: 命令中的冒号可用.替换; 68 69 -R: 递归 70 71 chown [OPTION]... --reference=RFILE FILE...
其它零散补充命令
1 vim 2 wq!:强制保存退出 3 yy:复制 4 p:黏贴 5 6 userdel -r //移除用户并删除创建用户名时候的创建的信息 7 8 输出重定向:COMMAND > NEW_POS, COMMAND >> NEW_POS 9 >:覆盖重定向,目标文件中的原有内容会被清除; 10 >>: 追加重定向,新内容会追加至目标文件尾部; 11 12 管道: 13 COMMAND1 | COMMAND2 | COMMAND3 |... 14 15 Note:最后一个命令会在当前shell进程的子shell进程中执行; 16 17 tee命令: 18 tee [OPTION]... [FILE]... 19 20 21 ll 等同于 ls -l 22 23 chown [user]:[group] /path/filename/ //修改用户的所属 主 以及所属 组 24 -R //递归修改文件属性 25 chmod //修改文件权限 26 27 sh a.txt //执行a.txt文件内容,解释执行,执行第一行,执行第二行等。。。 28 ./filename.py //执行filename.py文件,解释执行,执行第一行,执行第二行等。。。