Linux 50

01_02_03_리눅스 파일 시스템 관리_파일 링크

파일 링크(File link) 파일 링크 개요 리눅스에는 윈도의 바로가기 기능과 같이 시스템에 이미 존재하는 파일에 대한 포인터를 갖는 파일 링크 기능을 제공한다. 리눅스의 파일 링크는 크게 하드 링크(Hard link)와 심볼릭 링크(Symbolic link)가 있다. 하드 링크는 해당 파일의 아이노드를 가리키고 심볼릭 링크는 해당 파일의 경로를 가리킨다. 하드 링크의 경우 대상 파일이 사라지더라도 해당 파일에 대한 참조가 0이 아니기 때문에 삭제되지 않으므로 링크를 통해 실제 파일에 접근이 가능하다. 심볼릭 링크는 소프트 링크(Soft link)라고도 한다. 심볼릭 링크의 경우 단순히 경로만을 참조하므로 대상 파일이 삭제되면 심볼릭 링크는 존재하지 않는 파일을 가리키게 된다. 스티키 비트를 설정하지 ..

01-02-02 파일 시스템 관리_특수 권한

특수 권한 특수 권한의 개요 파일의 소유자 허가권, 그룹 허가권, 다른 사용자 허가권, 사용자 소유권, 그룹 소유권 그리고 읽기, 쓰기, 실행 권한만으로는 시스템을 운영할 때 한계가 있다. 이를 위해 Set-UID 권한 비트, Set-GID 권한 비트, 스티키 비트라는 특수 권한이 존재한다. Set-UID 권한 비트(Set User ID bit) 파일에 Set-UID 비트가 설정되면 사용자가 파일을 실행했을 때 해당 사용자의 권한이 아닌 파일의 소유자 권한으로 실행된다. 대표적인 예로 /usr/bin/passwd 프로그램 파일은 root만이 읽기 가능한 /etc/shadow 파일에 접근할 수 있도록 설정되어 있다. 이 설정대로라면 일반 사용자는 passwd 프로그램을 사용하지 못한다. 그러나 passwd..

01-02-01 파일 및 디렉터리 관리

파일 및 디렉터리 관리 소유권과 허가권 소유권과 허가권 확인하기 파일이나 디렉터리의 소유권과 허가권을 확인하기 위해서는 'ls -l' 명령어나 'ls -n' 명령어를 사용한다. # ls -l [file] -rw-r--r-- 1 apple apple 60 Jan 31 20.21 [file] 파일 유형 -: 일반 파일 d: 디렉터리 l: 심볼릭 링크 b: 블록 디바이스 c: 캐릭터 디바이스 p: FIFO s: 소켓 허가권(permission) 허가권은 소유자 허가권, 그룹 허가권, 다른 사용자 허가권으로 구분된다. 소유자 허가권: 파일이나 디렉터리를 소유한 사용자의 허가권을 의미한다. 그룹 허가권: 파일이나 디렉터리를 소유한 그룹의 허가권을 의미한다. 즉 그룹에 속한 사용자에 대한 허가권이다. 다른 사용자 ..

01-01-07 사용자 및 그룹 정보 관련 명령어

사용자 및 그룹 정보 관련 명령어 users 설명 현재 호스트에 로그인되어 있는 모든 사용자를 출력한다. 형식 users 주요 예제 users who 설명 현재 호스트에 로그인되어 있는 모든 사용자의 정보를 출력한다. 터미널 종류, 로그인 시각 등이 기본적으로 출력된다. 형식 who [options] 옵션 -a, --all: 모든 옵션을 준 것과 같음 -b, --boot: 마지막 부팅 시간을 출력 -d, --dead: 좀비 프로세스를 출력 -H, --heading: 출력하는 각 컬럼의 헤더를 출력 -l, --login: 시스템 로그인 프로세스를 출력 -m: 표준 입력과 관련된 사용자만 출력 -p, --process: init 프로세스가 생성한 프로세스를 출력 -q, --count: 로그인한 모든 사용자의..

01-01-06 사용자 환경설정 파일

사용자 환경설정 파일 사용자 계정과 그룹 정보는 /etc 디렉터리 이하에 존재한다. 또한 useradd를 통해 사용자 추가 시 기본 설정이나 홈 디렉터리 구성이 필요한 정보를 담고 있는 설정 파일도 존재한다. 구분 파일명 설명 계정 및 그룹 설정 파일 /etc/passwd 사용자 계정의 아이디, 그룹 정보 등 계정 정보 /etc/shadow 암호화된 패스워드 및 정책 설정 정보 /etc/group 사용자 그룹의 기본 정보 /etc/gshadow 사용자 그룹의 암호화된 패스워드 정보 계정 환경 설정 파일 /etc/default/useradd useradd 명령을 사용할 때 기본 설정 /etc/login.defs 로그인 수행 시 기본 설정 /etc/skel 홈 디렉터리 생성 시 기본으로 제공할 파일 /etc..

01-01-05 그룹 계정 관리

