시스템 튜토리얼 리눅스 Linux 파일은 사용자에게 권한이 부여됩니다. Linux 보안 모델: 광범위한 제한이 빡빡하고 시간이 정체될 만큼 충분합니다.

Linux 파일은 사용자에게 권한이 부여됩니다. Linux 보안 모델: 광범위한 제한이 빡빡하고 시간이 정체될 만큼 충분합니다.

Jun 22, 2024 am 10:32 AM

linux 文件授权给用户 Linux 安全性模型:宽为限紧用功,功夫到滞塞通

침체를 달성하기 위한 광범위한 제한과 엄격한 노력을 통한 Linux 보안 모델 개요

Linux는 사용자 및 그룹을 사용하여 파일에 대한 사용자의 액세스 권한을 제어합니다. Linux 시스템에서 생성된 사용자는 자신의 계정과 비밀번호를 사용하여 Linux에 로그인할 수 있습니다. Linux 시스템은 모든 것을 파일로 취급합니다. 각 파일에는 소유자가 있지만 소유자는 특정 그룹에 속합니다.

这里写图片描述

사용자

Linux 시스템의 각 사용자는 고유한 UserID를 가지고 있습니다. 사용자 정보는 /etc/passwd에 저장됩니다. 이 파일의 형식 예는 다음과 같습니다.

으아악

각 숫자의 해당 의미는 다음과 같습니다.

으아악

기존 시스템에서는 사용자의 비밀번호가 바로 두 번째 자리에 저장되어 있었습니다. /etc/passwd 파일의 모든 사용자는 읽기 권한을 가지고 있기 때문에 보안상의 이유로 이후 시스템에서는 비밀번호를 별도로 꺼내어 /etc/shadow 파일에 저장했으며, /etc/passwd 파일의 두 번째 숫자만 사용했습니다. 사용자에게 비밀번호가 필요한지 여부를 저장합니다. 사용자가 비밀번호를 가지고 있는 경우 이 비트가 '!'로 표시되거나 비어 있으면 해당 사용자가 비밀번호로 로그인할 수 없음을 의미합니다.

일반적으로 HOME 디렉터리와 지정된 쉘이 있는 사용자만 시스템에 로그인할 수 있습니다. 사용자는 허가 없이 다른 사용자의 파일을 읽거나 쓰거나 실행하는 것을 엄격히 금지합니다. Linux 루트 사용자는 최고의 권한을 가지며 시스템의 모든 파일에 무조건 액세스하고 수정하고 삭제할 수 있습니다. 일반적으로 루트를 사용하여 로그인하고 시스템을 운영하지 마십시오.

Linux 운영 체제에 새 사용자를 추가하는 두 가지 명령, 즉 useradd 및 adduser가 있습니다. 루트 권한에서 useradd는 (useradd+username)과 같은 사용자 이름만 생성하며, /home 디렉터리에 동일한 이름의 폴더를 생성하지 않으며, 따라서 시스템에 로그인할 수도 없습니다. 이러한 상황을 방지하려면 (useradd-m+username) 방법을 사용하여 /home 디렉터리에 동일한 이름의 폴더를 만든 다음 (passwd+username)을 사용하면 됩니다. 지정된 사용자 이름에 대한 비밀번호를 설정합니다. 매개변수 옵션은 다음과 같습니다:

으아악

adduser(adduser+username)를 사용하여 직접 새 사용자를 생성할 수 있으므로 매개 변수를 제공하지 않고 /home 디렉터리에 동일한 이름의 폴더가 수동으로 생성됩니다.

userdel 명령은 사용자를 삭제하는 데 사용됩니다. 일반적으로 사용되는 옵션은 -r이며 사용자의 홈 디렉터리를 함께 삭제하는 데 사용됩니다.

usermod 명령은 계정 정보를 변경하는 데 사용됩니다. 일반적으로 사용되는 옵션에는 -c, -d, -m, -g, -G, -s, -u 및 -o 및 기타 일반적인 Linux 시스템이 포함됩니다. useradd 명령과 동일하게 사용자에 대한 새 리소스 값을 지정할 수 있습니다.

