linux 关闭权限验证,Linux 账户安全与控制
文章目錄
chattr命令(鎖定賬戶信息、用戶密碼文件)
鎖定單用戶的密碼(usermod、useradd)
**方法一:鎖定用戶密碼**
**方法二:鎖定該用戶**
設(shè)置用戶密碼有效期(新建用戶,已有用戶)
方法一:對(duì)于還未創(chuàng)建的賬戶可以通過修改login.defs文件來實(shí)現(xiàn)對(duì)將要?jiǎng)?chuàng)建的賬戶的有效期設(shè)置
方法二:對(duì)于已經(jīng)創(chuàng)建了的賬戶使用chage命令更改密碼有效期
用戶下次登陸時(shí)強(qiáng)制修改密碼
禁止用戶登陸的幾種方法
方法一:修改/etc/shadow文件,在密碼字符串前加上一個(gè)或兩個(gè)感嘆號(hào)
方法二:禁止除root以外的所有普通用戶登陸
查看歷史命令 history
1、限制顯示歷史執(zhí)行過的命令
2、退出終端時(shí)自動(dòng)清除歷史命令
用戶超時(shí)自動(dòng)注銷
使用su命令切換用戶
限制使用su命令的用戶
★PAM安全認(rèn)證
PAM認(rèn)證原理
PAM認(rèn)證的構(gòu)成
PAM安全認(rèn)證流程
使用sudo機(jī)制提升權(quán)限
chattr命令(鎖定賬戶信息、用戶密碼文件)
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow ##鎖定passwd與shadow兩個(gè)與賬戶相關(guān)的配置文件,使其不能被修改
[root@localhost ~]# lsattr /etc/passwd /etc/shadow ##查看兩個(gè)文件的屬性(發(fā)現(xiàn)有i)
----i----------- /etc/passwd
----i----------- /etc/shadow
[root@localhost ~]# chattr -i /etc/passwd /etc/shadow ##解鎖兩個(gè)配置文件
[root@localhost ~]# lsattr /etc/passwd /etc/shadow ##再次查看配置文件屬性(發(fā)現(xiàn)i沒有了)
---------------- /etc/passwd
---------------- /etc/shadow
鎖定單用戶的密碼(usermod、useradd)
方法一:鎖定用戶密碼
#假設(shè)現(xiàn)在我們有個(gè)用戶名為tom的普通用戶賬號(hào),使用passwd命令可以鎖定其用戶密碼,使之不能從終端登錄。
[root@localhost ~]# passwd -l tom
鎖定用戶 tom 的密碼 。
passwd: 操作成功
[root@localhost ~]# cat /etc/shadow
tom:!!$6$tbEutCW6$GwmMKaxNK.r0gsuB0CNuhrnYpvykPm8/a.pUd2Kf4iuxF5ZB8vSXMDy8xiMey8f12kkn3f8tAg8hNw6RXSAFF/:18444:0:0:7:::
#查看shadow文件看到用戶tom用戶的后面有兩個(gè)感嘆號(hào),說明該用戶密碼已經(jīng)鎖定不能登錄
#現(xiàn)在希望解鎖該用戶,使用以下命令:
[root@localhost ~]# passwd -u tom
解鎖用戶 tom 的密碼。
passwd: 操作成功
方法二:鎖定該用戶
#還是剛才的tom用戶,我們這次使用usermod命令來操作。
[root@localhost ~]# usermod -L tom
[root@localhost ~]# cat /etc/shadow
tom:!$6$tbEutCW6$GwmMKaxNK.r0gsuB0CNuhrnYpvykPm8/a.pUd2Kf4iuxF5ZB8vSXMDy8xiMey8f12kkn3f8tAg8hNw6RXSAFF/:18444:0:0:7:::
#我們發(fā)現(xiàn)tom用戶后面有一個(gè)感嘆號(hào),這時(shí)候使用tom用戶無法登陸
#現(xiàn)在希望解鎖該用戶,使用以下命令:
[root@localhost ~]# usermod -U tom
舉一反三:那么,既然passwd -l 與usermod -L 都可以鎖定用戶,那么在解鎖用passwd鎖定的賬戶時(shí)使用usermod命令呢?下面我們來實(shí)驗(yàn):
#先使用passwd鎖定用戶密碼
[root@localhost ~]# passwd -l tom
#再使用usermod命令解鎖
[root@localhost ~]# usermod -U tom
#解鎖后嘗試登陸tom,發(fā)現(xiàn)可以登錄,說明passwd與usermod的鎖定與解鎖是可以通用的。
設(shè)置用戶密碼有效期(新建用戶,已有用戶)
方法一:對(duì)于還未創(chuàng)建的賬戶可以通過修改login.defs文件來實(shí)現(xiàn)對(duì)將要?jiǎng)?chuàng)建的賬戶的有效期設(shè)置
vi /etc/login.defs
#找到 PASS_MAX_DAYS 這一行,將后面的9999 改成30
PASS_MAX_DAYS 30 #現(xiàn)在密碼最長有效期從永不過期變成了30天
方法二:對(duì)于已經(jīng)創(chuàng)建了的賬戶使用chage命令更改密碼有效期
密碼有效期:chage -M 30 tom
用戶下次登陸時(shí)強(qiáng)制修改密碼
[root@localhost ~]# chage -d 0 tom #當(dāng)tom用戶重新登錄時(shí)會(huì)提示強(qiáng)制修改密碼后才能登錄
禁止用戶登陸的幾種方法
方法一:修改/etc/shadow文件,在密碼字符串前加上一個(gè)或兩個(gè)感嘆號(hào)
[root@localhost /]# vi /etc/shadow
tom:!!$6$Str1t6ks$hk6otJqguzoA.v5bhf6AB1bsueoDiLIK3.Gm7Un1.4iQo20idkRIWoAdRCaOIiHwPSPuhJgCldn1VqzqqSlBn.:18445:0:99999:7:::
方法二:禁止除root以外的所有普通用戶登陸
[root@localhost /]# touch /etc/nologin ##在etc目錄下創(chuàng)建一個(gè)空白的nologin文件
【注意】:主要該文件存在,只能root用戶登陸!該方法經(jīng)常用于在服務(wù)器維護(hù)時(shí)使用
【小技巧】:我們可以編輯nologin文件在其中添加內(nèi)容,這樣別人在使用終端登錄時(shí)頁面就會(huì)提示。
例:echo "系統(tǒng)正在維護(hù)中,請(qǐng)稍后再試!" > /etc/nologin
查看歷史命令 history
1、限制顯示歷史執(zhí)行過的命令
[root@localhost /]# vi /etc/profile ##編輯配置文件
找到 HISTSIZE 這一行,默認(rèn)是1000,我們可以修改成自己想要的值,編輯完后保存并退出
2、退出終端時(shí)自動(dòng)清除歷史命令
[root@localhost /]# vi ~/.bash_logout ##編輯配置文件
##添加如下兩行:
history -c
clear
用戶超時(shí)自動(dòng)注銷
在root用戶家目錄下編輯.bash_profile文件,在最下面添加一行命令即可
vi ~/.bash_profile
export TMOUT=600 ##單位是秒
source .bash_profile ##重新加載配置文件
?
使用su命令切換用戶
用途及用法
用途:Subsitute User,切換用戶
格式:su -目標(biāo)用戶
密碼驗(yàn)證
? root→任意用戶,不驗(yàn)證密碼
? 普通用戶→其他用戶,驗(yàn)證目標(biāo)用戶的密碼
[root@localhost ~]# su - tom ##從root用戶切換到tom賬戶
[tom@localhost ~]$ su - ##從tom賬號(hào)切換回root
密碼:
限制使用su命令的用戶
將允許使用su命令的用戶加入wheel組
啟用pam_wheel認(rèn)證模塊 (配置文件:/etc/pam.d/su)
gpasswd -a tom wheel #將tom用戶添加到wheel組
選項(xiàng):-a:添加用戶到組
查看su操作記錄:記錄在安全日志文件中,路徑:/var/log/secure
★PAM安全認(rèn)證
su命令的安全隱患
? 默認(rèn)情況下,任何用戶都允許使用su命令,有機(jī)會(huì)反復(fù)嘗試其他用戶(如root)的登錄密碼,帶來安全風(fēng)險(xiǎn)。為了加強(qiáng)su命令的使用控制,可借助PAM認(rèn)證模塊,只允許極個(gè)別用戶使用su命令進(jìn)行切換
PAM(Pluggable Authentication Modules)可插拔式認(rèn)證模塊
? 是一種高效而且靈活便利的用戶級(jí)別的認(rèn)證方式
? 也是當(dāng)前Linux服務(wù)器普遍使用的認(rèn)證方式
PAM認(rèn)證原理
一般遵循的順序:Service(服務(wù))→PAM(配置文件)→pam_*.so
首先要確定哪一項(xiàng)服務(wù),然后加載相應(yīng)的PAM的配置文件,(位于/etc/pam.d下),最后調(diào)用認(rèn)證文件(位于/lib/security下)進(jìn)行安全認(rèn)證
用戶訪問服務(wù)器時(shí),服務(wù)器的某個(gè)服務(wù)程序把用戶的請(qǐng)求發(fā)送到PAM模塊進(jìn)行認(rèn)證
不同的應(yīng)用程序所對(duì)應(yīng)的PAM模塊是不同的
PAM認(rèn)證的構(gòu)成
查看某個(gè)程序是否支持PAM認(rèn)證,可以用ls命令
ls /etc/pam.d | grep su ##查看su命令是否支持PAM認(rèn)證
查看su的PAM配置文件:cat /etc/pam.d/su
每一行都是一個(gè)獨(dú)立的認(rèn)證過程
每一行可以區(qū)分為三個(gè)字段:認(rèn)證類型、控制類型、PAM模塊及參數(shù)
PAM安全認(rèn)證流程
控制類型也稱作Control Flags,用于PAM驗(yàn)證類型的返回結(jié)果
? 1、required驗(yàn)證失敗時(shí)仍然繼續(xù),但返回Fail
? 2、requisite驗(yàn)證失敗則立即結(jié)束整個(gè)驗(yàn)證過程,返回Fail
? 3、sufficien驗(yàn)證成果則立即返回,不再繼續(xù)。否則忽略結(jié)果并繼續(xù)
? 4、optional不用于驗(yàn)證,只顯示信息(通常用于session類型)
圖1
使用sudo機(jī)制提升權(quán)限
su命令的缺點(diǎn)
sudo命令的用途及用法
用途:以其他用戶身份(如root)執(zhí)行授權(quán)的命令
sudo 授權(quán)命令
配置sudi授權(quán)
visudo 或者 vi /etc/sudoers
記錄格式:用戶 主機(jī)名列表=命令程序列表
查看sudo操作記錄
需啟用Defaults logfile 配置
默認(rèn)日志文件:/var/log/sudo
使用sudo機(jī)制提升權(quán)限
su命令的缺點(diǎn)
sudo命令的用途及用法
用途:以其他用戶身份(如root)執(zhí)行授權(quán)的命令 sudo 授權(quán)命令
配置sudi授權(quán)
visudo 或者 vi /etc/sudoers
記錄格式:用戶 主機(jī)名列表=命令程序列表
查看sudo操作記錄
需啟用Defaults logfile 配置
默認(rèn)日志文件:/var/log/sudo
查詢授權(quán)的sudo操作:sudo -l
總結(jié)
以上是生活随笔為你收集整理的linux 关闭权限验证,Linux 账户安全与控制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修改linux内核启动动画,Androi
- 下一篇: linux 其他常用命令