linux用戶,組管理
用戶的登陸過程:
用戶要使用linux系統,必須先進行登陸,linux的登陸過程和Windows登陸過程類似,登陸的過程包括以下幾個步驟
1.當linux系統正常引導啟動完成后,系統就可以正常接納用戶登陸,用戶界面會顯示“login:”提示符。如果是圖形界面就會顯示用戶登陸窗口
2.用戶輸入用戶后系統會檢查/etc/passwd是否有該用戶,存在則進入下一步,不存在則退出
3.首先讀取/etc/passwd中的用戶id和組id,同時該用戶的其他信息也會一并讀取出來
4.用戶輸入密碼以后,系統通過檢查/etc/shadow來判斷用戶密碼是否正確,如果密碼校驗正確則顯示用戶的默認shell完成登陸。用戶shell的類型由?/etc/passwd文件來決定。
用戶的類型
linux系統的用戶類型分為三類
系統用戶:正常運行系統所使用的賬戶,比如某一個進程 系統用戶是不能登陸的
管理員用戶:root用戶,擁有系統的一切權限
普通用戶:普通的使用者,能使用linux的大部分資源
linux會給每個用戶一個二進制數字來標識用戶:0-65535
各個不同用戶類型使用不同段的id來標識:管理員的為0 普通用戶為1-65635,其中系統用戶為1-499這是centos7以下的版本,centos為1-999;普通用戶為500-60000 centos7則為1000-60000
linux系統用戶的認證方式是事先存儲然后登陸時進行比對信息是否一致.這里會分別對用戶的id和密碼在/etc/passwd和/etc/shadow文件
/etc/passwd
該文件為純文本格式,只有root用戶能讀取 每個字符段用:號隔開。一共分七個字段
root:x:0:0:root:/root:/bin/bash
分別對應的是:用戶名:密碼:UID:GID: 相關注釋:家目錄:使用的shell
(如果用戶第一行為*的話表示該用戶為禁用)
/etc/shadow
該文件也為文本格式,也只有root用戶能讀取到;和/etc/passwd文件相似分為九個字段
root:$6$9zNMhBI08X3AD3wE$Urd3TwfeedV0IZI2hlyy54RRikcemVQ1z6lme1w7GQja9tb74DwGIgFwA5EUhQ0LJGDFBCIYK7S90CjQesrVc/::0:99999:7:::
每個字段分別對應的是:用戶名:加密后的密碼:上次修改密碼的時間:密碼最短使用天數:密碼的最長使用天數:密碼警告期:過期期限:保留字段
密碼的使用策略:
1、使用隨機密碼;
2、最短長度不要低于8位;
3、應該使用大寫字母、小寫字母、數字和標點符號四類字符中至少三類;
4、定期更換;
用戶組
用戶組是用戶的容器每個用戶都有一個屬于自己的私有組。
用戶組的分類有三種
1.按權限:管理員組,普通用戶組(包含有登陸組和系統組)
2.按組的類別:用戶的基本組,用戶的附加組(用戶可以屬于一個基本組和多個附加組)
3.類別:私有組(組名和用戶名相同,且之包含一個用戶),公共組(組內包含了多個用戶)
用戶組的文件也有兩種:/etc/group,/etc/gshadow
/etc/group:
保存用戶組的所有信息,格式同上,只有四個字段
root:x:0:
對應的是:用戶組名:用戶組密碼:用戶組標識:組內用戶列表
密碼的加密算法
linux用戶的密碼的加密算法是屬于單向加密,只能加密不能解密,釋以提取數據特征碼的形式進行加密的。密碼常見的算法有MD5,sha,sha224,sha256…..
linux用戶和組的管理命令
用戶管理命令
useradd:創建用戶 sueradd [選項] 登陸名 -u:指定UID -g:指定GID -G:指明用戶的附加組,多個附加組之間用逗號隔開 -c:指明注釋信息 -d:以指定路徑為用戶的家目錄,通過復制/etc/skel此目錄并重命名實現,指定的家目錄如果實現存在則不會為用戶復制配置環境文件 -s:為用戶指定默認shell,可用的shell列表存儲在/etc/shells文件中 -r:創建系統用戶 -D:顯示創建用戶的默認配置 sueradd -D 選項:修改默認選項的值 注意:創建用戶是的諸多默認設定配置文件為/etc/login.defs usermod:修改用戶屬性 usermod [選項] 登錄名 -u:修改用戶id為此處指定的新id -g:修改用戶所屬的基本朱 -G [GROUP1] [GROUP2]:修改用戶所屬的附加組,原來的附加組會被覆蓋 -a:與-G一同使用,表示為用戶追加附加組 -c:修改注釋信息 -d:自該用戶的家目錄,用戶原有文件不會被轉移覆蓋 -m:只能與-d一同使用,用于將原來的家目錄移動為新的家目錄 -l:修改用戶名 -s:修改用戶默認shell -L:鎖定用戶密碼,即在用戶原來的密碼字符串之前添加一個! -U:鎖定用戶的密碼 suerdel:刪除用戶 userdel [選項] 登錄名 -r:刪除用戶時一并刪除其家目錄 passwd:修改密碼 passwd:修改用戶自己的密碼 passwd USERNAME:修改指定用戶的密碼,只有root有此權限 -l,-u:鎖定和解鎖用戶 -a:清楚用戶密碼串 -e DAYS:過期期限 -i DAYS:非活動期限 -n DAYS:密碼的最短使用期限 -x DAYS:密碼的最長使用期限 -w DAYS:警告期限 --stdin:echo “PASSWORD” | passwd --stdin USERNAME gpasswd:修改組密碼 gpasswd [選項] GROUP -a USERNAME:向組中添加用戶 -d USERNAME:從組中移除用戶 newgrp:臨時切換到指定的組為基本組 newgrp [-] [group] -:會模用戶重新登錄以實現初始化其工作環境 chage:更改用戶密碼過期信息 cheage -[d E W m M] 登錄名 id:顯示用戶的組和有效id id [OPTION] ....[USER] -u:僅顯示有效的UID -g:僅顯示有效的GID -G:僅顯示用戶所屬的所有組ID -n:顯示名字而非ID su:用戶切換 登錄式切換:會通過讀取目標用戶的配置文件來重新初始化 su - USERNAME su -l USERNAME 非登錄式切換:不會讀取用戶配置信息進行初始化 注:管理員可屋密碼切換至任何用戶 -c ‘COMAND’:以指定用戶的身份運行此處指定的命令
練習1:創建用戶gentoo,UID為4001,基本組為gentoo,附加組為distro(GID為5000)和peguin(GID為5001);
groupadd -g 5000 distro
groupadd -g 5001 peguin
useradd -u 4001 -G distro,peguin
練習2:創建用戶fedora,其注釋信息為"Fedora Core",默認shell為/bin/tcsh;
useradd -c Fdeora -s tash
練習3:修改gentoo用戶的家目錄為/var/tmp/gentoo;要求其原有文件仍能被用戶訪問;
usermod -d /var/tmp/gentoo gentoo
練習4:為gentoo新增附加組netadmin;
usermod -Ga netadmin gentoo
原創文章,作者:N24-執念,如若轉載,請注明出處:http://www.www58058.com/64216