调优方法
原理:禁用atime的修改来节省cpu和内存资源。
命令:mount noatime disk

1、配置文件
1. /etc/passwd
文档结构:由":" 分隔成7个字段"username":"x":"uid":"gid":"remark":"homedirectory":"shell environment"
默认权限:-rw-r--r--
(1) username,用户名称
命名规则:大小写字母、数字、减号(不能出现在首位)、点以及下划线,其他字符不合法。
(2) x,密码空位键
安全起见放到 /etc/shadow。
(3) uid,用户ID
可用ID,0-4294967294=2^32-2;
root的uid=0;1-499系统保留;普通账户是从500开始。
普通用户的uid可以改成0,此时系统就将其识别成root用户。
(4) gid,主组id
组配置文件/etc/group。
(5) remark,注释说明
该字段没有实际意义,通常记录用户的一些属性,例如姓名、电话、地址等等 用 chfn 更改;
(6) home directory,用户家目录
(7) shell environment,shell环境
/bin/bash;/bin/false; /sbin/nologin(禁止该用户登录)。

2. /etc/shadow
文档结构:使用":"分隔成9个字段,“用户名:密码(密文):此密码设置日期:密码不可更改的天数:
密码需要重置的天数:密码到期提前提醒天数:帐号失效后宽限天数:帐号失效日期:保留位”
默认权限:----------(除了root用户,其他所有普通用户包括root组成员都没有任何权限呦)
(1) 用户名
是与/etc/passwd文件中的登录名相一致的用户账号。
(2) 密码
已加密显示密文,不可逆,但可被破解;
!!表示密码为空
(3)当前密码的设置日期
此日期用设置当前密码的日期和1970年1月1日的差值来表示
(例如上次更改密码的日期为2012年1月1日,则这个值就是 '365 x (2012-1970) + 10 + 1= 15341')
******************************************************************************************
至於想要知道某個日期的累積日數,可使用如下的程式計算:

[root@www ~]# echo $(($(date --date="2008/09/04" +%s)/86400+1))
14126

上述指令中,2008/09/04 為你想要計算的日期,86400 為每一天的秒數, %s 為 1970/01/01 以來的累積總秒數。 由於 bash 僅支援整數,因此最終需要加上 1 補齊 1970/01/01 當天。

来自 <http://linux.vbird.org/linux_basic/0410accountmanager.php#shadow_file>
*******************************************************************************************
(4)密码不可被更改的天数(与第三段日期比较)
值为0时,意为不限制,随时可更改。
如果设置为20,则20天内用户不可更改密码。
(5)密码需要重置的天数(与第三段日期比较)
默认值是99999,远远超出电脑寿命,基本可以认为永不过期。
(6)密码到期前提前提醒天数(与第五段日期比较)
例:设置为7既为密码到期日提前7天提醒用户修改密码,“您的密码还有n天就要过期,请及时修改密码”。
(7)帐号失效后宽限天数
到期后过多少天锁定帐号
(8)帐号失效日期
计算方式同第三段;
应该可以用到收费服务上。
(9)保留位

2、用户及用户组相关命令
id
作用:查看用户的uid、gid和所属组信息
语法:id username
例如:

[root@web01 ~]# id essence

uid=500(essence) gid=500(essence) groups=500(essence)

groupadd
作用:增加用户组
配置文件:/etc/group & /etc/gshadow
语法:groupadd 参数 groupname
参数:-g 指定gid
例如:

[root@web01 ~]# groupadd -g 505 tst1

[root@web01 ~]# grep "tst1" /etc/group

tst1:x:505: 《----gid为505

groupdel
作用:删除用户组
语法:groupdel groupname
PS:单纯作为附属组的时候是可以直接删除的,但如果作为用户的主组,就不能随意删除了,需要提前把用户清空
例如:

[root@web01 ~]# id essence

uid=500(essence) gid=500(essence) groups=500(essence) 《——gid代表主组

[root@web01 ~]# groupdel essence

groupdel: cannot remove the primary group of user 'essence' 《——提示不可删除

[root@web01 ~]# cat /etc/group |grep "tst01"

tst01:x:504:essence 《——tst01是essence的附属组

[root@web01 ~]# groupdel tst01 《——可直接删除

[root@web01 ~]# cat /etc/group |sort -t ":" -k 3 -n |tail -3

oracle:x:502:

webapp:x:503:

nfsnobody:x:65534: 《——查询结果显示tst01组被删除

useradd
作用:增加用户
语法:useradd 参数 username
参数:
-u 指定uid
-g 指定gid或组名(但指定的组名必须存在)
-d 指定家目录
-M 不建立家目录,但依然会创建用户的mail目录
-s 自定义shell环境,可控制普通用户不能登录,通过设置“/sbin/nologin”
PS:多个用户可以共享一个主组
PS:uid和gid分配的时候,以该id的最大数字+1

