본문 바로가기
IT/Tips

리눅스마스터 1급 필기 요약 - (2과목) 일반 운영 관리 / 장치 관리 / 시스템 보안 및 관리

by Jany 2016. 9. 8.
반응형

일반 운영 관리

 

 

●TMOUT

 : 일정시간 동안 계정을 사용하지 않는 경우에 자동으로 로그아웃 되도록 설정.

 

●/etc/passwd 파일

username : PW : UID : GID : 설명주석 : 홈디렉토리 : 기본사용쉘

 

●/etc/shadow 파일

username : PW : 최종PW변경날짜 : 최소일수 : 유예기간 : 경고일수 : 비활성화기간 : 계정종료일 : 예약필드

 

●/etc/group

구룹명 : 그룹패스워드 : GID : 사용자들

 

●chsh (change shell)

로그인 쉘의 변경, root 사용자 및 일반사용자 모두 사용이 가능하다.

 

 

●groupadd

그룹추가 , 사용자를 생성할 때 특정한 그룹을 지정하지 않으면 자신의 이름과 동일한 그룹이 자동생성 된다.

 

​●useradd = adduser

-u : 사용자 UID 지정

-g : 사용자가 속할 사용자의 그룹 지정

-G : 사용자가 속할 부속 그룹 지정

-d : 사용자의 홈 디렉토리 지정

-s : 사용자의 기본 쉘 지정

-m : 홈디렉토리 없을시 생성, /etc/skel 내용 복사

-f : 패스워드 비활성화 기간 일수 지정

-D : 기본값출력

-b : 기본 홈 디렉토리 위치 변경

 

●passwd

-l : 접속제한

-u : 접속제한 해제

 

 

●chage

 /etc/shadow 파일에 설정된 사용자에 대한 패스워드 만료기간 및 시간 정보를 변경.

-m : 패스워드 변경 최소일수 지정 

-M : 패스워드 변경 유예기간 설정

-W : 패스워드 변경 경고일수 설정

 

●usermod 

 사용자의 설정을 바꿔주기 위한 명령어

-d : 홈디렉토리 변경 

-e : 만기일자 지정

 

​●userdel 

사용자 삭제 명령어.   -r 옵션 : 사용자의 디렉토리와 메일 스풀 파일까지 모두 삭제.

 

●groupadd / groupdel

​그룹생성 / 그룹삭제

 

●chgrp

change group, 파일이나 디렉토리의 소유그룹을 변경할 때 사용

 

●chown 

파일의 소유권 변경

 

●chmod

파일의 허가권 변경

 

 

●mount

-t : 마운트 할 파티션의 파일 시스템 형식을 지정 (CD-ROM : -t iso9660)

-o,ro : 파일 시스템을 읽기만 가능하게 한다.

-o,user : 일반 사용자도 이 옵션이 적용된 파일 시스템을 마운트할 수 있게 허용한다.

 

 

●fsck

파일시스템을 검사,오류를 수정해주는 프로그램. 옵션 없을시 /etc/fstab 에 지정된 파일 시스템 타입으로 수행

-t : 검사할 파일시스템의 형식을 지정

종료시의 종료 코드

0 : 에러없이 정상적인 종료

1 : 파일시스템을 복구 하였음

2 : 복구되어서 재부팅 해야함

4 : 문제가 있으나 복구하지 않고 그대로 두었음

8 : 실행 에러 !

●quota

디스크 사용량 제한 설정 내용을 확인.

/etc/fstab 에 디스크 사용자제한( quota) 설정

 

●equota

 1. soft limit : 유예기간 (허용하긴 하지만 경고를 받게됨)

 2. gard limit : 절대적으로 넘을수 없는 하드웨어적인 용량제한

 3. grace period : 용량초과를 허용할 시간 

 

 

​●fdisk 

파티션 생성, 삭제, 타입결정 등의 작업 수행

 -t : 파티션의 시스템 id를 변경 (swap 파티션 82번)

 

​●ls

파일과 디렉토리의 리스트를 볼수 있다.

-a : 숨김파일까지 모든 경로안의 파일들을 나열.

