[명령어] - 사용자 및 파일 권한 관리 명령어

2023. 8. 7. 15:32Programming/ETC

  • 해킹을 수행, 방어하기 위해서 리눅스 핵심 구성 요소인 사용자와 파일의 권한에 대한 학습이 필요
  • dr~ : 파일의 형식과 권한을 표시
  • skyriv~ : 해당 파일과 디렉터리의 사용자와 그룹의 소유권을 의미
- rwx rwx rwx
파일 형식 사용자(user)권한 그룹(group)권한 기타 사용자 권한
1번 2~4번 5~7번 8~10번
- : 파일 r : 읽기 권한 r : 읽기 권한 r : 읽기 권한
d : 디렉터리 w : 쓰기 권한 w : 쓰기 권한 w : 쓰기 권한
s : 소켓 파일 x : 실행 권한 x : 실행 권한 x : 실행 권한
종류 파일 디렉터리
r : 읽기 권한 파일 읽기, 복사(cp 명령어) 가능 ls 명령어로 디렉터리 내 목록 조회 가능
w : 쓰기 권한 파일 수정, 이동, 삭제 가능 (rm 명령어, mv 명령어 가능) 디렉터리 내 파일을 생성, 삭제 가능
x : 실행 권한 파일 실행 가능(실행 파일, 셸 스크립트) cd 명령어로 디렉터리 접근 가능(읽기 권한이 없다면 ls 불가)
유형 설명 소유자 변경 명령어
사용자 파일의 소유자 chown
그룹 해당 파일의 그룹 정보 chgrp
기타 사용자 소유자, 그룹에 속하지 않는 모든 사용자  

 

  • whoami
    • 현재 로그인한 사용자가 누구인지 확인하는 명령어
  • addUser / useradd
    • 사용자 추가
    • addUser <사용자명>
    • -d : 홈 디렉터리
    • -g <그룹 Id> or -G <그룹명>
    • 사용자 추가, 제거, 확인 등이 일반 사용자는 실행불가한 명령어는 sudo를 사용해서 root 권한으로 실행해야한다
  • userdel
    • 사용자 삭제
    • 기존 사용자를 제거하려할 때 사용
    • userdel <사용자명> 형식 : 해당 사용자 제거
  • usermod
    • 사용자 변경
    • 사용자의 설정(홈 디렉터리, 비밀번호, 그룹명 등)
    • usermod <옵션> <사용자명>
    • 옵션
      • -d : 홈 디렉터리 변경
      • -g : 그룹 id 변경
      • -p : 비밀번호 변경
  • chmod
    • 파일 권한 변경
    • 파일과 디렉터리의 소유자별 읽기, 쓰기, 실행권한 변경을 위해 사용
    • chmod <권한> <파일명>
      • 권한
        • r,w,x 기호를 이용하는 방식
        • 2진수의 비트 형태로 표현하는 방식
    • ex
      • chmod u+rw abc.txt
        • 소유자 권한에 읽기, 쓰기 권한을 추가
      • 비트 형태
        • 아홉 자리로 앞에 세자리는 사용자, 중간 세 자리는 그룹, 마지막 세자리는 기타 사용자
  • su
    • 사용자 전환 코드
      • su - <사용자명>
  • chown
    • 파일 소유권 변경
    • chown <변경 사용자> <파일명>
    • 소유권 변경 명령어도 파일 소유자 및 root만 실행 가능
  • chgrp
    • 파일의 그룹명을 변경하기 위해 chgrp
    • chgrp <변경 그룹> <파일명>
  • umask
    • 초기 파일 접근 권한 설정
    • 파일이나 디렉터리를 생성할 때 적용되는 접근 권한을 설정할 때 사용
    • 옵션 없이 실행 시 현재 초기 파일 접근 권한이 출력
    • 옵션
      • -s : 활용하면 비트로 출력되는 접근 권한을 r,w,x와 같은 문자로 출력 가능
    • 초기 파일 접근 권한 변경 시 umask <마스크 값> 입력
    • umask의 비트 계산 방법은 파일의 최대 권한(666), 디렉터리 최대 권한(777)에서 마스크 값을 빼는 방식

 

 

'Programming > ETC' 카테고리의 다른 글

[DevOps] 데브옵스란?  (0) 2023.11.28
[Etc] 5.리눅스 편집기  (0) 2023.08.08
[ETC] 4.서비스 관리 명령어  (0) 2023.08.08
[ETC] 3.네트워크 관리 명령어  (0) 2023.08.08
[CLI] 리눅스 기본 명령어  (0) 2023.08.06