사용자 관리를 위한 도구 또는 명령:

으아악

linux 文件授权给用户_授权linux文件执行权限_linux授予用户文件权限사용자 그룹 개요

Linux系统的每位User都属于一个Group,具有惟一的标示符gid。Group信息储存于/etc/group中linux 文件授权给用户,且可以为group创建密码,密码储存在/etc/gshadow文件中,并且通常情况下不须要为用户组创建密码。系统会为每位User关联一个和User同名的Group,每位User起码存在于自己同名的Group中,同时User也可以加入其他的Group。在同一个Group中的成员可以共享其他成员的文件。降低一个新的用户组使用groupadd命令。其格式如下:

用法:<span class="hljs-tag">groupadd</span> <span class="hljs-attr_selector">[选项]</span> 组
로그인 후 복사

可以使用的选项有:

-<span class="ruby">f, --force 如果组已经存在则成功退出并且如果 <span class="hljs-constant">GID</span> 已经存在则取消 -g
</span>-<span class="ruby">g, --gid <span class="hljs-constant">GID</span> 为新组使用 <span class="hljs-constant">GID</span>
</span>-<span class="ruby">h, --help显示此帮助信息并推出
</span>-<span class="ruby"><span class="hljs-constant">K</span>, --key <span class="hljs-constant">KEY</span>=<span class="hljs-constant">VALUE</span> 不使用 /etc/login.defs 中的默认值
</span>-<span class="ruby">o, --non-unique允许创建有重复 <span class="hljs-constant">GID</span> 的组
</span>-<span class="ruby">p, --password <span class="hljs-constant">PASSWORD</span> 为新组使用此加密过的密码
</span>-<span class="ruby">r, --system创建一个系统账户
</span>-<span class="ruby"><span class="hljs-constant">R</span>, --root <span class="hljs-constant">CHROOT_DIR</span> chroot 到的目录</span>
로그인 후 복사

假如要删掉一个已有的用户组,使用groupdel命令,其格式为:groupdel用户组。更改用户组的属性使用groupmod命令,其句型为:groupmod选项用户组

假如须要将一个用户添加到某个用户组中,可以采用如下命令:

usermod <span class="hljs-attribute">-a</span> <span class="hljs-attribute">-G</span> 用户组 用户名
로그인 후 복사

参数-a代表append,也就是将用户添加到新用户组中而毋须离开原有的其他用户组,不过须要与-G选项配合使用,-G表示指定用户组。假如仅仅只改变一个用户原有的用户组,则采用如下命令:

useradd <span class="hljs-attribute">-g</span> 用户组
로그인 후 복사

管理用户组(group)的工具或命令:

groupadd注:添加用户组;
groupdel注:删除用户组;
groupmod注:修改用户组信息
groups注:显示用户所属的用户组
grpck
grpconv 注:通过/etc/<span class="hljs-keyword">group</span>和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;
grpunconv 注:通过/etc/<span class="hljs-keyword">group</span> 和/etc/gshadow 文件内容来同步或创建/etc/<span class="hljs-keyword">group</span> ,然后删除gshadow文件;
로그인 후 복사

Linux文件和目录权限剖析1、三种基本权限

(1)r(read)读

针对目录,有读(r)权限就代表能对此目录有列表功能,就是可以执行ls命令进行查看,另外还有cp的功能。针对文件,有读(r)权限就代表能对此文件有阅读功能,可以通过cat等命令查看文件内容。

linux授予用户文件权限_linux 文件授权给用户_授权linux文件执行权限

(2)w(write)写

针对目录,有写(w)权限就代表着在此目录下创建文件和目录,可以通过touch,mkdir等命令创建文件和目录,另外还可以删掉此目录下的文件。针对文件,有写(w)权限就代表着对此文件可以写入新的内容和更改文件内容。