-r : 역순(내림차순으로) 정렬.

-R : 하위경로와 그안에 있는 모든 파일들까지 나열.

 

●dd if=/dev/zero of=/swapfile bs=1024 count1024000

 스왑 파일 생성. =>64MB 

 

●&

백그라운드로 실행

 

●ctrl+c

포그라운드로 실행중인 프로세스 강제 종료

 

 

●ctrl+z

백그라운드에서 멈춘 상태로 대기. 실행되어 있기는 하지만 사용할 수 없는 상태.

 

●jobs

백그라운드로 실행된 프로그램이나 ctrl+z를 실행한 프로그램에 대해서 확인.

 

●fg 

백그라운드로 실행되고 있는 프로그램을 포그라운드로 불러내는 역할.

 

 

 

 

●ps

현재 실행중인 프로세스에 대한 상세한 정보를 보는 명령어

a : 터미널과 연관된모든 프로세스 출력, x옵션과 함께 사용되어 모든 프로세스를 출력

-e : 모든 프로세스를 출력. -A 와 동일 옵션

x : 사용자에 의해 소유된 모든 프로세스를 출력하고 a옵션과 함께 사용되어 모든 프로세스 출력.

u : 사용자 친화적인 형식으로 출력.

 

STAT : 실행되고 있는 프로세스 상태

 └ R : 실행되고 있거나 될수 있음. / T : 멈춤 / Z : 좀비 프로세스 / D : 인터럽트 될수 없는 Sleep

START : 프로스가 시작된 시간

PRI : 실행하는 우선 순위에 따른 프로세스

NI : nice에 의한 우선 순위에 따른 프로세스

RSS : 프로세스가 사용하는 메모리의 크기

SZ : 프로세스가 사용하는 자료와 스택의 크기

SHRD : 프로세스가 사용하는 공유 메모리

%MEM : 프로세스가 사용하고 있는 메모리 점유율

 

 

●nice

 프로세스의 우선순위를 변경하기 위한 명령어. -20~19 까지 설정 가능하고, 수치가 작을수록 높은 우선순위.

 

 

●nohub

 로그아웃을 하더라도 HUP프로세스의 적용을 받지 않고 계속 실행. 터미널을 빠져나가도 프로그램 실행.

 Hangup 신호를 무시한 채 지속적으로 실행

 

​●fork

자식 프로세스를 만듬. 자신의 사본을 생성.

 

●exec

호출하는 프로세스 새로운 프로세스로 변경하는 데 사용. 프로세스의 메모리 고안을 수행 가능 파일로 대체하여 다른 프로그램 호출.


 

●kill

 명령어 뒤에 PID 지정 

-s : 특별히 보낼 시그널 지정

 1)SIGHUP : 로그아웃하거나 접속을 끊을 때, 설정 파일을 변경시키고 변화된 내용을 적용할 때.

 9)SIGKILL : 무조건 해당 실행중인 프로그램을 중지.

 15)SIGTERM : 정상적인 종료방법으로 프로그램을 종료. 특별히 시그널을 지정하지 않으면 이 시그널을 이용.

 

​●killall

명령어 뒤에 프로세스 이름을 지정

-i : 죽이기 전에 확인을 위해 상호적으로 물어봄.

-l : 알려진 모든 시그널 이름 목록을 보여줌.

-v : 시그널이 성공적으로 보내졌다면 보고한다.

-w : 모든 죽여진 프로세스드이 죽도록 기다린다.

 

 

●rpm

패키지이름-버전-릴리즈-아키텍쳐.rpm

-i : 처음 설치시 

-F : 업그레이드 설치시

--nodeps : 패키지 설치시 의존성 검사를 하지 않는다.

-h : #마크를 사용하여 패키지 설치 진행상황을 알려준다. -v를 함께 사용하면 조금더 상세한 정보를 출력.

-e : 삭제

-q : 이미 설치된 패키지에 대한 질문기능

-qp : 설치되어 있지 않은 패키지에 대한 질문

 

●dpkg

데비안 패키지 시스템의 발판의 역할을 수행

 

●apt-get

패키지 관리도구, 데비안 계열의 리눅스 배포판에서 사용.

 

