Linux 用戶及許可權詳解

来源:https://www.cnblogs.com/thelovelybugfly/archive/2019/04/20/10742335.html
-Advertisement-
Play Games

Linux 用戶及許可權詳解 用戶 , 組 ,許可權 安全上下文(secure context); 許可權: r,w,x 文件: r : 可讀,可以使用類似cat 等命令查看文件內容。 w : 可寫,可以編輯或刪除此文件; x : 可執行,eXcutable, 可以命令提示符下當做命令提交給內核運行; 目 ...


Linux 用戶及許可權詳解

用戶 , 組 ,許可權

安全上下文(secure context);

許可權:
r,w,x

文件:
r : 可讀,可以使用類似cat 等命令查看文件內容。
w : 可寫,可以編輯或刪除此文件;
x : 可執行,eXcutable, 可以命令提示符下當做命令提交給內核運行;

目錄:
r : 可以對此目錄執行ls 以列出內部所有文件;
w : 可以在此目錄中創建文件;
x : 可以使用cd 切換進此目錄,也可以使用ls -l 查看內部文件的詳細信息;

rwx:
r--: 只讀
r-x: 讀和執行
---: 無許可權

0 000 --- 無許可權
1 001 --x 執行
2 010 -w- 寫
3 011 -wx 寫和執行
4 100 r-- 只讀
5 101 r-x 讀和執行
6 110 rw- 讀寫
7 111 rwx 讀寫執行

許可權的數字寫法

rw-r----- : 640
rw-rw---- : 660


用戶: UID , etc/passwd
組:GID, etc/group

影子口令 :
用戶 : /etc/shadow
組: /etc/gshadow


用戶類別:
管理員: 0
普通用戶: 1-65535
系統用戶:1-499
一般用戶:500-60000


用戶組類別:
管理員組:
普通組:
系統組:
一般組:



用戶組類別:
私有組: 創建用戶時,如果沒有為其制定所屬的組,系統會自動為其創建一個與用戶名同名的組
基本組: 用戶的預設組
附加組,額外組 : 預設組以外的其他組。

 

cat /etc/passwd 文件屬性解析           :為分隔符號
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin

1 account: 用登錄名
2 password : 密碼
3 UID:用戶ID
4 GID:基本組ID
5 comment: 註釋
6 HOME DIR : 家目錄
7 SHELL : 用戶的預設shell


