[Linux] Ubuntu 계정 권한 설정

SANG JONG CHOI·2023년 4월 1일
0

Ubuntu 22.0.4 LTS

목록 보기
3/9

우분투 리눅스를 설치할 때 sudo 권한(관리자 권한)이 필요할 때가 종종 있다.
sudo 권한이 없으면 접근 권한이 있는 디렉토리로 변경하거나 sudo su 명령어를 통해 root 계정으로 컴파일 설치할 수 있는데 이는 보안상 위험하여 일반 계정에 관리자 권한을 부여하여 사용한다.

1. 권한 조사

현재 로그인 되어있는 사용자 계정 확인

whoami

현재 사용자가 갖고 있는 권한(그룹 포함) 확인

id

우분투 설치시 생성한 계정의 권한 확인

groups

사용자 전체 계정 확인

sudo cat /etc/passwd
사용자 계정 표시 양식
사용자명:패스워드:계졍UID:계정GUI:이름:홈디렉토리:로그인쉘
root:x:0:0:root:/root:/bin/bash 							#슈퍼유저
user1:x:1000:1000:user1:/home/user1:/bin/bash 				#사용자계정
www-data:x:33:33:www-data:/var/www:/usr/bin/sbin/nologin	#서비스계정
참고 계정(UID)
0 : root
1~99 : predefined
100~999 : administrative and system accounts
1000~ : user

사용자 추가(생성 시 관리자 권한 필요, sudo 필요)

sudo adduser 계정명 

계정에 관리자 권한(sudo 권한) 부여

sudo usermod -aG sudo 계정명 

파일, 폴더 권한

파일 또는 디렉토리를 조회하면 아래와 같이 보일 것이다.

rwxr-xr-x 1 root root 5720 Jul  3 20:06 a.out
rw-r--r-- 1 root root 722 Jul  2 21:12 crontab.bak

출력 결과는 각각 파일종류 및 권한(퍼미션), 링크수, 사용자(소유자), 그룹, 파일크기, 수정시간, 파일이름을 나타낸다.

파일의 권한은 '-rwxr-xr-x'으로 확인할 수 있고

소유권은 'root root'으로 확인할 수 있다.

앞에 있는 root 사용자를 나타내고, 뒤에 있는 root 그룹을 나타낸다.

(리눅스에서는 기본적으로 사용자와 동일한 이름의 그룹을 만든다.)

권한 정보

앞에서부터 3자리씩 끊으면 각각의 권한을 알 수 있다.

파일(-), 디렉토리(d)를 구분

rwx  사용자(owner, 소유자) 권한(퍼미션)

r-x  그룹(group) 권한

r-x  다른 사용자(other) 권한
r : 파일 읽기 권한 - 4 
w : 파일 쓰기 권한 - 2
x : 파일 실행 권한 - 1 

파일의 권한 변경

chmod [변경될 퍼미션값] [변경할 파일]

#예시
chmod 777 hello/[파일 또는 디렉토리]			# 숫자를 사용해 rwx를 모든 구분에 적용
chmod u+x hello.txt 						# user에 x(실행) 권한 추가
chmod g+rw hello.txt						# group에 rw(읽기/쓰기) 권한 추가
chmod o+rx hello.txt						# other에 rwx(읽기/쓰기/실행) 권한 추가
chmod +x hello.txt							# 모두에게 x(실행) 권한 추가
chmod 755 ./[파일 또는 디렉토리]				# 소유자에게는 모든 권한, 그룹과 공개 권한은 읽기, 실행
chmod -R 755 ./[파일 또는 디렉토리] 			# 하위 디렉토리까지 전부 권한을 부여하고 싶은 경우 사용 

파일 소유권 변경 (소유자, 그룹)

chown [변경할 소유자] [변경할 파일]


#예시
chown -R userA:userA ./[파일 또는 디렉토리] 	# 하위 디렉토리, 파일도 동일한 오너쉽 부여
chown user1 hello.txt 						# 해당 파일의 소유자를 user1로 변경
chown user1:user1 hello.txt					# 해당 파일의 소유자와 그룹을 모두 user1로 변경
chown :user1 hello.txt						# 해당 파일의 그룹을 user1로 변경

계정 이름 변경

sudo usermod -l 변경 원하는 계정명 바꾸려는 계정명

#home 디렉토리 계정명 변경
sudo usermod -d /home/바꾸려는 계정명 -m 바꾸려는 계정명

계정 삭제

sudo deluser 계정명
sudo rm -r /home/계정명

계정 비밀번호 변경

#비밀번호를 변경하길 원하는 계정에 접속
passwd 

# root 계정인 경우 sudo를 생략할 수 있다.
sudo passwd 계정명

[출처] : https://jimnong.tistory.com/1271, https://hooongs.tistory.com/239

profile
No error, No gain

0개의 댓글