●gcc -o superuser superuser.c

=superuser.c 소스코드 파일을 gcc로 컴파일하여 생성되는 실행파일로 superuser를 지정.

-o : 실행파일명을 지정할 때 

-c : 컴파일 작업만 수행하고, 링크작업은 수행하지 말라는 옵션. 즉, 목적파일을 생성하라는 옵션.

 

​●make

목표 : 의존관계

                명령

목표 파일을 만들어 내기 위한 명령에 해당하는 줄들은 모두 tab 으로 시작해야 함.

 

●레이블의 사용

목표 부분에 해당하는 부분이 그냥 레이블과 같이 사용될 수 있다.

레이블로 사용될 때는 당연히 의존 관계 부분은 없어도 된다.

 

●tar

여러개의 파일을 하나의 파일로 묶어줌.

-r : 기존의 tar 파일에 새 파일들을 추가한다.

-v : 현재 처리하고 있는 파일 출력

-f : 옵션뒤에 지정된 파일 또는 장치를 사용한다.

 

 

●bzip2

-j : tar 와 조합해서 사용

 


 

장치관리

  

●uname

 -r : 리눅스 커널의 버전만 출력

 -a : 리눅스 커널의 상세한 정보 출력

 

 

●patch

커널 패치 명령 , 성공하면 원래 파일명에 .orig 확장자를 붙여 백업, 실패시 파일명에 .rej 확장자

 

 

●make mrproper

/usr/src/linux 디렉토리에서 실행. 커널 컴파일 시에 문제가 되는, 이전에 생성되어 있던 오브젝트 파일(*.o)들을 삭제하고 모든 설정과 커널의 소스를 초기상태로 돌리는 것.

 

​●커널 옵션 설정 방법

 1. make config : 텍스트 문답 방식의 방법, 잘못설정하면 처음부터 다시.

 2. make menuconfig : 메뉴형식이 방법, 방향키를 이용.

 3. make nconfig : 확장된 메뉴형식

 4. make xconfig / make gconfig : X윈도우 형식, Tcl/Tk 라는 X윈도우 그래픽 툴킷 라이브러리가 설치되어 있어야 한다.

 

●make moudules

커널 환경설정에서 모듈로 설정한 기능들을 컴파일. 옵션 설정 단계에서 커널 모듈로 선택했던 기능들에 대한 모듈 파일 생성작업을 해야 한다. 

●make modules_install

컴파일된 모듈을 /lib/modules 아래 설치한다.

●depmod 

모듈사이의 의존성을 검사하고 커널과 모듈 간의 의존성을 갖도록 함.

●depmod -ae -F system.map <kerner-version>

/lib/modules/<kerner-version> 디렉토리에 modules.dep 이라는 파일을 생성

 

●modprobe / insmod

수동으로 모듈을 커널에 추가

 

●lsmod 

로드된 커널의 목록과 그들의 상관관계 출력

 

●rmmod 

모듈 제거

 

●하드디스크 확장

 1. 새로운 하드디스크 물리적으로 장착

 2. 파티션 작업 (fdisk)

 3. 파일시스템 포맷/생성 (mkfs)

 4. 마운트포인트 디렉토리 생성 (mkdir)

 5. 마운트작업 (mount)

 6. /etc/fstab/ 에 자동마운트 설정

 

 

●lpq/lpstat

 프린트 큐의 상태 모니터링

시스템보안 및 관리

 

● 시스템 로그파일

/var/log/secure : 시스템에 사용자가 원격 접속, 즉 원격 로그인 정보를 기록한 것. sshd 데몬과 su관련 실행, telnet원격접속 및 gdm 관련실행 내용들이 기록되는 로그파일.

/var/log/dmesg : 시스템 부팅시 이상한 메시지가 나오면 이파일을 보고 확인이 가능함. /var/log/boot.log와 유사하지만 dmesg 명령으로도 볼 수 있다.

 

●syslogd 란 ? 

시스템 로그를 기록하는 프로그램

●/etc/syslog.conf

로그들을 제어할 수 있는 파일.

 