etc/shadow
account `: 登錄名
encrypted password : 加密的密碼 MD5

創建時間


加密方法:
對稱加密: 加密和解密都用同一個密碼。
公鑰加密: 每個密碼都成對出現,一個為私鑰(secret key) 一個為公鑰(public key)
單向加密: 散列加密: 提取數據特征碼,常用於數據完整性校驗
1 雪崩效應
2 定長輸出
MD5 : message digest 128位定長輸出
SHA1: Secure Hash Algorithm 160 位定長輸出

useradd username 添加賬戶
groupadd groupname 添加用戶組


用戶管理:
useradd ,userdel,usermod ,passwd,chsh, chfn,finger,id,change


useradd [options] USERNAME
-u : UID >=500
-g : GID(基本組)
-G : GID ... (附加組)
-c :“comment” 註釋信息
-d : /路徑 指定家目錄
-s : /bin/shell 指定shell 路徑
-m -k
-M:
-r:添加系統用戶

/etc/shells : 指定了當前系統所有安全可用的shell

userdel:
userdel [option] USERNAME 刪除用戶
-r : 同時刪除用戶的家目錄
id : 查看用戶的賬號屬性信息
-u:
-g:
-G:
-n:

finger : 查看用戶賬號信息
finger USERNAME


修改用戶賬號屬性:
usermod
-u : UID
-g : GID
-G -a: GID(附加組,不使用-a 會覆蓋之前的附加組)
-c:註釋
-d -m: -m 移動舊家目錄文件至新家目錄
-s:
-l:
-L:鎖定賬號
-U: 解鎖賬號

chsh(change shell) : 修改用戶的預設shell
chfn :修改註釋信息


密碼管理:
passwd [USERNAME]
--stdin 從標準輸入(可以是管道)中讀取新密碼。
-l:鎖定
-u:解鎖
-d: 刪除用戶密碼

pwck 檢查用戶賬號完整性

切換用戶登錄
su (switch user) 用戶名

組管理命令:
groupadd,groupdel, groupmod,gpasswd

創建組:
groupadd :
-g:GID
-r:添加為系統組


groupmod:
-g:GID
-n:GroupName

gpasswd : 為組設定密碼

newgrp groupname : 登錄到新組, -- > exit

chage : 修改用戶密碼信息
-d : 最近一次的修改時間
-E :過期時間
-I :非活動時間
-m :最短使用時間
-M :最長使用期限
-W : 警告時間

許可權管理:
r:
w:
x:
chown,chgrp,chmod,umask



三類用戶:
u : 屬主
g : 屬組
o : other 其他用戶
a :所有用戶

chown : 改變文件屬主(管理員許可權)
chown USERNAME file1,file12,....
-R :修改目錄及其內部文件的屬主(遞歸修改)
--reference=/path/to/somefile file1, ... 參考某個文件許可權修改file1

chown USERNAME:GORUPNAME file1,...
chown USERNAME.GROUPNAME file,...


chgrp Groupname file,... 改變文件屬組
-R :
--reference=/path/to/somefile file1, ... 參考某個文件許可權修改file1

chmod:修改文件的許可權
修改三類用戶的許可權:
chomod MODE file,....

修改某類用戶或某些類用戶許可權:
u,g,o,a
chmod 用戶類別=MODE file,...

修改某類的用戶某位或某些位許可權
u,g,o,a
chmod 用戶類別 +|- MODE file,....
chmod u+x g-r o+w


umask : 遮罩碼。表示預設創建的許可權設定。
創建文件為: 666-umask
創建目錄為: 777-umask

註意: 文件一定不能預設有執行許可權



bash : 腳本解釋器

站在用戶角度談 SHELL 的類型
1 登錄式shell:
正常通過某終端登錄
su - username
su -l username

2 非登錄式shell :
su username
圖形終端下打開的命令視窗
自動執行的shell 腳本


bash 的配置文件:

全局配置:
/etc/profile, /etc/profile.d/*sh, /etc/bashrc

個人配置:
~/.bash_profile.~/.bashrc

profile 類的文件:
設定環境變數
運行命令或腳本

bashrc類的文件:
設定本地變數
定義命令別名


登錄式shell 如何讀取配置文件?
/etc/profile --->/etc/profile.d/*.sh ---> ~/.bash_profile ---> ~/.bashrc --->/etc/bashrc

非登錄式shell如何讀取配置文件?
~/.bashrc ---> /etc/bashrc ---> /etc/profile.d/*.sh

 

簡單設置個root 賬號 登錄歡迎提示
root賬號下編輯個人配置文件 .bash_profile
nano ~/.bash_profile
最後一行輸入:
echo "Hello Administtactor ,Welocme to Login ,It's `date`."
退出賬號 重新登錄載入配置文件 查看登錄後的提示。

可在其中載入腳本,用於初始化運行

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 方法二:根據路徑下載圖片 方法三 根據路徑下載圖片 ...
  • grpe 及正則表達式 文本查找的需要:grep,egrep,fgrepgrep: 根據模式,搜索文本,並將符合模式的文本行顯示出來。Pattern : 文本字元以及正則表達式的元字元組合而成的匹配條件 grep [OPTIONS] PATTERN [FILE...] -i :忽略大小寫 --col ...
  • anoPC-T2製作刷機包 前提:到友善的wiki中,仔細看編譯uboot、內核、製作刷機包的教程。 準備工作: 1、 虛擬機Ubuntu安裝,並安裝n多軟體可以支撐編譯內核等等。 2、 安裝交叉編譯器,參考wiki-8.1。 3、 下載友善修改好的uboot、內核源代碼,debian_nanopi ...
  • Linux的用戶是以組為單位,每個用戶都屬於某一個組,而用戶組的許可權,是指某個用戶對某個文件(文件夾)的操作許可權,這裡涉及用戶組的概念。 其中root用戶擁有全Linux系統中最高的許可權,比任何其他用戶的許可權都高,可以修改任意文件和用戶。 用戶組的作用:就用於標識同一種類型的用戶,這樣可以給一組用戶 ...
  • 1.vim編輯器 vim操作命令 --在命令模式下進行 底線命令模式: 2.用戶管理和文件目錄許可權 linux下麵的用戶及許可權: root用戶: 超級管理員, 相當於QQ群裡面的群主 普通用戶: 可以做一些簡單的操作, 如果需要做系統服務相關的操作,需要授權 3.文件許可權詳解 4.sudo命令用法 ...
  • You believe it or not there is a feeling, lifetime all not lost to time. 在Linux上部署Web項目 這個是普通的web項目,若是其他項目如大數據,則要安裝下hadoop集群和kms、hdfs、hive等插件後才可用在該環境基 ...
  • 4 How Interrupts work 與遵循樹的自然結構的地址範圍轉換不同, 中斷信號可以起源於或者終止於板卡上的任何設備。 與設備樹中自然表示的設備定址不同,中斷信號的表示獨立於設備樹節點之間的連接。通常用下麵的四個屬性來描述一個中斷連接: interrupt-controller - 一個 ...
  • 主要用途:用於內部網路和網路服務供應商自動分配IP地址給用戶 用於內部網路管理員作為對所有電腦作集中管理的手段 使用場景:自動化安裝系統 解決IPV4資源不足問題 DHCP共有八種報文: 常見的為前四種報文 DHCP DISCOVER:客戶端到伺服器 DHCP OFFER :伺服器到客戶端 DHCP ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...