▼ 사용자 및 그룹
자원 할당 :
인증 : 인증
권한 : 권한 부여
회계 | 오디션 : 감사
사용자 사용자
리눅스 사용자 : 사용자 이름 / UID의
관리자 : 루트, 0
일반 사용자 : 1-60000 자동 분배
시스템 사용자 : 1-499, 1-999 (CentOS7)
데몬 할당 권한에 대한 리소스에 대한 액세스
사용자가 로그인 할 때 : 500 + 1000 + ( CentOS7)
대화 형 로그온
그룹 그룹
리눅스 그룹 : 그룹 이름 / GID
관리자 그룹 : 뿌리, 0
정상 그룹 :
시스템 그룹 : 1-499, 1-999 (CENTOS7)
일반 그룹 : 500 + 1000 + (CENTOS7)
리눅스 보안 컨텍스트
실행 프로그램 : 프로세스 (과정)
하여 프로세스의 개시로 실행 :
루트 : / 빈 / CAT의
MAGE : / 빈 / 고양이
프로세스의 리소스에 액세스 할 수있는 권한은 프로세스 실행하는 사람의 신원에 따라
분류 리눅스 그룹을
사용자의 주 그룹 (기본 그룹)는
사용자가 하나 개의 그룹 만 한 주에 속해 있어야합니다
사용자 이름과 그룹 이름, 그리고 단 하나의 사용자, 그룹 개인 포함
사용자 (보충 그룹)의 추가 설정을
사용자가 0 개 이상 추가 그룹에 속할 수 있습니다
▷ 사용자 그룹 프로파일
메인 구성 파일 :
은 / etc / Passwd 파일 : 사용자와 (이름, UID, 주 그룹 ID) 자신의 속성 정보
은 / etc / 그룹 : 그룹 속성 정보와
은 / etc / 그림자 : 사용자 비밀번호 관련 속성
을 / etc / gshadow 파일 : 그룹 암호 및 관련 속성
passwd 파일 형식
[루트 @의 centos7 ~] $ 고양이 / etc / passwd에 첸 : X : 1000 : 1000 : 첸 : / 홈 / 첸 : / 빈 / bash는
1.login 이름 : 이름 (왕) 로그인
암호 (X 축) : 2.passwd
3.UID : 사용자 식별 번호 (1000)
4.GID : 기본 그룹 번호 (1000)에서 로그인
이름이나 주석 : 5.GECOS
6.home 디렉토리 : 사용자의 홈 디렉토리 (/ home / 왕)
7.shell : 사용자의 기본 쉘 (/ 빈 / bash는)
그림자 파일 형식
[루트 @의 centos7 ~] $ 고양이의 / etc / 그림자 첸 : * : 0 : 99999 : 7 :::
1. 이름으로 로그인
일반적으로 사용 SHA512 암호화 : 2. 사용자 암호
암호가 변경 될 때 마지막 재생 3. 1970년 1월 1일에서
4. 암호 (0 수단은 언제든지 변경 될 수 있습니다) 몇 일에서 변경 될 수 있습니다
암호를 변경해야 며칠 5. (99999이 만료되지 않습니다 나타냅니다)
암호는 사용자 (기본 일주) 경고 시스템을 만료 6. 며칠 전에
계정 암호가 몇 일 후에 만료 잠 깁니다 7
년 1 월 1970 8 첫번째 날짜, 일수가 실패 계정
그룹 파일 형식
그룹 이름 : 그룹 이름은이다
암호를 설정하는 것이 필요 없음을 / etc / gshadow 파일에 기록됩니다 그룹 암호를 입력합니다. 그룹 설정 암호 (단지 암호를 알고에) 일반 사용자가 그룹에 가입 할 수 있도록
그룹 ID입니다 다음 GID가
추가 그룹 (구분 쉼표)의 현재 사용자 그룹 목록
, vigr VI의 / etc / 그룹에 해당
gshdow 파일 형식을
그룹 이름 : 그룹의 이름입니다
: 그룹 암호
목록은 그룹 암호를 변경하고 그룹의 구성원 관리자 : 그룹 관리자 목록
사용자 목록의 현재 그룹 추가 그룹 : 쉼표로 구분 된 다수의 사용자
vigr는 해당 -s VI의 / etc / gshadow 파일
▼ 파일 권한
하거나 pwck과는 grpck
사용자 관리 명령
1.useradd
2.usermod
3.userdel
4.id
5.su
6.passwd
7.chage
그룹 계정 관리 명령
1.groupadd
2.groupmod
3.groupdel
4.gpasswd
5.groupmems
6.groups
▷ 사용자 관리 명령
● 새로운 사용자 관련 파일 및 명령
파일 관련
은 / etc / 기본 / useradd와
의 / etc / skel이 / *이
같은 /etc/login.defs
초보자들 passwd 파일 형식 배치는 사용자 생성
chpasswd 대량 사용자 암호를 수정
useradd와用户创建:
은 useradd [옵션] LOGIN
-u UID
에 확인 UID 고유성과 -o -u 옵션
기본 그룹 사용자가 GID 그룹 이름, 소속, 또는에 지정된 -g GID
-c를 "주석"사용자 주석 정보
-d HOME_DIR 홈 디렉토리 (없음) 지정된 경로
사용자의 기본 쉘 -s 쉘, 파일 사용 가능을 / etc / 쉘의 목록에 지정된
-G GROUP1을 [GROUP2, ...] 사용자가 추가 그룹, 이전 대상 그룹을 지정하기 위해 존재는
그룹 사용자 그룹을 사용하여 샷, 민간 단체의 단체 사진을 만들 수 없습니다 -N
시스템 사용자를 생성 -r 6 CentOS는 :. ID <500의 CentOS는 7 :. ID <1000
-m 시스템의 사용자를위한 홈 디렉토리 생성
-M의 홈 디렉토리가 만들어지지 않습니다 비 시스템 이용자
usermod에 [옵션] USERNAME "사용자 속성 수정"
하고 usermod [옵션] 로그인
-u UID : 새로운 UID
-g GID : 새로운 주요 그룹
-G GROUP1이 [GROUP2이 ... [ , GROUPN가]]] : 새로 추가 된 그룹은 원래 그룹이 추가로 적용됩니다, 당신은 유지하는 경우 원래, -a 옵션을 사용해야합니다
새 기본 SHELL의 : -s SHELL
-c '주석': 새 주석 정보
-d 홈 : 홈 디렉토리가 자동으로 생성되지 않습니다, 새로운 홈 디렉토리 및 이동 주택 원본 데이터를 만들려면 한편 -m 옵션
-l login_name은 : 새 이름
-L : 지정된 사용자를 잠금,은 / etc / 그림자 비밀 번호 표시 줄에 증가!
-U :! UNLOCK 지정된 사용자는 / etc / 암호 필드를 그림자하는 것은 제거
-e YYYY - MM-DD : 사용자 계정의 유효 기간을 나타냅니다
비 활동 기간을 설정 : 비활성 -f가
SU [옵션 ...] [-] [사용자 [인수는 ...]] "사용자 전환하거나 다른 사용자로 명령을 실행"
사용자 전환 방법 :
SU 사용자 이름 : 대상 사용자의 프로필을 읽지 않습니다 nonlogin 형 스위치는, 현재 작업 디렉토리를 변경하지 않습니다
스와 - 사용자 이름 : 로그 타입 스위치, 대상 사용자의 프로필을 읽고, 홈 디렉토리로 전환 완전히 전환
암호없이 다른 사용자에게 루트 SU를 비 - 루트 사용자 암호를 전환 할 필요가
신원 실행 변경 :
SU [-] 사용자 이름을 -C '명령'
- UserName의 SU는 -l UserName의 SU 대응
passwd에 [옵션] 사용자 이름 "암호"
일반적인 옵션 :
-d : 지정된 사용자 암호 삭제
-l을 : 지정된 사용자 잠금
-u를 : 특정 사용자의 잠금을 해제하려면
강제로 사용자가 다음 로그온시 암호를 변경 : -e
-f : 강제로 작업
-n mindays 사용의 최소 기간을 지정
-x maxdays를 : 최대 사용 기간
-w warndays : 사전에 많은 일을 경고하기 시작했다 방법
-i inactivedays을 : 비활성 기간
--stdin 옵션 : 표준 입력에서 사용자 암호를 수신
예 : "비밀번호"에코 | passwd를 --stdin 옵션을 USERNAME
사용자 암호 정책을 수정합니다 :
CHAGE [OPTION] ... LOGIN
-d LAST_DAY
-E --expiredate EXPIRE_DATE
-I --inactive INACTIVE
-m --mindays MIN_DAYS
-M --maxdays MAX_DAYS
-W --warndays WARN_DAYS
-l显示密码策略
다른 사용자 관련 명령 :
- chfn 명령은 개인 정보를 지정
- chsh 명령 지정된 쉘
- 손가락
관련 명령의 그룹
그룹 생성
groupadd [옵션]을 ... GROUP_NAME는
GID GID 번호 지정 -g [GID_MIN, GID_MAX]
-R 및 LT는 시스템 그룹 작성
에 CentOS 6 : ID <500.
CentOS는 7 : ID <1000.
그룹 수정 삭제
편집 그룹 속성을 : groupmod
groupmod [OPTION] ... 그룹
-n GROUP_NAME : 새 이름
-g GID : 새 GID
그룹 삭제 : groupdel
그룹을 groupdel
변화와 뷰 그룹 멤버
groupmems [옵션] [액션]
옵션 :
-g, --group GROUPNAME 지정된 그룹 (root 만)로 변경
작업 :
-a, --add 이름 그룹에 가입하기 위해 사용자 지정
, --delete 사용자 이름이 그룹에서 사용자를 삭제 -d를
- p는, 상기 그룹의 모든 멤버에서 제거 --purge
-l, --list 그룹 구성원의리스트 디스플레이
그룹 [옵션]. [USERNAME는] ... 그룹 목록을 보는 사용자가 속한
파일 권한
- 주요 파일 사용 권한은 객체의 세 가지 유형에 대해 정의
- 그것은 유, 주요 소유자
- 그룹은 그룹 g이고
- 다른 기타, 오
- 각 클래스의 각 파일은 세 방문자가 권한이 정의
R 컨텐츠 얻을 수있는 파일 뷰어 클래스 도구를 사용하여
컨텐츠 수정할 수 있습니다 w를
커널을 끌기 위해이 문서를 넣을 수 있습니다 x는 프로세스 시작
디렉토리 :
R 당신은 파일 목록에서이 디렉토리를 볼 수 LS를 사용하여
도 될 수이 디렉토리에 파일을 만들 수 있습니다 승 디렉토리에있는 파일 삭제
파일 메타 데이터를 볼 ls -l로 사용할 수 X를 사용하면, 디렉토리에 CD를이 디렉토리에 있습니다 (R과 호환 가능해야합니다)
X X에만 디렉토리 권한이 아닌 권한 X 파일에
소유자와 개질 파일의 그룹
소유자 수정 된 파일 : 대한 Chown에
대한 Chown [옵션들은] ... [소유자] [실체는] ...은 FILE
명령들은
OWNER의
OWNER : 그룹
: 그룹은 대장도 대체 될 수있다.
-R : 재귀
대한 Chown [OPTION] ... --reference = RFILE 파일 ...
상기 수정 된 파일의 그룹이다을 chgrp의
chgrp하지 [옵션] ... 파일 그룹
을 chgrp [옵션] = ... --reference FILE ... RFile
-R 및 재귀 LT
파일 권한을 수정
은 chmod [옵션]을 ... ...은 FILE 8 진수 MODE -
-R & LT : 수정하는 재귀 적 권한
은 chmod [옵션] ... 모드 [모드]를 ... ...은 FILE
모드 :
모든 사용자의 클래스를 수정 권한
U = g = UG = O A = U = g =
사용자 권한 또는 비트들의 특정 클래스에 의해 변형
U UG + O + + G- A- A + + O- -
은 chmod [옵션] ... - 참조 = RFILE 파일 ...
참조 RFILE 파일 권한 같은 RFILE에 대한 파일을 수정
파일 및 디렉토리합니다 (umask를)위한 새로운 기본 권한
의 umask 값은 생성 된 파일 권한을 유지하는 데 사용할 수 있습니다
새로운 기본 권한 파일 : 결과는 실행의 존재에 의해 얻은 경우 666 - umask를, (홀수) 권한은 그 권한 +1
777-의 umask : 새로운 디렉토리에 대한 기본 권한
권한이없는 사용자의 umask가 002 인
루트의 umask를가 022입니다
리눅스 파일 시스템에 대한 특별 권한 (SUID, SGID, 스티커)
과정에 대한 모든 실행 파일을 시작할 수 없습니다 (1) 프로그램의 개시는 파일이 실행 권한이 있는지 여부에 따라 달라집니다
, (2) 프로세스를 시작 한 후 해당 프로세스를 주요 그룹이 개시가된다, 프로세스의 개시는 그룹이 속하는입니다
(3) 파일에 액세스하는 과정은, 프로세스의 개시에 따라 달라 때 권한을
응용 프로그램 파일 속성 : 파일의 소유자와, (a)는 프로세스의 개시 주요 권리
개시 (b)는 프로세스, 속 그룹에 속하는 파일, 응용 프로그램 파일이 권한 집합을하다
© 응용 프로그램 파일 "기타"권한
1.SUID "실행 파일에 대한 사용 권한"
모든 실행 파일은 프로세스를 시작할 수 없습니다 : 프로그램의 개시는 파일이 실행 권한이 있는지 여부에 따라
프로세스로 시작한 후, 소유자의 프로세스는 원본 파일의 소유자
SUID 바이너리 실행에만 유효
SUID 세트 무의미한 디렉토리
권한 :
chmod를 U +의 FILE ... 우리가 FILE chmod를 ...
SGID "실행 파일에 대한 사용 권한"
모든 실행 파일은 프로세스를 시작할 수 없습니다 : 프로그램의 개시는 파일이 실행 권한이 있는지 여부에 따라 달라집니다
과정으로 시작한 후, 원래의 프로그램 파일에 대한 프로세스의 그룹은 기이고
권한 :
chmod를 U +의 FILE ... 우리가 FILE chmod를 ...
디렉토리에 SGID 권한
이 사용자 그룹이 속하는 기본적으로 사용자의 기본 그룹에 속하는 파일을 만들 때
디렉토리가 SGID를 설정되면,이 디렉토리가이 디렉토리에 속하는이 디렉토리에 생성 된 파일의 사용자 그룹에 대한 쓰기 권한은 그룹입니다
종종 협력 디렉토리를 생성하는 데 사용
권한 :
는 chmod g의 DIR + S ... chmod를 GS DIR ...
[GPL @ centos7 test_dir] $ 터치 F1 [루트 @의 centos7의 test_dir] $ 게요 총 0 -rw-RW-r-- 사용. 왕 왕 1 0 5 월 16 5시 1분 F1 [루트 @의 centos7의 test_dir] $ chmod를 용의 g + S / 데이터 / test_dir [GPL @ centos7 test_dir] $ 터치 F2 [GPL @ centos7 test_dir] $ 게요 총 0 -rw-RW-r-- 사용. 왕 왕 1 0 5 월 16 5시 1분 F1 -rw-RW-r-- 사용. 왕 1 개 루트 0 5 월 16 5시 1분 F2 [GPL @ centos7 test_dir] $
3. 스티커 位
디렉토리는 일반적으로 사용자가 쓰기 권한이 파일 권한이나 소유권에 관계없이, 그 디렉토리에있는 파일을 삭제할 수 있습니다 가지고있다
스티키 비트는 소유자 만 또는 루트 파일이 파일을 삭제할 수 있습니다, 디렉토리에 설정되어
파일 스티커 의미 세트
권한 :
DIR t는 chmod 오 + ... chmod를 해주 DIR ...
허가 맵
SUID : 사용자 오너 실행 허가 비트 점유
S : 소유자는 X 권한 보유
오너 NOX를 허가 : S
그룹에 속하는 그룹 권한 비트 실행 점유 : SGID를
S : 그룹은 X 권한이없는
S를 그룹 : 질소 산화물 권한
스티커 : 다른, 다른 실행 권한 비트를 차지
X가 다른 허가 : t
T : 어떤 권한 X 다른
"위해 chattr 특정 파일 속성을 설정
chattr +i
당신은 변경, 삭제, 이름을 바꿀 수 없습니다 chattr +a
만 추가 콘텐츠 lsattr
표시 특정의 속성을
[루트 @의 centos7의 test_dir] $를 위해 chattr + I F1 키 [루트 @의 centos7의 test_dir] $ lsattr ---------------- ./f3 ---- I ----------- ./f1 [root@centos7 test_dir]$su wang [gpl@centos7 test_dir]$ mv f1 f111 mv: cannot move ‘f1’ to ‘f111’: Operation not permitted [gpl@centos7 test_dir]$
访问控制列表ACL
ACL:Access Control List,实现灵活的权限管理
除了文件的所有者,所属组和其它人,可以对更多的用户设置权限
CentOS7 默认创建的xfs和ext4文件系统具有ACL功能
CentOS7 之前版本,默认手工创建的ext4文件系统无ACL功能,需手动增加,方法如下:
tune2fs –o acl /dev/sdb1
mount –o acl /dev/sdb1 /mnt/test
ACL生效顺序:所有者,自定义用户,自定义组,其他人
所属组的权限变成mask的权限
所有权限不能超mask权限(除了user所有者的权限)
ACL文件上的group权限是mask 值(自定义用户,自定义组,拥有组的最大权限),而非传统的组权限
getfacl 可看到特殊权限:flags
通过ACL赋予目录默认x权限,目录内文件也不会继承x权限
base ACL #不能删除
setfacl -k dir # 删除默认ACL权限
setfacl –b file #清除所有ACL权限
getfacl file1 | setfacl --set-file=- file2 #复制file1的acl权限给file2
mask只影响除所有者和other的之外的人和组的最大权限
Mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限(Effective Permission)
用户或组的设置必须存在于mask权限设定范围内才会生效
setfacl -m mask::rx file
–set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能象-m一样只是添加ACL就可以
示例:
setfacl --set u::rw,u:wang:rw,g::r,o::- file1
备份和恢复ACL
主要的文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p 参数。但是tar等常见的备份工具是不会保留目录和文件的ACL信息
备份:getfacl -R /tmp/dir1 > acl.txt 删除:setfacl -R -b /tmp/dir1 恢复:setfacl -R --set-file=acl.txt /tmp/dir1 #方式2:setfacl --restore acl.txt 查看:getfacl -R /tmp/dir1
以上到此结束,想要继续看的,未完待续。