Centos 用户管理

浏览次数:1630 关键词 ( 用户  Centos  )

###############################################################
 useradd  用户管理
###############################################################
 
 1.useradd -D
   显示默认创建用户选项
 
 2.创建用户默认选项的模板文件位置
   /etc/login.defs
   /etc/defalt/useradd  
   
   vi /etc/default/useradd 
   GROUP=100
   HOME=/home
   INACTIVE=-1
   EXPIRE=
   SHELL=/bin/bash
   SKEL=/etc/skel
   GROUPS=video,dialout
   CREATE_MAIL_SPOOL=no
 
 3. user 命令详解
   useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name


  主要参数


  -c:加上备注文字,备注文字保存在passwd的备注栏中。

  -d:指定用户登入时的启始目录。

  -D:变更预设值。

  -e:指定账号的有效期限,缺省表示永久有效。

  -f:指定在密码过期后多少天即关闭该账号。

  -g:指定用户所属的群组。

  -G:指定用户所属的附加群组,多个组使用逗号分隔,不能有空格

  -m:自动建立用户的登入目录。

  -M:不要自动建立用户的登入目录。

  -n:取消建立以用户名称为名的群组。

  -r:建立系统账号。

  -s:指定用户登入后所使用的shell。

  -u:指定用户ID号。
    
    -p: 指定用户密码 此处密码必须是加密后的。


示例:
     1> 建一个用户,使用login.defs默认选项
        userdel tata
        
     2> 建一个用户,自动建立用户登录目录,-m一般和-d选项一起使用  /home/username
        useradd -m tata
     3> 建一个用户,指定自动登录目录
        useradd -d /home/tata -m tata

     4> 建一个用户,指定自动登录目录,指定附属组
        userdel -G users -d /home/tata -m tata  
        
     5> 建一个用户,指定自动登录目录,指定附属组,指定密码
        useradd -p  `openssl passwd -1 -salt "tata"  tata` -G users -d /home/tata -m tata 


     6> 建一个用户,自动建立用户登录目录, 指定私有组, 附属组
        useradd -m tata -g tata -G users


useradd -p `openssl passwd -1 -salt "product_pub" product_pub` -G users -m -d  /home/product_pub product_pub        
注:关于openssl passwd 参加下方高级命题


初始话密码也可以使用如下语句:
[root@www ~]# useradd -G users smb1
[root@www ~]# useradd -G users smb2
[root@www ~]# useradd -G users smb3
[root@www ~]# echo 1234 | passwd --stdin smb1
[root@www ~]# echo 1234 | passwd --stdin smb2
[root@www ~]# echo 1234 | passwd --stdin smb3


###############################################################
 usermod  修改用户信息,就是修改/etc/passwd文件选项对应内容
###############################################################
语  法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]


补充说明:usermod可用来修改用户帐号的各项设定。


参  数:
 -c<备注>  修改用户帐号的备注文字。
 -d登入目录>  修改用户登入时的目录。
 -e<有效期限>  修改帐号的有效期限。
 -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
 -g<群组>  修改用户所属的群组。
 -G<群组>  修改用户所属的附加群组。
 -l<帐号名称>  修改用户帐号名称  usermod -l new-user-name  old-user-name
 -L  锁定用户密码,使密码无效。
 -s<shell>  修改用户登入后所使用的shell。
 -u<uid>  修改用户ID。
 -U  解除密码锁定。linuxso.com linux安全网


usermod 不 允 许 你 改 变 正 在线 上 的 使 用 者 帐 号 名 称 。 当 usermod 用 来 改 变 user ID, 必 须 确 认 这 名 user 没 在 电 脑 上 执 行 任 何 程 序。 你 需 手 动 更 改 使 用 者 的 crontab 档 。 也 需 手 动 更 改 使 用 者 的 at 工 作 档 。 采 用 NIS server 须 在 server 上 更 动 相 关 的 NIS 设 定 。  


应用举例:
1、将 newuser2 添加到组 staff 中
# usermod -G staff newuser2
2、修改 newuser 的用户名为 newuser1
# usermod -l newuser1 newuser
3、锁定账号 newuser1
# usermod -L newuser1
4、解除对 newuser1 的锁定
# usermod -U newuser1


