linux nobody是啥用戶
在linux中,nobody是個匿名用戶,非特權用戶,只能存取伺服器上的公共內容。使用nobody使用者名稱的「目的」是:使任何人都可以登入系統,但是其UID和GID不提供任何特權,即該uid和gid只能存取人人皆可讀寫的檔案。因為預設登入shell是“/sbin/nologin”,所以nobody用戶是無法直接登入系統的,也就是駭客很難透過漏洞連接到你的伺服器來做破壞。
本教學操作環境:linux7.3系統、Dell G3電腦。
Windows系統在安裝後會自動建立一些使用者帳戶,在Linux系統中同樣有一些使用者帳戶是在
系統安裝後就有的,就像Windows系統中的內建帳戶一樣。
它們是用來完成特定任務的,例如nobody和ftp等,我們造訪LinuxSir.Org的網頁程式時,官網的伺服器就是讓客戶以'nobody'身分登入的(相當於Windows系統中的匿名帳號);
我們匿名存取ftp時,會用到使用者ftp或nobody。
Unix/Linux系統下的nobody使用者是什麼?
nobody是一個普通用戶,非特權用戶。使用nobody使用者名稱的'目的'是,使任何人都可以登入系統,但是其 UID 和 GID 不提供任何特權,即該uid和gid只能存取人人皆可讀寫的檔案。
許多系統中都按慣例地預設創建一個nobody,盡量'限制它的權限至最小',當伺服器向外服務時,可能會讓client以nobody的身份登入。
nobody就是一個普通帳戶,因為預設登入shell是'/sbin/nologin',所以這個使用者是無法直接登入系統的,也就是駭客很難透過漏洞連接到你的伺服器來做破壞。另外這個使用者的權限也給配置的很低。因此有比較高的安全性。一切都只給最低權限。這就是nobody存在的意義。
Unix/Linux系統下用戶shell為/sbin/nologin是什麼意思?
如果一個使用者的預設shell設定為/sbin/nologin 則這個使用者是禁止登陸系統的;
這個nologin的作用就是限制某些使用者通過ssh登陸shell上。
例如日常可以將nginx mysql php-fpm這些應用的使用者預設shell設定為/sbin/nologin
主要是提升系統安全性
系統帳號的shell使用/sbin/nologin ,此時無法登陸系統,即使給了密碼也不行。
所謂「無法登陸」指的僅是這個使用者無法使用bash或其他shell來登陸系統而已,並不是說這個帳號就無法使用系統資源。舉例來說,各個系統帳號中,列印作業有lp這個帳號管理,www伺服器有apache這個帳號管理,他們都可以進行系統程式的工作,但就是無法登陸主機而已。
有時候有些服務,例如郵件服務,大部分都是用來接收主機的郵件而已,並不需要登陸。如果有帳號試圖連接我的主機取得shell,我們就可以拒絕。
有時可以用使用 /etc/nologin 檔案暫時禁止其他使用者登錄,具體做法是在/etc/目錄下建立一個名稱為 nologin 的檔案。
例如:
#touch /etc/nologin
這樣將禁止後續的使用者登入系統中。
禁止使用者登入時,/etc/nologin 檔案中的內容將會顯示給用戶,會一閃而過。
例如,在/etc/nologin檔案中加入以下內容:
#vi /etc/nologin disable login by admin temperarily!
當使用者試圖登陸時,將會為使用者顯示"disable login by admin temperarily!",當系統維護結束以後,再刪除/etc/nologin文件,其他用戶就又可以恢復登陸了,這只是限於能登陸shell的用戶來說的
對於那些登陸shell為/sbin/nologin的用戶來說沒有影響,因為他們本身就無法登陸shell。
另外,如果我想要讓某個具有/sbin/nologin 的使用者知道,他們不能登陸主機時,可以新建/etc/nologin.txt 這個文件,在文件內面寫上不能登陸的原因,當使用者登入時,螢幕上就會出現這個文件裡面的內容。
例如:
#vi /etc/nologin.txt This account is system account or mail account. #su - mail
會提示"This account is system account or mail account."
#補充:
#/etc /nologin 和/etc/nologin.txt這兩個檔案的作用並不相同。
當/etc/nologin檔案存在時,則任何一個一般身分帳號在嘗試登入時,都僅會取得/etc/nologin的內容,而無法直接登入主機。
即當建立/etc/nologin ,並且內容設定為『This Linux server is maintaining....’,則任何嘗試登入者,會看到這些提示內容,而不能登入進系統。
直到刪除/etc/nologin檔案後,一般使用者才可以正常登入。
總結:
#nobody是linux/unix系統下的匿名用戶,只能存取伺服器上的公共內容
- ##/sbin/nologin是linux/unix系統下的一種shell設定項對於登陸shell為/sbin/nologin的用戶是不允許登入系統的
- /etc/nologin.txt只針對shell為/sbin/nologin的用戶
- /etc/nologin可以理解為針對所有普通用戶
Linux影片教學》
以上是linux nobody是啥用戶的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

CentOS 和 Ubuntu 的關鍵差異在於:起源(CentOS 源自 Red Hat,面向企業;Ubuntu 源自 Debian,面向個人)、包管理(CentOS 使用 yum,注重穩定;Ubuntu 使用 apt,更新頻率高)、支持週期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社區支持(CentOS 側重穩定,Ubuntu 提供廣泛教程和文檔)、用途(CentOS 偏向服務器,Ubuntu 適用於服務器和桌面),其他差異包括安裝精簡度(CentOS 精

CentOS 安裝步驟:下載 ISO 映像並刻錄可引導媒體;啟動並選擇安裝源;選擇語言和鍵盤佈局;配置網絡;分區硬盤;設置系統時鐘;創建 root 用戶;選擇軟件包;開始安裝;安裝完成後重啟並從硬盤啟動。

CentOS 已停止維護,替代選擇包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(與 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商業版,付費許可);5. Oracle Linux(與 CentOS 和 RHEL 兼容)。在遷移時,考慮因素有:兼容性、可用性、支持、成本和社區支持。

Docker利用Linux內核特性,提供高效、隔離的應用運行環境。其工作原理如下:1. 鏡像作為只讀模板,包含運行應用所需的一切;2. 聯合文件系統(UnionFS)層疊多個文件系統,只存儲差異部分,節省空間並加快速度;3. 守護進程管理鏡像和容器,客戶端用於交互;4. Namespaces和cgroups實現容器隔離和資源限制;5. 多種網絡模式支持容器互聯。理解這些核心概念,才能更好地利用Docker。

如何使用 Docker Desktop? Docker Desktop 是一款工具,用於在本地機器上運行 Docker 容器。其使用步驟包括:1. 安裝 Docker Desktop;2. 啟動 Docker Desktop;3. 創建 Docker 鏡像(使用 Dockerfile);4. 構建 Docker 鏡像(使用 docker build);5. 運行 Docker 容器(使用 docker run)。

CentOS 停止維護後,用戶可以採取以下措施應對:選擇兼容髮行版:如 AlmaLinux、Rocky Linux、CentOS Stream。遷移到商業發行版:如 Red Hat Enterprise Linux、Oracle Linux。升級到 CentOS 9 Stream:滾動發行版,提供最新技術。選擇其他 Linux 發行版:如 Ubuntu、Debian。評估容器、虛擬機或云平台等其他選項。

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

Docker 使用容器引擎、鏡像格式、存儲驅動程序、網絡模型、容器編排工具、操作系統虛擬化和容器註冊表等技術來支持其容器化功能,提供輕量級、可移植且自動化的應用程序部署和管理。
