Linux使用者及許可權管理

2021-09-23 07:21:04 字數 4363 閱讀 9998

1.linux中的使用者

linux是乙個多使用者(multi-users)、多工(multi-tasks)的作業系統。因此通過終端登陸系統需要,相應的機制,來進行管理、使用計算機系統資源。

一般都需要解決這樣三個問題:

(1)認證(authentication)

解決什麼人可以登陸使用計算機資源

(2)授權(authorization)

解決使用者登陸後,其能使用計算機中的什麼資源,能進行什麼樣的操作

(3)審計(audition)

2.linux中使用者的劃分

linux中的使用者等級大概是分為兩級:超級使用者即管理員和普通使用者。其中普通使用者,按照系統程式執行機制及安全性,又可劃分為:系統使用者和登陸使用者。系統使用者,不能登入系統,以其身份執行的程式,僅在後台以程序的方式作為服務執行。登陸使用者,可以登陸終端,並通過互動介面,與其他程式或檔案,進行互動。

使用者標識(uid):

計算機更容易理解的往往是二進位制資料,因此,我們使用16位二進位制數字來唯一標識使用者,即uid。uid是0--65535.管理員的uid為0,普通使用者的uid為1--60000.普通使用者中的系統使用者uid為1--499(centos6),1--999(centos7);普通使用者中的登陸使用者uid為500--60000(centos6),1000--60000(centos7).

名稱解析:

在計算機中經常會用到,如使用者名稱uid,他們之間的相互解析。解析需要相應的解析庫來提供比較對照,有戶名與uid的解析庫是檔案/etc/passwd

3.linux中的組

按照劃分的標準不同,可分為:

4.密碼策略及加密演算法

一般為了保證系統的安全,大都遵循一些基本原則:

使用隨機密碼;密碼盡可能滿足一定的長度;盡可能滿足使用的字符集要求;最總要是定期更換

密碼的加密演算法:

對稱加密;非對稱加密;單向加密(提取資料的特徵碼,不可逆的)

5.linux中重要的使用者和組的解析庫檔案解析

/etc/passwd 檔案解析:(每行7段)

name:password:uid:gid:gecos(使用者的注釋資訊):home(使用者的家目錄):shell

/etc/shadow 檔案解析:(每行9段)

使用者名稱:

加密的密碼段:

密碼最短使用期限:

密碼最長使用期限:

警告期限:

保留字段

/etc/group 檔案解析:

groupname:password:gid:userlist(一次為附加組的使用者的列表)

6.使用者和組的管理命令

groupadd 新增組命令

基本用法:groupadd [選項]... 組名

常用選項:-g gid :新增組的同時制定gid

-r :建立乙個系統組

列如:#groupadd -g 3306 mariadb

#groupadd -r archlinux

groupmod 修改組命令

基本用法:groupmod [選項]... 組名

常用選項:-g gid :修改組的uid

-n newgroup:修改組的名字

示例:#groupmod -g 3307 mariadb

#groupmod -n mysql mariadb

groupdel 刪除組

基本用法:groupdel [選項]... 組名

useradd 建立使用者命令

基本用法:useradd [選項]... 使用者名稱

常用選項:-u uid : 建立使用者同時指定使用者的uid

-g gid : 建立使用者的同時指定其基本組gid

-r : 建立乙個系統使用者

-c comment : 建立使用者時標註注釋資訊

-d dir :建立使用者時指定家目錄的路徑

-s shell : 建立使用者時指定預設登陸shell(最好是/etc/shells中有的)

-g gid :建立使用者時指定這個的附加組,有多個附加組有逗號隔開

-m :建立使用者時不建立使用者家目錄

-d : 顯示新增使用者時的預設屬性或設定更改預設屬性

-f :非活動期限,0:非活動啟用 -1:非活動禁用

例項:#useradd -u 1008 -g 1008 gentoo (此組要事先存在)