(3)x(execute)执行

针对目录,有执行(x)权限就代表能步入此目录,借助cd等命令步入此目录针对文件,有执行(x)权限就代表可以执行此文件。

在Linux下每一文件或目录的访问权限都有三组,每组用三位表示linux 文件授权给用户,分别为文件属主的读、写和执行权限;和属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls-l命令显示文件或目录的周详信息时,最左侧的一列为文件的访问权限。最右侧的一位为文件的类型,比如“-”表示普通文件,“d”表示目录等。ls-l所列举的信息各栏含意如下:

第一个栏位,表示文件的属性。
第二个栏位,表示文件个数,即硬链接数。
第三个栏位,表示该文件或目录的拥有者。
第四个栏位,表示所属的组(<span class="hljs-keyword">group</span>)。
第五栏位,表示文件大小。
第六个栏位,表示创建日期。
第七个栏位,表示文件名。
로그인 후 복사

2、特殊位引起权限变化通常有以下两种

(1)特权位(s)

setuid s位在前三位
로그인 후 복사

setgid s位在中间三位
로그인 후 복사

特权位只针对文件有效,而且只能添加在权限位的前三位和中间三位;一个可执行文件拥有s位而且在前三位时,当别的用户来执行此文件,使用的权限是此可执行文件属主权限;假如一个可执行文件拥有s位而且在中间三位时,当他人的用户来执行此文件,使用的权限是此可执行文件属组的权限

(2)粘帖位(t)

当一个目录共享给其他用户使用而且用户可以上传文件和删掉文件,而且只能删掉自己的文件,这么就必须用到粘帖位(t),非常用在/tmp目录。只针对目录有效。有t位的目录,任何用户在有权限的情况下是可以创建文件和目录,即使是有权限删掉他人的文件或目录也不能删掉,同时相互也不能强制保存更改,自己只能删掉自己创建的目录,用于一些共享上传的文件服务器场合

注:s位和t位都是占用x位,这么是否有x位,主要是看s或t的大小写来判断:小写,表示没有执行权限x位;大写,表示有执行权限x位

3、隐藏属性权限

linux不仅9个权限外,还有些隐藏属性,使用lsattr和chattr命令来查看和设置这种隐藏属性。

lsattr --listfile attributes on a Linux second extended <span class="hljs-keyword">file</span> <span class="hljs-keyword">system</span>
chattr --change <span class="hljs-keyword">file</span> attributeson a Linux second extended <span class="hljs-keyword">file</span> <span class="hljs-keyword">system</span>
로그인 후 복사

chattr命令句型格式:

<span class="hljs-tag">chattr</span> <span class="hljs-attr_selector">[-RVf]</span> <span class="hljs-attr_selector">[-+=aAcCdDeijsStTu]</span> <span class="hljs-attr_selector">[-v version]</span> <span class="hljs-tag">files</span>…
로그인 후 복사

参数说明:

-R:递归处理所有的文件及子目录。
-V:详细显示修改内容,并打印输出。
-:失效属性。
+:激活属性。
<span class="hljs-header">= :指定属性。</span>
로그인 후 복사

属性:

 A<span class="hljs-keyword">no</span> atime update 不允许修改atime
 Dsynchoronous directory updates
 S synchronous updates 必须sync
 T top of directory hierarchy
 a append only只允许append
 c compressed自动压缩,读取时自动解压缩,哇!好高级!
 d <span class="hljs-keyword">no</span> <span class="hljs-keyword">dump</span>当<span class="hljs-keyword">dump</span>时,具有d属性的文件不加入<span class="hljs-keyword">dump</span>
 e extent <span class="hljs-keyword">format</span>
 i immuttbale 可厉害了,让一个文件不能删除,改名,增加软硬链接,无法写入
 j data journalling ext3时会将写入记录 journal
 <span class="hljs-keyword">s</span> secure deletion 可以安全删除
 t <span class="hljs-keyword">no</span> tail-merging
 uundeletable 与<span class="hljs-keyword">s</span>相反,删除时数据还会存在磁盘中
