2023-08-09 17:39:42
728x90
728x90

메타데이터 정보 분석


 1. 원본
-rw-r--r--  1 root root 445 8월 8 11:54 korea.txt
 2. 분석
- :파일 -, 디렉토리 d, 심볼릭링크 l
rw- :소유주(owner)권한, u, r 읽기 4, w 쓰기 2, x 실행 1
r-- :그룹(group)권한, g, r 읽기 4, w 쓰기 2, x 실행 1
r-- :기타사용자(other), o,r 읽기 4, w 쓰기 2, x 실행 1
. :acl . 설정안되어 있는 상태, +는 설정된 상태 설정되있으면 각기 다른 권한을 부여함.
1  :파일이라면 hardlink 갯수, 디렉토리라면 디렉토리의 디렉토리 갯수
root  :소유주
root :그룹
445 :size
8월 8 11:54  :파일이나 디렉토리를 마지막으로 수정한 시간
korea.txt :name

chmod 권한변경 명령어
chmod u+x a.txt 실행 권한 부여
실행권한이 없어도 실행시키기 sh 명령어
chmod g-w,o+x a.txt 그룹엔 쓰기권한을 뺴고 기타사용자엔 실행권한 추가 ,로 구분
chmod a-r a.txt a는 all

8진수로 권한변경
chmod 777 모든권한부여 읽기 4, 쓰기 2, 실행 1



umask


 1.3.1. 파일은 생성을 하면 최고권한은 666, 디렉토리는 777 풀권한으로 생성이되면 보안상 문제
    파일이나 디렉토리는 umask값만큼 최고권한에서 권한을 제거하고 생성된다.


user 관련 명령어

 

useradd 추가할 사용자이름
passwd 추가할 사용자이름
패스워드 입력

useradd -u 10000 b UID 지정 생성

useradd -g 1000 -G 10000 사용자이름   -g 사용자 그룹변경 -G 추가로 다른 그룹에 속하게
그룹에 추가해서 생성할때는 존재하는 그룹에 생성해야함


gpasswd -d a b 사용자를 그룹에서 제거
-a는 추가

vi /etc/group 로 그룹 추가 제거 가능

userdel -r 삭제할 사용자이름  r은 꼭 써줄것

usermod -d 변경할 홈디렉터리경로 -m 사용자이름
-c 코멘트(설명) 추가

echo "문자열"    문자열을 컴퓨터 터미널에 출력하는 명령어
echo "패스워드입력" | passwd --stdin 사용자이름              패스워드 변경 한줄로 하기

id 사용자이름        UID,GID,Group 확인

 

chown


chown a a.txt 소유주 변경
chown :b a.txt 그룹 변경
chown root:root a.txt 소유주,그룹 변경
chown -R a:b 1 하위디렉토리까지 소유주,그룹 변경

truncate -s 10M babo babo라는 파일을 용량을 10M로 만든다. 용량테스트 불가
dd if=/dev/zero of=./파일명 bs=용량 count=1 용량테스트 가능

MAC time
Modify 내용 수정
Access 접근한 시간
Change 권한 변경

stat 파일이름    MAC time 자세히 보기
다른사용자로 로그인 su - 사용자이름

head -n 출력할 줄수만큼 숫자  /경로입력
tail -n 출력할 줄수만큼 숫자 /경로입력          밑에서부터 

 

acl 설정


# setfacl -m u:a:rwx,g:a:rwx,o::rwx 파일명 acl사용법
# getfacl 파일명 acl 확인
# setfacl -x u:a 파일명    특정 사용자에 대한 acl만 삭제
# setfacl -b 파일명 모든 사용자에 대한 acl 삭제

 


사용자 및 그룹 관리


 1 연관파일 및 디렉토리
   1.1. /etc/passwd :사용자ID, 패스워드, UID, GID, 코멘트, 홈디렉토리위치,login shell
  1.2. /etc/group :그룹ID, 패스워드, GID, 그룹에 속한 사용자
  1.3. /etc/shadow :사용자ID, 암호화된 패스워스, 마지막으로 패스워드 변경날짜(1970년1월1일 기준),    패스워드 최소 사용일, 패스워드 최대 사용일,경고메시지 출력일,유예기간,계정의 만료일
  1.4. /etc/login.defs :기본그룹, 홈디렉토리 위치, 유예기간, 계정 만료일, login shell, skel위치, 메일사서함 생  성 여부
  1.5. /etc/default/useradd   :메일사서함위치, 패스워드 만료일, 패스워드 최소 사용일,최대 사용일, 암호의 길이
  UID범위, GID범위, 패스워드 암호화 방식, 사용자 생성시 그룹 자동 생성 여부
  1.6. /etc/skel  얘만 디렉토리 :사용자 생성시 자신의 홈디렉토리에 자동으로 생성되는 파일 및 디렉토리 지정

2./etc/passwd
 2.1 원본
a:x:1000:1000::/home/a:/bin/bash
 2.2 분석
a 사용자의 ID
:x 패스워드
:1000 UID 고유값 /etc/login.defs(1000~60000) -u
:1000 GID  /etc/login.defs(1000~60000) -g -G
: 코멘트(설명) -c
:/home/a 사용자의 홈디렉토리 위치 -d 단 usermod변경시에는 반드시 -m 사용
:/bin/bash login shell(명령어 해석기) -s /sbin/nologin /bin/false
bash, sh

728x90