01-01-05 그룹 계정 관리 그룹의 개요 그룹이란 사용자를 하나로 묶어 관리 가능하게 하는 메커니즘. 사용자를 그룹을 통해 관리하면 각 그룹에게 보안 설정, 접근 설정, 권한 등을 주고 일괄적으로 그룹에 속한 사용자에게 적용할 수 있어 편리하다. 또한 파일, 디렉터리, 장치에 대한 접근도 그룹 단위로 설정할 수 있다. 레드햇 계열은 사용자를 생성할 때 사용자 이름과 동일한 그룹을 생성하여 포함시키는데, 이는 시스템 관리자가 의도하지 않게 사용자를 기본 그룹에 추가하여 기본 권한을 갖는 것을 방지하기 위함이다. groupadd를 통한 그룹 생성 설명 groupadd는 새 그룹을 생성하기 위한 명령어이다. GID 값을 지정하여 특정 값으로 설정할 수도 있다. 그렇지 않으면 기본값으로 설정된다. 형식 gr..

01-01-04 사용자 계정 관리

01-01-04 사용자 계정 관리 사용자 계정 설명 설명 일반적인 사용자들은 일반 사용자 계정으로 생성된다. 시스템 파일과 디렉터리에 제한적으로 접근하도록 설정하여 시스템을 보호한다. 일반 사용자 계정은 그룹에 속할 수 있고, 리눅스는 그룹 단위로 파일 접근 권한 설정과 프로세스 관리를 수행할 수 있다. UID 레드햇 또는 CentOS 6 버전 계열의 UID는 500 이상의 값을 갖는다. 그러나 레드햇 또는 CentOS 7 버전과 오픈수세, 데비안의 UID는 1000 이상의 값을 갖는다. 일반 사용자 계정의 UID 범위는 /etc/login.defs에 정의되어 있다. 사용자 생성하기 useradd를 통한 사용자 계정 생성 사용자를 생성하기 위해서는 useradd 명령어나 adduser 명령어를 사용한다...

01-01-03 시스템 계정 관리

시스템 계정 관리 시스템 계정 설명 설명 시스템 계정은 메일 관리, SSH 연결 등 시스템의 특정 서비스에 대한 권한을 행사할 수 있는 계정이다. bin, daemon, adm, lp, sync, shutdown, halt, mail과 같은 계정들이 시스템 계정이며 /etc/passwd 파일에서 uid가 1~499를 갖는 계정이다. UID 시스템 인스톨 시 기본으로 설정되는 시스템 계정은 보통 0~99(root 계정 포함)의 범위를 갖는다. 시스템 관리자에 의해 시스템 운용하면서 추가될 수 있는 시스템 계정은 레드햇 계열인 경우 100~499를 갖고, 데비안 계열인 경우는 100~999의 범위를 갖는다. 이 범위는 사용하는 배포판마다 다를 수 있으므로 확인이 필요하다. 시스템 계정 관리 방안 서비스별로 ..

01-01-02 루트(root) 계정 관리

루트(root) 계정 관리 루트 계정 설명 설명 시스템 접근에 대한 제한을 받지 않고 완전한 권한을 갖는 사용자로서 수퍼유저라고 불린다. 루트 계정은 제한 없이 어떤 명령어든 사용할 수 있다. 보통 누구나 루트 계정을 갖는 것은 아니고 해당 시스템의 대표 관리자가 루트 계정을 보유한다. UID 루트 계정의 UID는 0이다. 루트 계정 권한 획득 방법 root 사용자로 로그인 기본적으로 root 사용자는 로그인할 수 없도록 설정되어 있다. 아래와 같이 root의 패스워드를 설정하여 root로 로그인할 수 있다. $ sudo passwd root 루트 계정 비밀번호를 설정한 뒤 su 명령어를 사용하여 root 사용자로 전환하여 로그인할 수 있다. 'su' 명령어만 사용하면 root로 로그인만 되지만, 'su..

01-01-01 사용자의 분류

사용자의 분류 사용자의 종류 리눅스 사용자는 크게 세 가지로 분류 루트(root) 계정 시스템 접근에 대한 제한을 받지 않고 완전한 권한을 갖는 사용자로서 수퍼유저라고 불린다. 루트 계정은 제한 없이 어떤 명령어든 사용할 수 있다. 보통 누구나 루트 계정을 갖는 것은 아니고 해당 시스템의 대표 관리자가 루트 계정을 보유한다. 시스템 계정 시스템 계정은 메일 관리, SSH 연결 등 시스템의 특정 서비스에 대한 권한을 행사할 수 있는 계정이다. 사용자 계정 일반적인 사용자들은 일반 사용자 계정으로 생성된다. 시스템 파일과 디렉터리에 제한적으로 접근하도록 설정하여 시스템을 보호한다. 루트 계정은 시스템에 대한 모든 권한을 가진 특별한 사용자이고, 시스템 계정은 리눅스 설치 시 기본적으로 생성되는 계정으로 각 ..