로그인 후 복사

4、chmod命令

chmod命令是十分重要的,用于改动文件或目录的访问权限。用户用他控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

文字设定法

<span class="hljs-tag">chmod</span> <span class="hljs-attr_selector">[who]</span> <span class="hljs-attr_selector">[+- =]</span> <span class="hljs-attr_selector">[mode]</span> <span class="hljs-tag">file</span>…
로그인 후 복사

命令中各选项的含意为:

操作对象who而且下列字母中的任一个或她们的组合:

u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(<span class="hljs-keyword">group</span>)用户”,即和文件属主有相同组ID的所有用户。
o 表示“其他(<span class="hljs-keyword">others</span>)用户”。
a 表示“所有(<span class="hljs-keyword">all</span>)用户”。他是系统默认值。
로그인 후 복사

linux授予用户文件权限_linux 文件授权给用户_授权linux文件执行权限

操作符号可以是:

+ 添加某个权限。
<span class="hljs-bullet">- </span>取消某个权限。
<span class="hljs-header">= 赋予给定权限并取消其他所有权限(如果有的话)。</span>
로그인 후 복사

设置mode所表示的权限可用下列字母的任意组合:

r 可读。
w 可写。
x 可执行。
로그인 후 복사

x只有目标文件对个别用户是可执行的或该目标文件是目录时才追加x属性。

s在文件执行时把进程的属主或组ID置为该文件的文件属主。形式“u+s”设置文件的用户ID位,“g+s”设置组ID位。

t 保存程式的文本到交换设备上。
u 和文件属主拥有相同的权限。
g 和和文件属主同组的用户拥有相同的权限。
o 和其他用户拥有相同的权限。
로그인 후 복사

文件可以是以空格分开的要改动权限的文件列表,支持转义。在一个命令行中可给出多个权限形式,其间用冒号隔开。诸如:

<span class="hljs-keyword">chmod</span> g+r,o+r example
로그인 후 복사

这儿的意思是使同组和其他用户对文件example有读权限。

数字设定法

数字表示的属性的含意:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限。通过将三个值相减来得到要设置的权限。所以数字属性的格式应为3个从0到7的八补码数,其次序是(u)(g)(o)。诸如,假如想让某个文件的属主有“读/写”二种权限,须要把4(可读)+2(可写)=6(读/写)。数字设定法的通常方式为:

<span class="hljs-tag">chmod</span> <span class="hljs-attr_selector">[mode]</span> <span class="hljs-tag">file</span>…
로그인 후 복사

比如,将一个文件的权限设置为属主可读可写,同组用户可读可写,其他用户可读,则命令为:

chmod <span class="hljs-number">664</span> <span class="hljs-built_in">file</span> s
로그인 후 복사

linux 文件授权给用户_授权linux文件执行权限_linux授予用户文件权限

5、chgrp和chown命令

chgrp命令用于改动文件或目录所属的组。句型格式如下:

chgrp [-R] <span class="hljs-keyword">group</span> <span class="hljs-keyword">file</span>…
로그인 후 복사

该命令改动指定指定文件所属的用户组。其中group能是用户组IDred hat linux 下载,也能是/etc/group文件中用户组的组名。文件名是以空格分开的要改动属组的文件列表,支持转义。假如用户不是该文件的属主或终极用户,则不能改动该文件的组。-R参数递归式地改动指定目录及其下的所有子目录和文件的属组。诸如改动/opt/local/book/及其子目录下的所有文件的属组为book:

chgrp –R book /opt/<span class="hljs-keyword">local</span> /book
로그인 후 복사

chown命令用于修改某个文件或目录的属主和属组。这个命令也十分常用。诸如root用户把自己的一个文件拷贝给用户huoty,为了让用户huoty才能存取这个文件,root用户应当把这个文件的属主设为huoty,否则,用户huoty难以存取这个文件。句型格式如下:

