1. by zjmyster
  2.  
  3. version 1.2
  4.  
  5. Linux账号管理和ACL权限设置:
  6.  
  7. 主要相关配置文件:/etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/skel
  8.  
  9. /etc/passwd vbird3:x::::/home/vbird3:/bin/bash
  10.  
  11. 用户名:密码位:UID:GID:描述:主目录:shell
  12.  
  13. /etc/shadow vbird3:$$.X7LGQAK$rUz3VtusMwDvPm/zKT7iG1:::::::
  14.  
  15. 用户名:密码加密形式:上次更改密码时间:多少天后能修改密码:密码需要修改时间:警告时间:密码失效时间(指在35字段过期后的宽限时间):账号失效时间:保留注释
  16.  
  17. /etc/group testgroup:x::vbird1,vbird2
  18.  
  19. 用户组:密码位:GID:组成员
  20.  
  21. /etc/gshadow testgroup:!:vbird1:vbird1,vbird2
  22.  
  23. 用户组:密码位:组管理员:组成员
  24.  
  25. /etc/skel 用户信息
  26.  
  27. 当然值得一提的是,如果其他公司和你们公司合作开发项目,都要用到linux客服端,当然作为本公司得给其他公司成员一些登陆账号,当然这些账号一般是有期限的,而且密码得根据别人自己来设置的,所以得给一个简单的初始密码,然后强制第一次登陆修改密码。其实设置很简单,只要在/etc/shadow下把新用户的第3或第5个字段改为0即可解决强制修改密码的问题。或者直接命令passwd -l 用户使密码失效,然后-u 是使密码有效。
  28.  
  29. 如果作为管理员的你要停掉一些用户登陆,则可以在/etc/shadow下把用户的第8个字段改为0,如果你想给他30天的时间,即把第8个字段在第3个字段的基础上加30天。
  30.  
  31. 有效用户组和初始用户组:
  32.  
  33. A:有效用户组则是创建文件时,文件所属的用户组,也就是此时真正有效的用户组。
  34.  
  35. B:初始用户组就是/etc/passwd文件下的GID所代表的组。
  36.  
  37. 主要管理用户命令:useradd,usermod,passwd,userdel,groupadd,gpasswd,groupdel
  38.  
  39. useradd g testgroup vbird4 新创vbird4用户并添加到testgroup用户组
  40.  
  41. usermod c testgroup vbird4 给用户vbird4添加注释
  42.  
  43. passwd vbird4 给用户vbird4修改密码
  44.  
  45. echo abc123abc | passwd stdin vbird4 新建密码
  46.  
  47. userdel r vbird4 删除用户vbird4,同时也删除了目录/home/vbird4
  48.  
  49. groupadd testgroup2 新建用户组testgroup2
  50.  
  51. groupdel testgroup2 删除用户组testgroup2
  52.  
  53. gpasswd testgroup2 新建用户组管理员密码
  54.  
  55. gpasswd a vbird3 testgroup2 把用户vbird3添加到用户组testgroup2
  56.  
  57. gpasswd A vbird3 testgroup2 把用户vbird3设置成用户组testgroup2的管理员
  58.  
  59. gpasswd d vbird3 testgroup2 把用户vbird3从用户组testgroup2删除
  60.  
  61. A:修改/etc/passwd
  62.  
  63. 添加一条数据 vbird5::::wodexinyonghu5:/home/vbird5:/bin/bash
  64.  
  65. B:修改/etc/shadow(当然也可以直接用 命令pwconv同步密码)
  66.  
  67. 添加一个数据 vbird2::::::::
  68.  
  69. C:新建用户目录(主文件夹)
  70.  
  71. mkdir /home/vbird5
  72.  
  73. D:把用户信息cp到用户目录下
  74.  
  75. cp a /etc/skel /home/vbird5
  76.  
  77. E:更改用户主文件夹属性
  78.  
  79. chown -R 用户:用户组 用户主文件夹
  80.  
  81. 批量添加用户
  82.  
  83. #!/bin/bash
  84.  
  85. #add users
  86.  
  87. userlist=$(cat users)
  88.  
  89. for username in $userlist
  90.  
  91. do
  92.  
  93. useradd $username #新建用户
  94.  
  95. echo abc123abc | passwd stdin $username #初始密码
  96.  
  97. chage d $username #设置强制登陆修改密码
  98.  
  99. done
  100.  
  101. ACL的使用:(比如在testgroup组里有3个用户,vbird1vbird2vbird3,但是我想给这三个组成员不用的权限,这个时候得用灵活的ACL权限设置)
  102.  
  103. 先查看ACL和启动acl
  104. mount
  105.  
  106. mount o remount,acl /
  107.  
  108. .设置ACL setfacl m u:vbird1:rx zz
  109.  
  110. 设置子目录默认acl权限 setfacl m d:u:vbird1:r zz (必须在设置了ACL,设置子目录默认ACL才真正起作用)
  111.  
  112. .查看ACL getfacl zz
  113.  
  114. su以及sudo的用法:
  115.  
  116. 其实既然有了多用户的说法了,那么su切换用户就是必然的了,那么在普通用户模式下如果要使用到root才能使用的命令,不会每次都要切换到root模式,这样麻烦,而且重要的是root的密码也太没价值了吧。。所以考虑到这些,我们的sudo就出来了,它可以给普通用户用root的身份去执行命令或者使用root批准的一些命令。这样不必知道root的密码。
  117.  
  118. 要达到上述的说法就要修改/etc/sudoers,具体其他细节这里就不扩充了。。

