====账号管理配置文件====
vim /etc/passwd,显示系统内所有账号内容,每一行代表一个账号,比如:
yidao:x:1000:1000:fedora17:/home/yidao:/bin/bash
解释下这7个字段的含义:
1:账号名称 | 2:密码 | 3:UID | 4:GID | 5:用户信息说明 | 6:主文件夹 | 7:shell
vim /etc/shadow,显示密码信息,每一行代表一个账号密码信息,比如:
yidao:$1$Bylot.Y3$kMjNj1.KyW9lS3TUuAIPd/:15614:0:99999:7:::
解释下这9个字段含义(以:隔开)
1:账号名称 | 2:密码 | 3:最近更改密码日期 , 与1970年1月1日比较的天数 | 4:密码不可被更改的天数(与第三个字段比较) | 5:密码需重新更新的天数(与第三个字段比较) | 6:密码需重新更新前的警告天数(与第五个字段比较) | 7:密码过期后的账号宽限天数(密码失效日)(与第五个字段比较) | 8:账号失效日期,也是与1970年1月1日比较的天数 | 9:保留
/etc/group 文件:
yidao:x:1000:
用户组名称:用户组密码(已经移到/etc/gshadow中去,一般为x):GID:此用户支持的账号名称(只写改组不是其初始用户组的账号)
groups命令可以显示该用户的属于所有的用户组,第一个为有效用户组,新建文件的时候有用
newgrp命令切换有效用户组,新开子shell,用exit返回。
/etc/gshadow 文件:
root:::
用户组名:密码列(开头为!代表无合法密码,所有无用户组管理员):用户组管理员账号:用户组下的账号
====新增用户useradd====
# useradd [-u UID] [-g GID] [-G 次要用户组] [-mM] [-c 说明] [-d 主文件夹] [-s shell] [-r] 用户账号
-M:强制不创建用户主文件夹(系统账号默认值)
-m:强制创建用户主文件夹(一般账号默认值)
-r:创建一个系统账号
使用useradd创建账号至少会参考:
/etc/default/useradd
/etc/login.defs
/etc/skel/*这些文件。
详细的密码显示与修改命令chage:
# chage [-ldEImMW] 帐号名
-l:列出详细密码信息
-d:后面接日期,修改shadow第三个字段(最新修改日期),格式YYYY-MM-DD
-E:后面接日期,修改shadow第八字段(账号失效日),格式YYYY-MM-DD
-I:后面接天数,修改shadow第七字段(密码失效日期)
-m:后面接天数,修改shadow第四字段(密码最短保留天数)
-M:后面接天数,修改shadow第五字段(密码最长保留天数)
-W:后面接天数,修改shadow第六字段(密码过期前几天开始警告)
====账号相关数据进行微调usermod====
# usermod [-cdegGlsuLU] username
-c:后面接账号说明,即/etc/passwd第五列说明
-d:账号主文件夹,/etc/passwd第六列
-e:后面接日期,YYYY-MM-DD格式,/etc/shadow第八字段(账号失效日期)
-f:后面接天数,shadow第七字段(密码失效日期)
-g:后接初始用户组,/etc/passwd第四字段,即GID字段
-G:后接次要用户组,修改这个用户能支持的用户组,修改的是/etc/group(赋值的意思,你懂的)
-a:与-G合用增加次要用户组的支持而非设置(append的意思,你懂的)
-l:后接账号名称,即修改账号名称,/etc/passwd第一列
-s:后接shell实际文件,例如/bin/bash、/bin/csh等
-u:后接UID,/etc/passwd第三列
-L:暂时将用户的密码冻结,让他无法登陆,其实仅仅改了/etc/shadow的密码列
-U:将/etc/shadow密码列的!去掉,解锁密码
几个小命令:
# finger [-s] username:类似指纹功能,将用户相关属性列出来
# chfn [-foph] username:修改finger属性,也就是个人信息
# chsh [-ls] :修改shell
# id username:查阅相关的ID信息
====用户组管理命令====
# groupadd [-g gid] [-r] 用户组
-g:后接GID
-r:新建系统用户组
# groupmod [-g gid] [-n group_name] 用户组名
-g:修改GID
-n:修改组名
这东东一般没啥用,最好别用。
# groupdel 用户组名
# gpasswd groupname:给个组密码
# gpasswd [-A user1, ...] [-M user3, ...] groupname
-A:将groupname主控器交由后面的用户管理(该用户组的管理员)
-M:将某些账号加入到这个组中
# gpasswd [-rR] groupname
-r:将groupname的密码删掉
-R:让groupname的密码栏失效
下面是组管理员命令:
# gpasswd [-ad] user groupname
-a:add
-d:delete
====主机的具体权限规划ACL(Access Control List)====
先查看是否支持acl
# sudo dumpe2fs -h /dev/sda5 | grep acl
设置acl权限:
# setfacl [-bkRd] [{-m|-x} acl参数] 目标文件名
参数:
-m:设置后续的acl参数给文件使用,不可与-x合用
-x:删除后续的acl参数,不可与-m合用
-b:删除所有的acl参数
-k:删除默认的acl参数,关于所谓的默认参数等等
-R:递归设置acl,亦包括子目录也
-d:设置默认的acl参数!只对目录有效,在该目录下新建数据会引用此默认值
设置用户规则:u:[用户账号列表]:rwx
# touch text.txt
# setfacl -m u:yidao:rx text.txt
# setfacl -m u::rx text.txt ==> 代表对该文件的所有者(user)设置
# getfacl text.txt ==>查看acl设置
里面有个mask:表示用户或者用户组的权限必须要存在于mask的权限范围内才会生效,即有效权限 effective permission的意思
设置用户组规则:g:[用户组列表]:rx text.txt
# setfacl -m g:yidao:rx text.txt
设置mask的规则: m:[rwx] text.txt
# setfacl -m m:rx text.txt
针对目录的ACL的权限设置能够被子目录所继承的话,设置规范:
d:[u|g]:[用户|用户组]列表:[rwx]
切换到root身份的时候使用:
====用户身份切换====
# su -
# su - -c ‘head -n 3 /etc/shadow’ ==> 执行完root命令后自动返回当前用户
# sudo [-b] [-u 新用户账号] command
-b:后续命令让系统自动执行,不与目前的shell环境产生影响
-u:后面接用户名,没有就代表root
# sudo -u sshd touch /tmp/mysshd
# sudo -u testuser sh -c “mkdir ~testuser/www; cd ~testuser/www; echo ‘fuck you’ > index.html”
visudo 编辑/etc/sudoers文件:
yidao ALL=(ALL) ALL
用户账号 登录者的来源主机号=(可切换的身份) 可执行的命令
%yidao ALL=(ALL) ALL ==>注意%代表对用户组设置
%yidao ALL=(ALL) ALL NOPASSWD: ALL ==>免密码功能
通过别名设置visudo:
# visudo
User_Alias ADMUSERS = myuser1, myuser2
Host_Alias www.springzoo.com, www.google.com.hk
Cmnd_Alias ADMCMD = !/usr/bin/passwd, /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd root
ADMUSERS ALL=(Host_Alias) ADMCMD
sudo搭配su输入自己的密码变成root用户,然后以后就不用输入sudo了
# visudo
User_Alias ADMINS = yidao, test…
ADMINS ALL=(root) /bin/su -
====PAM模块(Pluggable Authentication Modules)====
可以编辑/etc/nologin.txt让shell为/sbin/nologin的用户登录时候显示消息给他看
PAM会调用在目录/etc/pam.d/command文件对每个command进行认证,文件名与程序名一样
====查询用户:====
w/who/last/lastlog 不解释
用户对谈:write,mesg,wall
先用w查看当前用户
# write 用户账号 [用户所在终端接口]
# write yidao [pts/2]
最后按CTRL + D结束输入
# mesg [-n|y] ==> 查看自己的消息,-n禁止别人的弹出消息
# wall ”Hello everybody…” ==> 广播
====用户邮件====
# mail username@localhost -s “邮件标题”
正文结束时,最后一行输入一个.即可
==============================END=============================
本人博客已搬家,新地址为:http://yidao620c.github.io/
相关推荐
企鹅与怪兽:互联时代的合作共享与创新模式
企鹅智酷:互联网+九大传统行业转型报告
《帝企鹅日记》是一部揭示南极洲帝企鹅生存之道的纪录片,影片通过细腻的镜头语言,展现了这个物种在极端环境下的坚韧与智慧。以下是从影片中提炼出的一些关键知识点: 1. 团结协作:帝企鹅面对南极的恶劣环境,...
《帝企鹅日记》是一部揭示南极生态与帝企鹅生存智慧的纪录片,通过观影,我们可以深入了解到这种生活在地球最寒冷之地的生物所展现出的惊人生命力和团队精神。 首先,帝企鹅的生存策略是一个生动的生物学案例。在...
《帝企鹅日记》是一部描绘南极洲帝企鹅生存与繁衍的纪录片,以其深情的叙述和震撼的影像展现了生命在极端环境中的坚韧与伟大。影片揭示了帝企鹅面对严寒、饥饿和天敌挑战时所展现出的无尽耐力和亲情之深。 在南极的...
《帝企鹅日记》是一部揭示生命坚韧与母爱的伟大纪录片,通过讲述南极洲帝企鹅的生活,展现了生物在极端环境下生存的智慧与勇气。影片以其真实、细腻的镜头语言,让我们深入了解了帝企鹅的生存之道,同时也引发了对...
企鹅智酷:2019-2020中国互联网趋势报告.pdf
《帝企鹅日记2—召唤》是一部记录片,展现了帝企鹅从繁衍到成长的艰辛历程,同时也是对生命坚韧不拔精神的颂扬。影片通过讲述帝企鹅的生活习性,传递了许多关于生存、亲情和勇气的知识点。 首先,影片揭示了帝企鹅...
腾讯企鹅智库出品的《2019-2020中国互联网趋势报告》最新版已经出炉
企鹅智库:2018新媒体趋势报告(图片版).pdf
《帝企鹅日记》是一部揭示南极生态与生命坚韧的纪录片,通过观察帝企鹅的生活,展现了大自然中一种非凡的生命力。观影后的感受深深触动了观众的心灵,引发了对生命、团结和坚韧精神的深刻思考。 首先,影片让我们...
### PS练习猫和企鹅知识点详解 #### 一、项目概述 本教程旨在通过实际案例——猫和企鹅的图片合成,详细介绍Adobe Photoshop(简称PS)的基本操作技巧及高级合成技术。通过本教程的学习,读者将能够掌握如何利用PS...
环境因素的影响:企鹅的物理特征是否与它们所在的地理位置(不同岛屿)有关?数据可视化:如何通过散点图、直方图或箱线图等方式有效地可视化这些数据?机器学习应用:可以使用哪些机器学习模型(如逻辑回归、决策树...
企鹅CMS v4.2版本是一款专为影视内容管理设计的系统,其核心特性在于它的全自动采集功能,这使得用户可以高效地管理和更新网站上的影视资源。在这个版本中,企鹅CMS显然对用户体验和内容获取流程进行了优化,旨在...
企鹅 :penguin: Penguin是一款多功能Discord机器人,在编写时就考虑了Discord社区。 目前,该机器人尚处于早期阶段,并且仍在开发中,尚无法使用。 任何人都可以为这个项目做贡献。 如果您愿意,只需发送请求请求,...
《戳企鹅游戏源码解析》 在游戏开发领域,学习和理解源码是提升技能的重要途径。"戳企鹅游戏源码"就是一个适合初学者和有经验开发者探索的项目,它采用Cocos2d-x游戏引擎,并用lua语言进行编程。这篇文章将深入探讨...
Linux小企鹅输入法,全称为Fcitx输入框架,是一款专门为Linux操作系统设计的开源输入法引擎。在Linux世界中,Fcitx以其轻量级、高效和高度可定制性而受到用户喜爱。版本4.0.0是该输入法框架的最新迭代,带来了诸多...
2. 模拟取暖:通过迭代更新,使每个企鹅个体根据其与最优解的距离进行移动,以靠近最优解。 3. 防止过度聚集:为了避免种群过早收敛到局部最优,算法引入了扰动机制,防止所有个体过于接近。 4. 更新策略:个体在...
很抱歉,根据您给出的信息,"7张可爱企鹅桌面"这个主题似乎与IT专业知识不太相符,它更偏向于桌面壁纸或个性化设置的范畴。不过,如果我们要将这个话题关联到IT行业,我们可以从以下几个方面来展开: 1. **数字图像...
"企鹅与Linux.pdf" 从标题"企鹅与Linux.pdf"、描述"企鹅与Linux.pdf"、标签"Linux 操作系统 系统开发 参考文献 专业指导"和部分内容中,我们可以提炼出以下几个重要的知识点: 1. 开源软件发展的重要性:文章中...