<span class="hljs-tag">chown</span> <span class="hljs-attr_selector">[选项]</span> 用户或组 文件
로그인 후 복사

chown将指定文件的拥有者改为指定的用户或组。用户能是用户名或用户ID。组能是组名或组ID。文件是以空格分开的要改动权限的文件列表,支持转义。该命令的各选项涵义如下:

-<span class="ruby">-c 显示更改的部分的信息
</span>-<span class="ruby">f 忽略错误信息
</span>-<span class="ruby">h 修复符号链接
</span>-<span class="ruby"><span class="hljs-constant">R</span> 处理指定目录以及其子目录下的所有文件
</span>-<span class="ruby">v 显示详细的处理信息
</span>-<span class="ruby">deference 作用于符号链接的指向,而不是链接文件本身</span>
로그인 후 복사

使用例示:

改变文件的所有者:

<span class="hljs-title">chown</span> www-<span class="hljs-typedef"><span class="hljs-keyword">data</span>: test</span>
로그인 후 복사

改变文件的所属组:

chown <span class="hljs-symbol">:www-data</span> test
로그인 후 복사

同时改变文件的所有者和所属组:

<span class="hljs-tag">chown</span> <span class="hljs-tag">huoty</span><span class="hljs-pseudo">:huoty</span> <span class="hljs-tag">test</span>
로그인 후 복사

站在巨人的右臂上

위 내용은 Linux 파일은 사용자에게 권한이 부여됩니다. Linux 보안 모델: 광범위한 제한이 빡빡하고 시간이 정체될 만큼 충분합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SED 명령으로 텍스트 조작을 마스터 링합니다 SED 명령으로 텍스트 조작을 마스터 링합니다 Mar 16, 2025 am 09:48 AM

SED 명령으로 텍스트 조작을 마스터 링합니다

필레 : 라즈베리 파이로 구동되는 모듈 식 휴대용 미니 컴퓨터 필레 : 라즈베리 파이로 구동되는 모듈 식 휴대용 미니 컴퓨터 Mar 06, 2025 am 10:11 AM

필레 : 라즈베리 파이로 구동되는 모듈 식 휴대용 미니 컴퓨터

Linux 커널 소스 코드는 4 천만 줄을 능가합니다 Linux 커널 소스 코드는 4 천만 줄을 능가합니다 Mar 05, 2025 am 09:35 AM

Linux 커널 소스 코드는 4 천만 줄을 능가합니다

Linux에서 파일 및 디렉토리 계산 방법 : 초보자 안내서 Linux에서 파일 및 디렉토리 계산 방법 : 초보자 안내서 Mar 19, 2025 am 10:48 AM

Linux에서 파일 및 디렉토리 계산 방법 : 초보자 안내서

Linux 시스템을 Liporix 커널로 과급하는 비밀 무기 Linux 시스템을 Liporix 커널로 과급하는 비밀 무기 Mar 08, 2025 pm 12:12 PM

Linux 시스템을 Liporix 커널로 과급하는 비밀 무기

자신의 우분투 개인 클라우드 구축 : 안전한 데이터 피난처 생성을위한 단계별 가이드 자신의 우분투 개인 클라우드 구축 : 안전한 데이터 피난처 생성을위한 단계별 가이드 Mar 05, 2025 am 11:02 AM

자신의 우분투 개인 클라우드 구축 : 안전한 데이터 피난처 생성을위한 단계별 가이드

Linux의 여러 그룹에 사용자를 추가하는 방법 Linux의 여러 그룹에 사용자를 추가하는 방법 Mar 18, 2025 am 11:44 AM

Linux의 여러 그룹에 사용자를 추가하는 방법

System76은 Meerkat Mini PC : Big Power를 작은 패키지로 소개합니다. System76은 Meerkat Mini PC : Big Power를 작은 패키지로 소개합니다. Mar 05, 2025 am 10:28 AM

System76은 Meerkat Mini PC : Big Power를 작은 패키지로 소개합니다.

See all articles