useradd -g参数可指定一个其他用户的主组为新增用户的主组

[root@web01 ~]# id essence

uid=500(essence) gid=500(essence) groups=500(essence)

[root@web01 ~]# useradd -g essence zpw02 《——制定zpw02的主组为essence

[root@web01 ~]# id zpw02

uid=505(zpw02) gid=500(essence) groups=500(essence) 《——zpw02的gid为500

==================================================

useradd 家目录下的隐藏文件可从/etc/skel下拷贝过来

[root@web01 zpw02]# ls -ail /home/zpw02

total 28

17 drwx------ 4 505 500 4096 Nov 23 19:33 . 《——因为zpw02和essence都被删除,

2 drwxr-xr-x. 10 root root 4096 Nov 23 19:33 .. 所以uid和gid没有用户名和组名。

19 -rw-r--r-- 1 505 500 18 Jul 18 2013 .bash_logout

18 -rw-r--r-- 1 505 500 176 Jul 18 2013 .bash_profile

24 -rw-r--r-- 1 505 500 124 Jul 18 2013 .bashrc

20 drwxr-xr-x 2 505 500 4096 Nov 12 2010 .gnome2

21 drwxr-xr-x 4 505 500 4096 Nov 12 21:19 .mozilla

[root@web01 zpw02]# ls -ail /etc/skel

total 28

129852 drwxr-xr-x. 4 root root 4096 Nov 12 21:19 . 《——和用户家目录下隐藏文件相同,所以

129797 drwxr-xr-x. 90 root root 4096 Nov 23 19:39 .. 如果创建用户时用-M属性,之后想增

129885 -rw-r--r--. 1 root root 18 Jul 18 2013 .bash_logout 加家目录,就可以从此目录下拷贝隐藏

129886 -rw-r--r--. 1 root root 176 Jul 18 2013 .bash_profile 文件。

129887 -rw-r--r--. 1 root root 124 Jul 18 2013 .bashrc

130807 drwxr-xr-x. 2 root root 4096 Nov 12 2010 .gnome2

129872 drwxr-xr-x. 4 root root 4096 Nov 12 21:19 .mozilla

userdel
作用:删除用户,无参数时默认不删除家目录
语法:userdel 参数 username
参数:-r 删除用户的家目录和邮件目录(/var/spool/mail/username)
例如:

[root@web01 ~]# userdel -r zpw01 《——同时删除家目录和邮件目录

[root@web01 ~]# ls /home

essence lost+found oracle user3 webapp zpw zpw02

[root@web01 ~]# ls /var/spool/mail

essence lisi oracle root rpc webapp zpw zpw02

[root@web01 ~]# userdel zpw02 《——不加-r属性,家目录和邮件目录还在

[root@web01 ~]# ls /home

essence lost+found oracle user3 webapp zpw zpw02

[root@web01 ~]# ls /var/spool/mail

essence lisi oracle root rpc webapp zpw zpw02

usermod
作用:修改用户uid、gid、家目录、附属组等信息
语法:usermod 参数 参数内容 username
参数
-u 修改用户uid
-s 修改用户shell环境
-d 修改目录家目录
-L 锁定用户密码,使之不能用密码登录
-U 解锁用户密码
-g 指定用户主组gid
-G 指定用户附属组(1个用户可以有多个附属组)
PS:usermod -G "" user 把附属组清空

[root@web01 ~]# usermod -L essence

[root@web01 ~]# cat /etc/shadow|grep "essence"

essence:!$6$lBhElHM$UHKJjTGrCyo2upw1OlIG6F8SE09VYGTLHlBw0/MBVgIu5ZZh1e1koc7tHWDBHk4obu

33CEe/FrSEn4bpnDpdo1:16397:0:99999:7::: 《——在原密码前增加"!"使密码失效

[root@web01 ~]# su - essence

[essence@web01 ~]$ exit 《——root用户可使用su命令无密码登录该用户

logout

[root@web01 ~]# su - zpw

[zpw@web01 ~]$ su - essence

Password:

su: incorrect password 《——普通用户su登录essence时候,提示错误密码

用另外的终端登录essence

essence@192.168.0.80's password:

Access denied 《——开单独终端登录时提示拒绝登录

chfn finger

passwd
作用:修改用户密码
语法:passwd 用户名
创建密码的规则:
长度大于10;含大小写字母数字以及特殊字符 ;不规则性;不要带有自己名字、公司名字、自己电话、自己生日等。
扩展内容:mkpasswd 生成密码的工具,安装 expect包

su
作用:切换effective用户
语法:su 用户名(改变$HOME,不改变$PATH)
语法: su - 用户名 (改变$HOME和$PATH)
扩展资料:http://www.aminglinux.com/bbs/thread-6912-1-1.html