###############################################################
userdel username 删除用户
###############################################################
userdel tata
userdel murray 注:删除用户murray,但不删除其家目录及文件;
userdel -r murray 注:删除用户murray,其家目录及文件一并删除;
使用可选的 -r开关可以将用户的主目录及所有相关信息全部删除。如果想要保留用户主目录,
那么不要使用 -r开关。这个开关不会自动删除系统中所有属于这个用户的文件,只是删除他的主目录。


###############################################################
 passwd 密码管理
###############################################################
passwd [选项] 账户名称    具体产看man passwd 说明文档
  
  3.主要参数
  
  -l:锁定已经命名的账户名称,只有具备超级用户权限的使用者方可使用。
  
  -u:解开账户锁定状态,只有具备超级用户权限的使用者方可使用。
  
  -x, --maximum=DAYS:密码使用最大时间(天),只有具备超级用户权限的使用者方可使用。
  
  -n, --minimum=DAYS:密码使用最小时间(天),只有具备超级用户权限的使用者方可使用。
  
  -d:删除使用者的密码, 只有具备超级用户权限的使用者方可使用。
  
  -S:检查指定使用者的密码认证种类, 只有具备超级用户权限的使用者方可使用。


###############################################################
高级命题   openssl passwd  
###############################################################
openssl passwd [-crypt] [-1] [-apr1] [-salt string] [-in file] [-stdin] 
 [-quiet] [-table] {password} 
 
 本指令支持三种哈希算法: 
    UNIX系统的标准哈希算法(crypt) 
    MD5-based BSD(1) 
    
    OPTIONS 
    -crypt UNIX系统的标准哈希算法
    -1     MD5-based BSD      注意-1是数字一,不是字母L
    -apr1  Apache $apr1$ 哈希
    这三个option中任意选择一个作为哈希算法,缺省的是-crypt 
    -salt string 
    输入作为salt的字符串, 哈希离散时加入的作料,默认是当前时间
    -in file 
    要哈希的文件名称 
    -stdin 
    从标准输入读入密码 
    -quiet 
    当从标准输入读密码,输入的密码太长的时候,程序将自动解短它。这个option的 
    set将不在情况下发出警告。 
    -table 
    在输出列的时候,先输出明文的密码,然后输出一个TAB,再输出哈希值. 
    
    示例:
#缺省是 crypt 算法 13字节
root@OP_39_184_sles10:/home# openssl passwd  tata
xi39WUwNFP1mA
root@OP_39_184_sles10:/home# openssl passwd  tata
m4DBd/Ys2lbrk
root@OP_39_184_sles10:/home# openssl passwd -crypt tata
NRD7.BwG98Ulk
root@OP_39_184_sles10:/home# openssl passwd -crypt tata
7jubybNYKQ/TQ
root@OP_39_184_sles10:/home# openssl passwd -crypt tata
gRZWFaTNrMIPU


#-1 MD5 34字节
root@OP_39_184_sles10:/home# openssl passwd -1 tata
$1$2QDCG7.k$Q6H/aSd8zNzCpX9iAJF2K1
root@OP_39_184_sles10:/home# openssl passwd -1 tata
$1$36irvjIG$pzYRmRbeno63nhAfJ/Gyf/
root@OP_39_184_sles10:/home# openssl passwd -1 tata
$1$ypfFFaSg$cz8MXJewT00cEsPpFqIUs/


#-apr1  37字节
root@OP_39_184_sles10:/home# openssl passwd -apr1 tata
$apr1$xqrnyuZ9$rcCyBnf33RbV2M0jlT7F80
root@OP_39_184_sles10:/home# openssl passwd -apr1 tata
$apr1$tJ50XhCQ$e201pOwVDACoLcU3BmzQt/




=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
用户管理:


useradd :添加用户

adduser :添加用户

passwd  :为用户设置密码

usermod :修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;

pwcov   :同步用户从/etc/passwd 到/etc/shadow

pwck    :pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;

pwunconv:是pwcov的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;

finger  :查看用户注释信息的工具

id      :查看用户的UID、GID及所归属的用户组

chfn    :更改用户信息工具

su      :用户切换工具

sudo    :sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo不需要root密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;


visudo  :visodo是编辑/etc/sudoers的命令;也可以不用这个命令,直接用vi来编辑/etc/sudoers 的效果是一样的。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

uid 特性

UID:从0到65535。

0代表系统管理员,

1~499保留给系统使用,

1~99保留给系统默认账号,

100~499保留给服务

500~65535是给一般用户。