Security/리눅스

정보보안 스터디 - 6주차 6일 - 리눅스 사용자 권한, 압축기능

wonder12 2022. 11. 22. 22:09

 

☞ 리눅스 계정과 초기 계정 설정

 

root : 모든 기능이 사용가능합니다.

user : 일부 권한, 기능이 제한됩니다.

system : 서비스를 활성화할 때 사용합니다.

로그인할 때 자동으로 실행되지 않도록 되어있습니다.

 

 

이전 centos 버전에서는 계정에 대한 비밀번호를 

/etc/passwd 에 저장을 해놓았지만 현재 실제로는 /etc/shadow에 암호화되어서 저장됩니다.

만약 passwd에서 보이게 하려면 pwunconv로 설정을 해주면됩니다.

 

shadow 파일에서는 계정설정이 아래와 같이 구성되어있습니다.

$해시버전|$솔트 해시값|$솔트 해시값+비밀번호 해시값,

계정에 대한 주석

패스워드 변경한 날짜: 1970년 1월 1일을 기준으로 사용가능한 기간을 더하면 유효 기간이 나옵니다.

비밀번호 변경이 불가능한 기간: 0으로 되어있다면 변경이 가능합니다.

사용가능한 기간: 99999로 되어있다면 무제한으로 가능합니다.

계정의 만료기간

 

 

해시 특성상 복호화가 안되지만 비밀번호가 같다면 해시값이 같기 때문에 공격자들이 레인보우 테이블을 보고 쉽게 짐작할 수 있습니다.

그래서 비밀번호는 같지만 랜덤으로 솔트값을 줘서 해시처리를 한다면 해시값이 서로 완전 달라지기 때문에 짐작이 어렵습니다.

 

passwd 파일에서는 

계정 번호와 그룹번호를 볼 수 있으며 

홈디렉토리 위치

쉘 종류인 bin/bash를 볼 수 있습니다.

 

해당 사항은 /etc/default/useradd 파일에서 계정 초기 세팅을 위한 설정을 할 수 있습니다.

 

 

/etc/skel 디렉토리는 전부 숨김 파일로 되어있는데 초기 세팅 파일들을 여기에 넣으면

계정을 새로 만들 때 공지사항 등 공유가 가능합니다. 

 

 

게정삭제는 메일과 홈디렉토리에 파일이 남기 때문에

모두 지우려면 userdel -r user11 해줍니다.

 

 

 

 

☞ 그룹 지정하기

 

그룹을 사용하는 이유는

권한을 줄 때 하나하나 수작업으로 할 수 없으니

그룹을 지정해서 권한을 줍니다.

 

 

여러계정을 한그룹에 넣고 싶을 때는 아래와 같이합니다.

useradd user11
useradd user22
useradd user33


groupadd group1

usermod -g group1 user11
usermod -g group1 user22
usermod -g group1 user33

groups user11 user22
으로 확인합니다.

 

 

한 계정을 여러 그룹에 넣고 싶을 때는 아래와 같이합니다.

groupadd group2
groupadd group3

useradd -g group1 -G group2 group3 user33
으로 유저계정을 만들면서 한번에 넣어줍니다.

groups user33
으로 그룹에 들어간것을 확인가능합니다.

 

 

 

☞ 사용자 권한

 

사용자 권한은

-|rwx|rwx|rwx|

순서대로 읽기, 쓰기, 실행 권한이며

소유자, 그룹, 모든사용자에 대한 권한입니다.

 

 

 

 

☞ 리눅스 zip 압축

 

윈도우에서는 디렉토리를 모아서 압축하는 개념이지만

리눅스에서는 파일 하나에 대한 압축을 하는 개념입니다.

 

 

gzip

파일 압축
touch file1
gzip file1.gz file1
mkdir dir1
touch dir1/file1
touch dir1/file2
touch dir1/file3
touch dir1/file4

gzip -r dir1
디렉토리를 압축해주는 게 아니라
디렉토리안에 있는 파일들이 각각 압축됩니다.

ls -l dir1 로 압축 된 것을 확인 가능합니다.
압축된 파일은 cat으로 읽을 수 없고 bzcat으로 읽을 수 있습니다.
압축풀기는 unzip보다는 -d를 많이 사용합니다.
gzip -d 
gzip -dr dir1
gzip -k
원본파일이 압축파일로 바뀌기 때문에 원본파일을 유지합니다.
gzip -f
원본에 대한 압축파일이 있어도 강제로 덮어씌웁니다.

 

 

 

bzip2

touch file2
bzip file2.bz file2
디렉토리에 대해 압축할 수 없고 각각 개별적으로 압축해야합니다.
bzip -d file2.bz
압축풀기

 

 

tar

아카이빙 모아주는기능이며

압축기능은 없습니다.

 

tar c모으기v진행상태확인f파일지정 file.tar(파일이름+형식) file1 file2 ...
형식으로 사용합니다.
tar tf file.tar
파일 내용을 봅니다.
tar xf file.tar
아카이빙 풀기
tar cf dir1.tar dir1
디렉토리 여부와 상관없이 아카이빙 가능합니다.

 

 

 

압축 후에 아카이빙을 해도 되지만 손이 많이 가기 때문에

아카이빙을 하면서 압축을 합니다.

tar z : gzip
tar j : bzip2
압축하기
tar czf file11.tar.gz file1
풀 때도 
tar xfz