sudo
作用:临时获得root权限(su到root需要输入root的密码不安全,所以sudo是一个好选择)
修改配置文件命令:visudo
安装方法: yum install -y sudo
语法:su 正常命令输入
配置文件:/etc/sudoers

格式:

user

host=(as_user)

commands

内容:

aming

ALL=(root)

/bin/ls

意义是,让aming这个普通用户,拥有root的权限,针对ls这个命令。
PS:su - -c "touch /tmp/123.txt"user 相当于用user去创建这个123文件
PS:/etc/ssh/sshd_config 禁止root远程登录

PS:先禁止root远程登录,用普通用户登录后,在用”sudo su -“登录root

扩展资料:
Keepass,管理密码软件
Keepass官网地址: http://www.keepass.info

第六节 etc/passwd 、etc/shadow 、 useradd 、 groupadd的更多相关文章

  1. 【转载】/etc/passwd & /etc/shadow 详解

    转载自:http://blog.csdn.net/snlying/article/details/6130468 1,passwd文件passwd文件存放在/etc目录下.这个文件存放着所有用户帐号的 ...

  2. ref:linux用户和组管理,/etc/passwd,/etc/shadow和/etc/group 文件内容解释

    ref:https://www.cnblogs.com/xuha0/p/5519232.html 与用户相关的系统配置文件主要有/etc/passwd 和/etc/shadow,其中/etc/shad ...

  3. centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,curl,ping ,telnet,traceroute ,dig ,nc,nmap,host,nethogs 第十六节课

    centos linux系统日常管理3  服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,cur ...

  4. 基于Extjs的web表单设计器 第六节——界面框架设计

    基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extj ...

  5. 第一百二十六节,JavaScript,XPath操作xml节点

    第一百二十六节,JavaScript,XPath操作xml节点 学习要点: 1.IE中的XPath 2.W3C中的XPath 3.XPath跨浏览器兼容 XPath是一种节点查找手段,对比之前使用标准 ...

  6. VUE2.0实现购物车和地址选配功能学习第六节

    第六节 地址列表过滤和展开所有的地址 html:<li v-for="(item,index) in filterAddress">js: new Vue({ el:' ...

  7. delphi 线程教学第六节:TList与泛型

    第六节: TList 与泛型   TList 是一个重要的容器,用途广泛,配合泛型,更是如虎添翼. 我们先来改进一下带泛型的 TList 基类,以便以后使用. 本例源码下载(delphi XE8版本) ...

  8. 第十六节、基于ORB的特征检测和特征匹配

    之前我们已经介绍了SIFT算法,以及SURF算法,但是由于计算速度较慢的原因.人们提出了使用ORB来替代SIFT和SURF.与前两者相比,ORB有更快的速度.ORB在2011年才首次发布.在前面小节中 ...

  9. 第四百一十六节,Tensorflow简介与安装

    第四百一十六节,Tensorflow简介与安装 TensorFlow是什么 Tensorflow是一个Google开发的第二代机器学习系统,克服了第一代系统DistBelief仅能开发神经网络算法.难 ...

随机推荐

  1. CentOS6.5 下Nginx 的安装与配置

    昨天买了个服务器最近在配置一些基础环境,想在访问www.wzpbk.com:8080  不想要后面的:8080就能直接访问到,听说了Nginx就研究下给服务器装上传说中大名鼎鼎 Nginx 他能反向代 ...

  2. HDU 3549 Flow Problem 网络流(最大流) FF EK

    Flow Problem Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Tot ...

  3. yii2数据条件查询-where专题

    条件查询 $customers = Customer::find()->where($cond)->all(); $cond就是我们所谓的条件,条件的写法也根据查询数据的不同存在差异,那么 ...

  4. centos7 忘记mysql root密码办法

    1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和 ...

  5. 阿里Java开发手册1.3.0 文字版

    版本: 1.3.0 update: 2017.9.25 一.编程规约 (一) 命名风格 1. [强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例:_name _na ...

  6. NOIP2017 小凯的疑惑

    题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中,最贵的 ...

  7. ofBiz-groovy-freemarker

    ofBiz-groovy-freemarker根据浏览器的地址不同进入不同的页面 第一步:(2选一)创建groovy文件,或者java文件.在文件中定义变量 要放在 request.setAttrib ...

  8. 深入浅出了解frame和bounds

    frame frame的官方解释如下: The frame rectangle, which describes the view's location and size in its supervi ...

  9. object-fit?

    知道有这个属性存在,是一个很偶然的机会.有一天,设计部的一个小伙伴给了我一个网址,说很有个性,让我看一下,当发现一个很有意思的效果时,作为一个前端小兵的我当然是第一时间开始审查元素,然后看到了这个从没 ...

  10. 微信小程序去除button按钮的边框

    小程序开发记录 小程序开发中, 有时候我们希望button不要有边框, 需要使用button::after来实现, 具体如下: .operations button::after{border:0 n ...