●logrotate 

 : 로그파일을 일정한 시간이 되면 다른이름으로 압축하여 저장하고 로그파일을 새로 생성해 준다.

●cron을 사용한 작업 자동화

 # 분 시 일 월 요일 /실행할 명령

 

●PAM 인증 모듈

 : 사용자 인증의 핵심 , 저장방법과 관계없이 인증.

구성 토큰 : required(성공필수적), requisite(실패시인증거부)

 

●파일 및 파일 시스템 보안.

1. SetUID/SetGID를 사용자의 홈디렉토리에 사용하지 말아라.

2. 사용자의 파일생성 umask를 가능한 제한된 값으로 조정하라.

3. 보호되어야 할 파일을 위해서 특수비트인 변경불가비트 (b)를 사용할 수 있다.

 

●SSH (Secure Shell)

: 사용자와 시스템과의 모든 통신을 암호화하여 안전하게 통신하는 것, ssh는 pki방식으로 통신패킷을 암호화하여 전송하기 때문에 스니핑(도청)을 당하더라도 키 스트로크를 쉽게 유출 되지 않는다.

  두 호스트간의 공개키기반의 암호화 기법으로 통신을 암호화하여 통신한다.

  SSH는 RSA공개키/개인키 방식을 이용한다.

  SSH1(공개프로그램)과 SSH2(비상업적인경우만 이용가능)가 있다.

●openSSH

ssh1, ssh2 프로토콜 모두 지원.

두가지 프로토콜의 인증키를 동시에 쓰는 것이 가능하다. (만들어진 퍼블릭키를 리모트서버에 ~/ .ssh/authorized_keys로 복사)

 

●TCP_wrapper

 : 서버의 접근제어를 하는 방화벽의 한 종류로

xinetd를 이용하여 서비스를 제공한다.

●iptables

 : 커널 2.2 버전에서 사용한 ipchain이 개선하여 iptables로 만들어 졌다.

 

●tripwire

 : 원본파일의 무결성을 체크할 수 있는 프로그램.

  MD5, SHA, CRC-32 등의 다양한 암호화 함수를 제공. 먼저 시스템에 존재하는 파일에 대해 데이터베이스를 구축한 후 생성된 데이터베이스와 비교하여 추가,삭제,변경된 파일이 있는지 점검하고 문서화 해준다.

 

●cops 

 : 리눅스시스템에 보안 감시 활동을 위한 프로그램.

 실행 파일들 : root.chk, dev.chk, group.chk, home.chk, pswwd.chk ...

 

●백업의 종류

A Day-zero : 시스템 사용 전 모든 파일.

A Full : 주기적으로 모든 파일 백업.

A Incremental : 특정한 이벤트 후나 변경된 파일만.

단순백업 : Full -> incremental 

다단계백업 : 레벨 사용

 

●cpio : 파일을 아카이브형태로 복사

- Copy-Out mode : 파일경로 상태등을 표준입력으로 읽어들여 표준출력으로 복사.(cpio -o 형식)

- Copy-In mode : 파이프라인을 이용하여 데이터를 전송 받을 때 사용하는 방식. 표준입력으로 데이터를 읽어들여 실제파일로 복사. (cpio -i 형식)

- Copy-pass mode : cpio -p 형식, 

옵션 -d : 필요에 맞게 디렉토리 작성 (-o 옵션과)

-u : 동일한 이름을 가진 파일에 겹쳐쓰도록 복사.

 

 

●dump 장점

여러개의 테이프에 백업 가능.

어떤 타입의 파일도 백업/복구 가능

파일에 대한 접근권한, 소유자등의 정보도 복구가능.

증분형태의 백업 가능.

 

●dump 단점

모든 파일시스템을 개별적으로 dump 해야 함.

파티셔닝이된 디스크를 dump하기 위해선, 파일시스템이 생성된 파티션마다 dump 하여야 한다.

NFS 파일시스템에서는 사용할 수 없다.

 

 

●rdist : 시스템관리 및 전체 노드의 저장장치를 항상 동일하게 유지시키는데 사용. 파일을 동기화하고 중요한 파일들의 변경사항을 모니터 가능하다.

반응형

댓글