1. sudo
: sudo 명령어는 유닉스 및 유닉스 계역 운영 체제에서,
다른 사용자의 보안 권한, 보통 슈퍼유저(루트뤈한)으로서 프로그램을 구동할 수 있도록 하는 프로그램
명칭은 본래 슈퍼유저로서의 실행에 사용되던 "superuser do"에서 유래하였으나, 후에 기능이 확장되어
"substitute user do"(다른 사용자의 권한으로 실행)의 줄임말로 해석되게 되었다
기본적으로 sudo는 사용자 비밀번호를 요구하지만 한 터미널에 한번만 입력하고, 다음부터는 필요 없다
2. 사용하는 이유
관리자 권한을 부여하기 위해 root 계정의 암호를 공유하는 방식은 root 계정을 향한 공격의 지름길
그래서 대안으로 root 계정 자체가 아닌, 개별 사용자가 한시적으로 관리자 권한을 취득할 수 있게 한다
3. su와 sudo의 차이점 (+)
sudo는 현재 계정에서 단순히 root의 권한만 빌리는 것 --> root에 준하는 능력
반면 su는 현재 계정에서 root계정으로 전환하는 명령어 --> root 패스워드 필요, 아예 root로 명령자가 바뀜
또 su - 는 다른계정으로 전환 + 그 계정의 환경변수 적용
//sudo에 대한 건 잘 와닿지 않는다....
4. root
유닉스 계열의 운영체제에서 모든 권한을 가지고 있는 최고 관리자가 사용하는 ID, 또는 최고 관리자인 사람 자체
유닉스 계열의 모든 운영체제에는 이 root유저가 존재한다
절대적인 존재 -> 운영체제의 모든 것을 제어할 권리를 가짐 (시스템을 파괴할 권한을 포함->rm -rf / )
리눅스 운영체제에서는 기본적으로 컴퓨터 주인의 계정 또한 root보다 권한이 낮은 일반 사용자로 만들어지며,
시스템 관리 작업 등을 할 경우엔 sudo라는 명령을 사용하여 임시 root권한을 얻는다
참고로 sudo에 명령어 대신 쉘을 집어넣어 사용하면 루트쉘로 진입하는데,
이 루트쉘을 띄우는 것이 해커들의 궁극적 목표 (루트쉘은 #, 일반 사용자는 보통 $ 프롬프트)
5. 왜 주인인 나도 일반 유저?
안전과 보안을 위한 필수불가결한 조치
시스템 설정을 변경해서 항상 root상태로 있을 수는 있는데 굉장히 위험
예를 들어 rm -rf / 를 일반 사용자 계정에서 실행하면 권한 없음 에러를 내며 시스템이 거부하지만,
root계정일 경우엔 바로 실행을 해버린다
* rm -rf /
유닉스 계열의 운영체제에서 최상위 디렉토리 밑에 있는 모든 파일과 디렉토리를 삭제하고 마지막으로 자기 자신까지 삭제하는 명령어
rm은 파일을 삭제하는 명령어, sudo는 root의 권한으로 실행한다는 말, -rf는 옵션
-r : recursive는 폴더를 삭제하기 위해 재귀적 삭제를 실행하도록 하는 옵션
-f : force는 읽기 전용처럼 액세스 권한이 없는 파일도 강제로 삭제하는 옵션
'System' 카테고리의 다른 글
ㅂ ㅏ ㅁ ㄹ ㅐ ㅂ 0+1 (0) | 2019.10.08 |
---|---|
16진수 (0) | 2019.10.03 |
리눅스 권한3 (보충) (0) | 2019.10.01 |
리눅스 권한 2 (0) | 2019.09.26 |
리눅스 권한 (0) | 2019.09.21 |