Linux账号管理和ACL的更多相关文章

  1. 别人的Linux私房菜(14)Linux账号管理和ACL权限设置

    用户标识符UID.GID 用户的账号信息,主要是指UID对应.组和GID对应 检查系统中是否存在用户bin:id bin 登录shell验证账号密码的步骤:找到/etc/passwd核对是否存在账号, ...

  2. linux 账号管理与ACL权限设定

    此文涉及命令:useradd.usermod.userdel.passwd.chage.setfacl.getfacl.su.sudo.fingr.chfn.chsh.id.groupadd.grou ...

  3. Linux 账号管理与 ACL 权限配置

    要登陆 Linux 系统一定要有账号与口令才行,否则怎么登陆,您说是吧?不过, 不同的使用者应该要拥有不同的权限才行吧?我们还可以透过 user/group 的特殊权限配置, 来规范出不同的群组开发项 ...

  4. 第十四章、Linux 账号管理与 ACL 权限配置

    1. Linux 的账号与群组 1.1 使用者标识符: UID 与 GID 1.2 使用者账号:/etc/passwd 文件结构, /etc/shadow 文件结构 1.3 关于群组: /etc/gr ...

  5. 第14章 Linux账号管理与ACL权限设置

    Linux的账号与用户组 用户标识符:UID与GID 每一个文件都有一个所有者ID和用户组ID,当我们需要查看文件属性时,系统会根据/etc/passwd和/etc/group的内容,找到对应UID和 ...

  6. Linux 账号管理及ACL权限设置,PAM模块简介

    有效群组与初始群组: groups:有效与支持群组的观察 newgrp:有效群组的切换,后面接群组名称 在passwd文件中记录的GID就是默认的GID,就是初始群组 /etc/passwd文件结构 ...

  7. 鸟哥私房菜基础篇:Linux 账号管理与 ACL 权限配置习题

    猫宁!!! 参考:http://cn.linux.vbird.org/linux_basic/0410accountmanager.php 1-root 的 UID 与 GID 是多少?而基于这个理由 ...

  8. Linux账号管理与ACL权限设置

    1:UID和GID 用户ID:在/etc/passwd中 群组ID:在/etc/group中 2:有效群组与初始群组 初始群组:/etc/passwd文件里面的GID 有效群组: groups #查看 ...

  9. Linux系列教程(十六)——Linux权限管理之ACL权限

    通过前面的两篇博客我们介绍了Linux系统的用户管理,Linux用户和用户组管理之相关配置文件 讲解了用户管理的相关配置文件,包括用户信息文件/etc/passwd,用户密码文件/etc/shadow ...

随机推荐

  1. 基于CommonKADS方法论实现知识库系统

    说明:本文是Knowledge-based systems with thecommonKADS method文章的翻译. 一.知识库系统的背景 1. 什么是知识库系统(KBS) 知识库系统是人工智能 ...

  2. ambari-server启动出现ERROR main] DBAccessorImpl:106 - Error while creating database accessor java.lang.ClassNotFoundException:com.mysql.jdbc.Driver问题解决办法(图文详解)

    不多说,直接上干货! 问题详情 ambari-server启动时,报如下的错误 问题分析 注:启动ambari访问前,请确保mysql驱动已经放置在/usr/share/Java内且名字是mysql- ...

  3. python 正则表达式应用——缩写词扩充

    看具体示例 import re def expand_abbr(sen, abbr): lenabbr = len(abbr) ma = '' for i in range(0, lenabbr): ...

  4. DBUtils工具类的使用

    DBUtils工具类1.DBUtils工具类,由apache组织提供的工具类,对JDBC做了一些简单封装. 做了查询的封装,把查询的结果封装到List集合 Map集合 JavaBean对象中 做了增删 ...

  5. [Visual studio code 常见问题解决] ——中文乱码、

    中文乱码问题解决 描述:刚开始安装VScode要打开含中文的文件,都会出现乱码,这时只要点击右下方的“UTF-8”改成“GB2312”即可.但每次都改是很麻烦的,所以要使得VScode默认支持GB23 ...

  6. Map集合遍历的4种方法

    完全复制https://www.cnblogs.com/blest-future/p/4628871.html import java.util.HashMap; import java.util.I ...

  7. 使用Myeclipse进行简单webservice开发的示例

    (转) http://blog.csdn.net/changhenshui1990/article/details/70142371 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...

  8. Hibernate生成数据库表

    首先创建实体类 import java.util.Date; public class ProductionEntity { public Integer getId() { return id; } ...

  9. java 并发 (四) ---- 并发容器

    Hashmap 和 Concurrenthashmap Hashmap 不适合并发,应该使用ConcurrentHashMap . 这是很多人都知道的,但是为什么呢? 可以先看一下这两篇文章. JDK ...

  10. 【转】.NET 4.5 使用async和await关键字调用异步方法

    async和await关键字是.NET 4.5新增加的异步编程方式,通过使用这两个关键字可以轻松便捷的编写异步方法.使用async关键字声明异步方法,使用await关键字等待和获取异步方法返回的结果. ...