#useradd -r fedora

#useradd -c 'slackware linux' slackware

#useradd -d /var/tmp/debain -s /sbin/nologin debain(最好是selinux關掉)

#useradd -g gentoo,slackware zen

#useradd -m docker

#useradd -d -f 0 修改的是/etc/default/useradd檔案中的值

usermod 修改使用者相關屬性的命令

基本用法:usermod [選項]... 使用者名稱

常用選項:-u uid : 更改使用者的uid

-g group :更改使用者的基本組

-g -a :常結合在一起使用(否則回覆蓋),更改使用者的附加組

-c comment:更改注釋資訊

-d -m :常結合在一起使用,更改家目錄,並將家目錄中的檔案一起轉移

-l newname: 更改新的使用者名稱

-s shell:更改使用者的shell

-l :鎖定使用者

-u : 解鎖使用者

例項:#usermod -g zen docker

#usermod -ag zen,slackware mysql

#usermod -d /path/to/mysql -m mysql

#usermod -l mysqldb mysql

userdel 刪除使用者命令

常用選項:-r :刪除使用者同時其家目錄的檔案一起刪除,預設不刪出家目錄檔案

passwd 密碼管理命令

基本語法:passwd [選項]... [使用者]

常用選項:-l :鎖定使用者

-u : 解鎖使用者

-d : 刪除密碼

-e data :密碼過期期限

-i days :非活動期限

-n days :密碼最短期限

-x days :最長期限

-w days :警告期限

--stdin :從標準輸入獲取,作為密碼

例項:#echo 'centos' | passwd --stdin username &> /dev/null

gpasswd 組密碼管理命令

基本語法:gpasswd [選項]... [組名]

常用選項:-a username :向組中新增使用者

-d username ; 從組中刪除使用者

不加選項,直接給當前使用者組或指定組,設定密碼。組密碼,常用於某使用者需要登陸或臨時切換至某組時使用;如果某使用者是某組的成員,則不需要密碼直接可以登陸或切換。

newgrp 使用者登陸或臨時切換至乙個組的命令

例項:#newgrp - group #登陸group組

#newgrp group #臨時切換至group這個組

chage 更改密碼的過期期限資訊

基本用法:chage [選項]... 使用者名稱

常用選項:-l :列出使用者的密碼期限資訊

-d :上次密碼修改的日期

-e :過期期限

-w :警告期限

-m :最大期限

-m :最長期限

-i :非活動期限

id 顯示實際和有效的id

基本用法:id [選項]... 使用者名稱

常用選項:-u:顯示uid

-g :顯示gid

-g :顯示基本組和附加組的gid

-n :結合前面的選項,顯示名稱而非id

su 切換使用者命令

登陸式切換

非登陸式切換

常用選項:-c 『command』不切換登陸,僅以指定使用者的身份執行此處指定的command命令

例項:#su - username -c 'whoami'

Linux 許可權及使用者管理

linux的使用者分為root使用者和普通使用者,root使用者擁有增加刪除使用者等至高無上的權利,這是對root許可權的解釋 root 許可權,系統許可權的一種,與 system 許可權可以理解成乙個概念,但高於 administrator 許可權,root 是linux 和unix 系統中的超級...

Linux 使用者管理及使用者許可權下放

useradd 增 同adduser命令,執行此命令可在系統中新增命令 更改四個檔案 etc passwd etc shadow etc gshadow userdel 刪 執行此命令可刪除使用者及相關使用者的配置或檔案,r引數同時刪除家目錄 passwd 執行此命令可為使用者設定密碼,更改 etc...

Linux檔案許可權及使用者管理

etc passwd檔案與 etc shadow檔案 etc passwd檔案 etc passwd檔案主要存放登入名 uid等使用者相關資訊,使用者登入密碼存放在 etc shadow檔案中。例子 root x 0 0 root root bin bash ftp x 14 50 ftp user...