今日內(nèi)容
一已卷、.如何為用戶設(shè)定密碼,又如何修改密碼? 用戶的創(chuàng)建流程? [擴展了解]
二蹂午、用戶組如何管理盈魁??
?三翔怎、普通用戶無權(quán)限怎么辦? 切換身份 or 提權(quán)??
????????su 切換用戶?
????????sudo 提權(quán)?
? ? ?四、自行注冊一個域名. xx.to
1.為新用戶添加密碼{只能是root}{密碼盡可能的復(fù)雜}[0-9][a-Z][!@#$%^&*]
#passwd --stdin 非交互式設(shè)定密碼
#批量創(chuàng)建用戶,并設(shè)定固定密碼
2.為用戶變更密碼
????1.為自己修改密碼 (ok) 直接使用passwd 注意密碼需要復(fù)雜一 點,并達到8位
????2.為別人修改密碼 (root) passwd username
3.密碼怎么才算復(fù)雜
這里的random值的指的是隨機數(shù)生成器
#2.mkpasswd生成隨機字符串, -l設(shè)定密碼長度,-d數(shù)子,-c小寫字母,C大寫字母,-s特殊字符
lastpass 在線支持windows Macos IPHONE? 瀏覽器插件 Android
總結(jié):
1.為新用戶添加密碼 只有root權(quán)限才可以
2.為用戶變更密碼也只有root才可以
3.普通用戶只有能改自己的密碼,無法修改其他人的密碼
4.密碼的修改方式有兩種赤套,交互式與非交互式
4.用戶的創(chuàng)建流程
[root@oldboyedu ~]# grep "^[a-Z]" /etc/login.defs MAIL_DIR /var/spool/mail #創(chuàng)建的郵箱所在的位置
PASS_MAX_DAYS 99999?????????????????????????????????????????????????????#密碼最長使用的天數(shù)
PASS_MIN_DAYS 0? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??#密碼最短時間的天數(shù)
PASS_MIN_LEN 5 ???????????????????????????????????????????????????????????????? #密碼的長度
PASS_WARN_AGE 7? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#密碼到期前7天警告
UID_MIN ? ? ? ? ? ? ? ? ?1000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#uid 從1000開始
UID_MAX ? ? ? ? ? ? ? ? 60000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #uid從6w結(jié)束
SYS_UID_MIN ? ? ? ? ? ? ? 201 ???????????????????????????????????????????????????? #系統(tǒng)用戶的uid 從201 開始
SYS_UID_MAX ? ? ? ? ? ? ? 999???????????????????????????????????????????????????? #系統(tǒng)用戶的uid最大到999?
GID_MIN? ? ? ? ? ? ? 1000? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #系統(tǒng)組的gid最小1000
GID_MAX? ? ? ? ? ? ? ? ? ? ? ? ? ? ??60000??? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #組的gid最大到60000
?SYS_GID_MIN ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#系統(tǒng)用戶的gid最小為
SYS_GID_MAX? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#系統(tǒng)gid最大
CREATE_HOME yes ???????????? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#給用戶創(chuàng)建家目錄,創(chuàng)建 在/home?
UMASK ? ? ? ? ? 077?
USERGROUPS_ENAB yes
?ENCRYPT_METHOD SHA512
[root@oldboyedu ~]# cat /etc/default/useradd?
# useradd defaults file
GROUP=100? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#當(dāng)用戶創(chuàng)建用戶時不指定組,并且/etc/login.defs中 USERGROUPS_ENAB為no時, 用戶 默 ????????????????????????????????????????????????????????????????????????????????????????????認創(chuàng)建給分 配一個gid為100的組.
HOME=/home???????????????????????????????????????????????????????????????????? #用戶默認的家目錄
INACTIVE=-1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #用戶不失效
EXPIRE=? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#過期時間
SHELL=/bin/bash ???????????????????????????????????????????????????????????????? #默認登錄shell
SKEL=/etc/skel ???????????????????????????????????????????????????????????????????? #默認用戶拷貝的環(huán)境變量
CREATE_MAIL_SPOOL=yes???????????????????????????????????????????????? #創(chuàng)建郵箱
5.用戶組的管理
沒有指定組默認會創(chuàng)建一個與用戶同名的組飘痛,簡稱私有組
指定組:-g 指定一個基本組? ?基本組必須先存在
附加組:-G指定(基本組或私有組無法滿足需求時,添加一個附加組繼承該組的權(quán)限)
1.etc/group 配置文件
2.etc/gshadow 配置文件
1.創(chuàng)建組 groupadd [-g GID] groupname
#創(chuàng)建系統(tǒng)組
2.修改組 groupmod
#-g 修改組gid
#-n 修改組名稱
3.刪除組 如果要刪除基本組容握,需要先刪除基本組中的用戶才可以刪除 該組宣脉。
6.用戶提權(quán)
????su 切換用戶 如果切換用戶,需要知道用戶的密碼,不是很安全
?????sudo 提權(quán)( root事先分配好權(quán)限 --> 關(guān)聯(lián)用戶 ) 安全 方便 但是復(fù)雜
基本概念
1.交互式 需要不停的交互?
2.非交互式?
3.登錄式shell 需要用戶名以及密碼開啟bash窗口?
4.非登錄式shell 不需要用戶名和密碼即可開啟bash窗口
su - username屬于登陸式shell會加載全部環(huán)境變量,su username屬于非登陸式shell剔氏,區(qū)別 在于加載的環(huán)境變量不一樣脖旱。
su -username 屬于登錄時shell 會加載全部的環(huán)境變量
su username 屬于非登錄式shell 匯價在部分環(huán)境變量(很有可能就會出現(xiàn)錯誤清空)
經(jīng)過修改配置文件,然后su root 顯示登錄式shell加載五項介蛉,非登錄式之加載三項
su切換有缺點
? ? ? ? 需要知道用戶對應(yīng)的密碼
? ? ? ? 說明不是很安全
sudo提權(quán)?
????????1.預(yù)先分配好權(quán)限?
????????2.在關(guān)聯(lián)對應(yīng)的用戶
????????3.提升的權(quán)限太大,能否有辦法限制僅開啟某個命令的使用權(quán)限? ?其他命令不允許
第一種方式:使用sudo中自帶的別名操作, 將多個用戶定義成一個組
usermod? username -G wheel可以直接將用戶提權(quán)到sudo組
#visudo(有語法保護功能溶褪,一般用這個)
#vim /etc/sudoers
[root@bgx ~]# visudo#
1.使用sudo定義分組,這個系統(tǒng)group沒什么關(guān)系?
User_Alias OPS = oldboy,oldgirl
?User_Alias DEV = alex?
# 2.定義可執(zhí)行的命令組,便于后續(xù)調(diào)用
Cmnd_Alias NETWORKING = /sbin/ifconfig, /bin/ping
Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/yum
Cmnd_Alias SERVICES = /sbin/service,
/usr/bin/systemctl start
Cmnd_Alias STORAGE = /bin/mount, /bin/umount?
Cmnd_Alias DELEGATING = /bin/chown, /bin/chmod,
/bin/chgrp
Cmnd_Alias PROCESSES = /bin/nice, /bin/kill,
/usr/bin/kill, /usr/bin/killall
# 3.使用sudo開始分配權(quán)限
OPS ?ALL=(ALL)
NETWORKING,SOFTWARE,SERVICES,STORAGE,DELEGATING,PROCES SES
DEV ?ALL=(ALL) SOFTWARE,PROCESSES
#4.登陸對應(yīng)的用戶使用 sudo -l 驗證權(quán)限
第二種方式:使用groupadd添加組,然后給組分配sudo的權(quán)限,如果有新 用戶加入,直接將用戶添加到該組.*
#1.添加兩個真實的系統(tǒng)組, group_dev group_op
?[root@www ~]# groupadd group_dev?
[root@www ~]# groupadd group_op
#2.添加兩個用戶, ? ?? group_dev(user_a? user_b) ? group_op(user_c? user_d)
?[root@www ~]# useradd user_a -G group_dev
?[root@www ~]# useradd user_b -G group_dev
?[root@www ~]# useradd user_c -G group_op
?[root@www ~]# useradd user_d -G group_op
#3.記得添加密碼 [root@www ~]# echo "1" | passwd --stdin user_a?
[root@www ~]# echo "1" | passwd --stdin user_b
[root@www ~]# echo "1" | passwd --stdin user_c
?[root@www ~]# echo "1" | passwd --stdin user_d
#4.在sudo中配置規(guī)則?
[root@www ~]# visudo ?? Cmnd_Alias NETWORKING = /sbin/ifconfig, /bin/ping ??
?Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/yum
Cmnd_Alias SERVICES = /sbin/service, /usr/bin/systemctl start ??
?Cmnd_Alias STORAGE = /bin/mount, /bin/umount ???
Cmnd_Alias DELEGATING = /bin/chown, /bin/chmod, /bin/chgrp ??
?Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
%group_dev ALL=(ALL) SOFTWARE ??
?%group_op ALL=(ALL) SOFTWARE,PROCESSES
#5.檢查sudo是否配置有錯
?[root@www ~]# visudo -c /etc/sudoers: parsed OK
#6.檢查user_a,和user_d的sudo權(quán)限
?[user_a@www.oldboyedu.com ~]$ sudo -l User user_a may run the following commands on www: ?? (ALL) /bin/rpm, /usr/bin/yum
[user_d@www.oldboyedu.com ~]$ sudo -l User user_d may run the following commands on www: ?? (ALL) /bin/rpm, /usr/bin/yum, /bin/nice, /bin/kill, /usr/bin/kil
今日總結(jié)
1.passwd設(shè)定密碼?
2.用戶的創(chuàng)建流程[了解]?
3.組的基本管理 創(chuàng)建組 修改組
刪除組?
4.su 和 su - 區(qū)別 加載的環(huán)境變量不一樣
?5.sudo提權(quán)?
1.有管理人員來分配權(quán)限 visudo | visduo -c 檢查語法?
2.普通用戶僅需要檢查自身的sudo權(quán)限即可 sudo -l
基本權(quán)限
特殊權(quán)限
ACL訪問控制