리눅스마스터 1급 필기 기출문제 해설/보충설명 20150314

Cap 2016-08-15 13-24-30-081
Cap 2016-08-15 13-25-45-468리눅스 기반 모바일 운영체제
안드로이드, 바다, 마에모, 마고, 리모, 타이젠

OS X : 애플이 만든 운영체제. 이전이름은 MAC OS X

Cap 2016-08-15 13-27-07-280KDE는 1996년 튀빙겐 대학교 학생이었던 마티아스 에트리히가 Qt 라이브러리를 기반으로 만들기 시작했고 그이후 많은 프로그래머들이 합류하면서 1998년에 첫번째 버전이 출시되었다. 그러나 Qt는 자유 소프트웨어 라이선스를 사용하지 않았기 때문에 GNU 프로젝트 회원들은 또 다른 데스크톱 환경인 GNOME 프로젝트를 시작하게 되었다.

Cap 2016-08-15 13-30-48-988BSD 라이선스 : 해당 소프트웨어를 누구나 개작할 수 있고, 수정한 것을 제한 없이 배포할 수 있다. 2차적 파생물에 대한 원시 소스코드의 비공개를 허용한다. 즉 BSD 라이선스를 갖는 프로그램은 소스코드를 공개하지 않는 상용 소프트웨어에서도 사용 가능하다.

Cap 2016-08-15 13-36-24-663

Cap 2016-08-15 13-39-24-122RAID-6

전체적인 구성은 RAID-5와 비슷하지만 디스크에 2차 패리티 구성을 포함하여 매우 높은 고장 대비 능력을 발휘한다. 
2개의 패리티를 사용하여 2개의 디스크 오류에도 데이터를 읽을 수 있다.
2개의 패리티를 사용하여 최소 4개의 디스크로 구성해야 하여 RAID-5에 비해 공간 효율성은 떨어진다.

Cap 2016-08-15 13-40-27-645

Cap 2016-08-15 13-42-53-732ext2 : ext 파일 시스템의 다음 버전으로 고용량 디스크 사용 등에 대비하여 확장성에 염두에 두고 설계한 파일 시스템이다.
ext3 : 2001년 11월 리눅스 커널 2.4.15 버전 부터 포함된 파일 시스템으로  ex2의 확장판이다. 리눅스의 대표적인 저널링 파일 시스템이다. ALC(Access Control List)를 통한 접근 제어를 지원한다.
ext4 : ext2 및 ext3 와 호환성이 있는 확장 버전으로 64비트 기억공간 제한을 없애고, 최대 1Exabyte 의 디스크 볼륨과 16Terabyte 의 파일을 지원하는 등 대형 파일 시스템과 관련된 기능이 대폭 강화되었다. 현재 대부분의 리눅스는 ext4 파일 시스템을 사용하고 있다.  
XFS : SGI 에서 개발한 저널링 파일시스템.
JFS : IBM 에서 개발한 저널링 파일시스템.

Cap 2016-08-15 13-50-01-613

Cap 2016-08-15 13-52-57-150

Cap 2016-08-15 13-53-43-554history : 히스토리에 저장된 명령어 목록을 출력
history 5 : 최근에 입력한 마지막 5개의 목록을 출력

Cap 2016-08-15 13-55-04-652case 문
문자열과 일치하는 정규식 부분을 찾아 해당하는 정규식 다음에 있는 명령어를 실행시킨다.
case 구문은 esac 로 끝내야 한다.

Cap 2016-08-15 13-57-33-847

Cap 2016-08-15 13-58-10-836
Cap 2016-08-15 13-58-43-288백그라운드 프로세스는 말 그대로 눈에 보이지 않게 뒤에서 실행시키는 방식이다. 실행시키는 방법은 기존의 포그라운드 프로세스 실행 명령 뒤에 & 만 추가로 붙여서 실행한다.

Cap 2016-08-15 14-04-35-044

OSI 7계층
1계층 – 물리계층
– 실제 장치들을 연결하기 위해 필요한 케이블 및 연결장치 등과 같은 기계적인 항목과 전압, 신호 방식 등의 전기적인 항목에 대한 특성을 규정한다.
– 이 계층에서 동작하는 장치에는 허브나 리피터 등이 있다.

2계층 – 데이터링크 계층
– 신뢰성 있는 데이터 전송을 보장하기 위한 계층으로 오류 제어와 흐름 제어를 담당한다.
– 데이터를 전송하는 단위로 분할하는 기능 , 프레임 전달, 전송단위의 순서 제어 기능, 에러 제어 기능, 데이터 흐름 제어 기능 등을 제공한다.
– 네트워크의 오류 제어는 데이터를 재전송하는 방법으로 처리한다.
– 이 계층에서 동작하는 장치에는 브리지나 스위치 등이 있다.

3계층 – 네트워크 계층
– 네트워크 계층은 송신 호스트에서 전송한 데이터가 수신 호스트에 도착하기 위한 올바른 경로를 선택을 지원하는 역할을 한다.
– 송수신 호스트 사이의 패킷경로를 결정하는 라우팅, 트래픽이 집중되지 않도록 하는 혼잡 제어, 패킷의 분할과 병합, 인터네트워킹 등의 역할을 수행한다.
– 이계층에서 동작하는 장치에는 라우터가 있다.

4계층 – 전송 계층
– 전송계층은 송신 프로세스와 수신 프로세스간의 연결기능을 제공하고 안전한 데이터 전송을 지원한다.
– 계층 4까지의 기능은 운영체제에서 시스템 콜 형태로 상위 계층에 제공한다.

5계층 – 세션 계층
-세션 계층은 전송 계층과 유사하게 송수신 호스트의 세션연결을 지원하지만 더욱 더 상위의 논리적 연결을 지원한다.
– 즉 사용자간의 대화를 제어하는 대화 제어자로서 사용자들을 동기화하고 유효한 설정인지를 확인한다.

6계층 – 표현 계층
– 표현 계층은 송수신 호스트 간에 서로 다르게 사용하는 코드와 문자 등을 번역하여 일관되게 전송 데이터를 서로 이해할 수 있도록 하는 기능을 제공한다.
데이터의 암호화와 해독을 수행하고 효율적인 전송을 위해 필요에 따라 압축과 압축해제를 수행한다.

7계층 – 응용 계층
– 응용 계층은 응용 프로그램과 연계하여 사용자에게 편리한 환경을 제공하는 역할을 수행한다.
– 전자우편, 웹, 파일전송 등과 같은 응용 프로그램 환경에서 이루어진다.

Cap 2016-08-15 14-04-58-909UTD 케이블의 배열
8가닥중 실질적으로 쓰이는 선은 4개로 1, 2, 3, 6번인 ‘흰주, 주, 흰녹, 녹’ 이다.
T568B 1번과 3번 2번과 6번의 위치를 바꾸면 T568A 가 된다.
T568B 흰주 – 주 – 흰녹 – 파 – 흰파 – 녹 – 흰갈 – 갈
T568A 흰녹 – 녹 – 흰주 – 파 – 흰파 – 주 – 흰갈 – 갈

Cap 2016-08-15 14-06-52-844C 클래스 기준으로 인터넷에 연결가능한 호스트 수는 네트워크 주소, 브로드캐스트 주소, 게이트웨이 주소를 제외한 253개가 된다.

Cap 2016-08-15 14-09-41-860SYS-SENT : 로컬 시스템의 클라이언트 애플리케이션이 원격 호스트에 연결을 요청한 상태.
ESTABLISHED : 3Way-Handshaking 이 완료된 후 서버와 클라이언트가 서로 연결된 상태.
LISTEN : 서버에서 클라이언트로부터 들어오는 패킷을 위해 소켓을 열고 기다리는 상태.

Cap 2016-08-15 14-13-07-651네트워크 설정 관련 명령어
ifconfig : 네트워크 인터페이스를 설정하거나 확인하는 명령이다.
route : 라우팅 테이블의 정보를 출력하거나 관리하는 명령
netstat : 네트워크의 연결상태를 출력하는 명령
arp : 캐시를 관리하는 명령
ping : 인터넷 제어 메시지 프로토콜인 ICMP(Internet Control Message Protocol) 을 이용하여 네트워크 연결을 확인할 수 있는 명령이다. 원격의 호스트와 서로 연결 되어 있는지를 확인하고 패킷을 보내고 받는 시간을 출력하여 네트워크 장애 여부도 판단할 수 있다.
traceroute : 패킷이 특정 호스트까지 라우팅되는 과정을 출력하는 명령으로 라우팅 과정에 장애가 있을 경우 위치를 파악할 수 있다.
nslookup : DNS를 이용하여 도메인이나 IP를 조회하는 명령
dig : 도메인명으로 정보를 조회하는 명령
host : 도메인명으로 정보를 조회하는 명령
hostname : 시스템에 설정된 호스트네임을 출력하거나 설정하는 명령
ethool : 이더넷 카드 설정 정보를 출력하거나 변경하는 명령
ip : 이더넷 장치, IP주소, 라우팅 정보등의 설정정보를 출력하거나 변경하는 명령

Cap 2016-08-15 14-20-19-781/etc/passwd
콜론(:)을 구분자로 ID, 홈 디렉터리 등 7개의 기본적인 정보를 담고 있다.
username : password : UID : GID : fullname : home-directory : shell

Cap 2016-08-15 14-21-39-191groupmod – 그룹명이나 GID를 변경할 때 사용하는 명령이다.

Cap 2016-08-15 14-22-28-780
Cap 2016-08-15 14-27-57-057/etc/fstab
이 파일은 파일 시스템에 대한 다양한 정보를 담고 있는 파일로 부팅 시에 마운트할 파티션 정보가 기록되어 있는 파일이다. 파티션 정보를 변경하거나 디스크를 추가한 경우 이파일에 등록해야만 부팅 시에 자동으로 마운트할 수 있다.

Cap 2016-08-15 14-30-02-862–nodeps : 의존성 관계를 무시하고 설치한다. rpm 설치시 의존성 관계에 있는 패키지가 존재하지 않을 경우에는 설치가 되지 않는데 그런 경우 강제로 설치할 때 사용한다.
–force : 기존 버전이 설치되었을 경우처럼 강제로 설치할 때 사용한다.

Cap 2016-08-15 14-42-29-578update – 패키지 목록을 갱신할 때 사용한다.
upgrade – 모든 패키지를 최신 버전으로 갱신할 때 사용한다. update 후에 사용한다.

Cap 2016-08-15 14-44-07-677

Cap 2016-08-15 14-44-51-375

Cap 2016-08-15 14-48-30-883userdel : 사용자 계정을 삭제하는 명령.
userdel -r : 사용자의 홈 디렉터리 및 메일관련 파일까지 제거한다.

Cap 2016-08-15 14-50-30-707chage 는 사용자의 패스워드에 대한 정보를 출력하고 설정하는 명령이다.
/etc/shadow 의 날짜 관련 필드 설정을 모두 할 수 있는 명령이다.

Cap 2016-08-15 14-52-05-299e2fsck – 리눅스 파일시스템 점검 및 복구 할 수 있는 명령어
mke2fs – 리눅스에서 사용하는 주된 파일시스템 타입인 ext2 와 ext3, 그리고 ext4타입의 리눅스 파일 생성(포맷)하는 명령어
badblocks – 하드디스크와 플로피디스크의 배드블럭을 검사하는 명령어

Cap 2016-08-15 14-55-17-610스왑 파일 생성
1. dd 명령을 이용하여 원하는 파일의 크기만큼 스왑 파일을 생성한다.
2. mkswap 명령으로 스왑 파일 생성
3. sqapon 명령으로 스왑 파일 활성화

sync – 현재 메모리에 있는 데이터를 하드디스크에 저장하는 명령어

Cap 2016-08-15 14-59-16-558-u : 사용자의 UID 값을 지정
-d : 홈 디렉터리를 지정
-G : 기본 그룹이외에 추가로 그룹에 속하게 할 경우에 쓴다.

Cap 2016-08-15 15-03-55-037–force : 패키지의 중복 또는 다른 패키지의 파일 충돌 무시하고 설치 할수 있게 해주는 옵션 

–replacepkgs : 기존에 설치된 패키지를 삭제과정없이 무시하고 새로 설치하려고 할 경우 사용, 단 기존의 설치한 설정과 파일들 삭제
–replacefiles : 현재 설치하려는 패키지의 일부 파일과 이미 설치되어 있는 다른 패키지의 일부 파일과 중복되어 설치가 되지 않을 경우에 사용
–oldpackage : 현재 설치하려는 패키지의 버전이 이미 설치되어 있는 패키지의 버전보다 낮은 버전일때 나타는 에러를 무시하고 설치 하는 옵션

Cap 2016-08-15 15-09-36-742g-x : 그룹에 속한 사용자들 권한에서 x(실행권한) 를 없애라

Cap 2016-08-15 15-15-15-741데비안 패키지 관리 : 데비안 리눅스는 dpkg 라는 데비안 패키지 관리도구를 사용한다.
# dpkg [option] [패키지명] [패키지 파일명]

Cap 2016-08-15 15-19-35-140tar 옵션
-t : tar 파일 안에 묶여 있는 파일의 목록을 출력한다.
-v : 어떤 명령을 실행할 때 대상이 되고 있는 파일들을 보여준다.
-f 파일명 : 작업 대상이 되는 tar 파일의 이름을 지정한다.

Cap 2016-08-15 16-01-10-407소스 설치법
리눅스에서 소스 프로그램을 설치하기 위해서는 보통 압축풀기 > 디렉터리 이동 > configure > make > make install 의 5단계를 거친다.

cmake
cmake는 소스 컴파일 시 사용되는 Make의 대체프로그램으로 멀티플랫폼을 지원하기 위한 목적으로 등장한 오픈소스 프로젝트이다.
cmake를 사용하는 대표적인 프로그램에는 mysql이 있는데, configure와 meke 작업을 cmake로 통합해서 설치 가능하다.

Cap 2016-08-15 16-06-37-391dpkg(Debian Package) : 데비안 패키지 관리 도구

Cap 2016-08-15 16-08-21-414tar(tape archive)
테이프 관련 장치를 이용하여 백업할 때 사용하는 명령이었으나 현재는 여러 파일들을 하나의 파일로 묶어주는 명령으로 사용한다.

tar 옵션
-Z : compress 관련 옵션으로 예전 UNIX 계열 표준 압축 파일인 tar.Z 에 사용한다.
-J : xz 관련 옵션으로 압축 파일인 tar.xz 에 사용한다.
-z : gzip 관련 옵션으로 압축 파일인 tar.gz 에 사용한다.
-j : bzip2 관련 옵션으로 압축 파일은 tar.bz2 에 사용한다.

Cap 2016-08-15 16-25-08-468make config : 텍스트 기반의 설정도구로 터미널 환경에서 y, m, n으로 설정한다.
make menuconfig : 텍스트 기반의 컬러 메뉴를 제공하고, 커서를 이용하여 이동이 가능하다. 가장 보편적으로 사용
make xconfig : X윈도 환경의 Qt 기반의 설정도구이다.

Cap 2016-08-15 16-29-25-267

Cap 2016-08-15 16-30-12-970
모듈 관련 설정 파일 : 리눅스 커널 2.4 버전에서는 부팅 시에 특정 모듈을 커널에 적재할 때 /etc/modprobe.conf 파일에 등록해서 사용하였지만 커널 2.6버전부터는 /etc/modprobe.d 디엑터리 안에 .conf 로 끝나는 모든 파일을 인식힌다.

Cap 2016-08-15 16-33-32-759lsmod : 적재된 모듈 출력

Cap 2016-08-15 16-34-53-029

Cap 2016-08-15 16-35-44-807lpr : 프린터 작업을 요청하는 명령
lpq : 프린터 큐(Queue) 에 있는 작업의 목록을 출력는 명령
lprm : 프린터 큐에 대기중인 작업을 삭제하는 명령
lpc : 라인 프린터 컨트롤 프로그램 으로 프린터나 프린터 큐를 제어할 때 사용.
lp : System V 계열에서 사용하는 인쇄 명령으로 BSD 계열의 lpr 명령과 유사하다.
lpstat : 프린터 큐의 상태를 출력 해주는 명령 

Cap 2016-08-15 16-42-59-911

CUPS(영어: Common Unix Printing System) : 컴퓨터를 인쇄 서버로 기능하도록 해주는 유닉스 계열 운영 체제를 위한 모듈 방식의 프린팅 시스템

SANE (Scanner Access Now Easy)

ALAS( Advanced Linux Sound Architercture ) : 고급 리눅스 사운드 아키텍쳐
ALSA 는 사운드 카드용 장치 드라이버를 제공하기 위한 리눅스 커널의 요소이다.

OSS(Open Sound System, 오픈 사운드 시스템) : 유닉스 및 유닉스 계열 운영 체제의 사운드를 만들고 캡처하는 인터페이스

Cap 2016-08-15 16-43-27-545

Cap 2016-08-15 16-43-55-844

Cap 2016-08-15 19-57-24-336/var/log/messages : 시스템에서 발생하는 표준 메시지가 기록되는 파일
/var/log/secure : 인증에 기반한 접속과 관련된 로그가 기록되는 파일
/var/log/dmesg : 시스템이 부팅할 때 출력되었던 로그가 기록되는데 보통 커널 부트 메시지  로그 라고 한다.
/var/log/wtmp : 콘솔, 텔넷, ftp 등을 이용하여 접속한 사용자의 기록, 시스템 재부팅 기록등의 로그가 기록되는 파일

Cap 2016-08-15 19-59-40-424Multilevel Backup : 다단계 백업. 중요한 업무를 다루는 시스템에 적합

Cap 2016-08-15 20-07-37-077cpio(copy input to output) : tar 와 비슷한 유틸리티로 많은 양의 데이터에 대해서는 tar 보다 빠르다
dd(data dumper) 파티션이나 디스크 단위로 백업할 때 사용하는 유틸리티로 사용하기는 쉬우나 많은 시간이 소요된다.

tac : 라인 역순으로 출력하기 , 파일 역순으로 출력하기. cat 명령어의 반대

Cap 2016-08-15 20-09-17-157

Cap 2016-08-15 20-09-53-799NFS는 1984년  Sun Microsystems 사에서 개발한 프로토콜로 TCP/IP 네트워크상에서 다른 컴퓨터의 파일 시스템을 마운트하고 공유하여 상대방의 파일 시스템 일부를 마치 자기 자신의 디렉터리인 것처럼 사용할 수 있게 해준다.

Cap 2016-08-15 20-13-48-497compress, uncompress
전통적으로 유닉스에서 사용했던 압축 프로그램이지만, 리눅스에서는 압축률이 낮아 현재는 거의 이지 않는다. compress는 압축 명령으로 지정한 파일명 뒤에 .Z가 붙고 uncompress는 압축 해제 명령이다.

Cap 2016-08-15 20-19-36-008PAM은 사용자를 인증하고 그 사용자의 서비스에 대한 접근을 제어하는 모듈화된 방법을 말한다.
응용 프로그램들에게 사용자 인증방법을 선택할 수 있는 공유 라이브러리의 묶음을 제공한다.

account – 사용자가 해당 서비스에 접근이 허용되는지 여부, 패스워드 기간 만료 여부를 검사한다.
session – 사용자가 인증받기 전후에 해야할 것을 나타낸다. 사용자의 홈 디렉터리를 마운트/언마운트, 로그인/로그아웃 서비스 제한 등이 포함된다.
requisite – 이 모듈을 이용하는 인증이 실패할 경우에 즉시 거부한다.
suffcient – 비록 이전에 요청되어진 모듈이 실패하더라도 이 모듈에 의해서 인증이 성공할 경우에 인증을 승인한다.

Cap 2016-08-15 20-26-59-519# dd if=/dev/sda of=/dev/sdb bs=1M
블록 사이즈 1MB 단위로 하여 /deb/sda 을 /dev/sdb 로 백업한다.

Cap 2016-08-15 20-30-34-682
‘*’는 모든(all) 을 의미하고, ‘-‘는 연결된 설정 값을 지정할 때 ‘,’은 연결되지 않은 값을 나열할 때 ‘/’는 연결된 설정 값 범위에서 특정 주기로 나눌 때 사용한다.

Cap 2016-08-15 21-14-23-326

계정의 잘못된 패스워드 입력 횟수 확인 및 마지막 시도 시간 확인
pam_tally2 -u 계정명

계정 패스워드 잠김 해제
pam_tally2 -u 계정명 –reset

Cap 2016-08-15 21-17-52-934IIS(Internet Information Services, 인터넷 정보 서비스) : 마이크로소프트 윈도우를 사용하는 서버들을 위한 인터넷 기반 서비스들의 모임
Nginx : 웹 서버 소프트웨어로. 웹 서버, 리버스 프록시 및 메일 프록시 기능을 가진다.

JBoss 는 자바를 기반으로 하는 오픈 소스 미들웨어의 총칭이다.

Cap 2016-08-15 21-22-34-982Safari : 애플이 개발한 웹 브라우저

Cap 2016-08-15 21-25-05-420

리눅스에서 Apache 멀티 프로세스에 관련된 모듈(MPM)
Prefork : 프로세스 방식
Worker : 쓰레드 방식
Cap 2016-08-15 21-26-13-061php 동적 모듈 파일명은 libphp5.so 이고 /usr/local/apache/modules 디렉터리에서 확인한다.

Cap 2016-08-15 21-34-48-227
Cap 2016-08-15 21-35-29-141

LDAP (Lightweight Directory Access Protocol 경량 디렉터리 접근 규약) : IP프로토콜을 기반으로 사용자, 시스템, 네트워크, 서비스 정보 등의 디렉터리 정보를 공유할 수 있다.

1980년 중반 Sun Microsystems사에서는 두가지 프로토콜을 개발하였는데, 하나는 NFS 이고 다른하나가 NIS 이다.

NFS : TCP/IP 네트워크상에서 다른 컴퓨터의 파일 시스템을 마운트하고 공유하여 상대방의 파일 시스템 일부를 마치 자기 자신의 디렉터리인 것처럼 사용할 수 있게 해준다.

NIS : 하나의 서버에 등록된 사용자 계정, 암호, 그룹정보 등을 공유하여 다른 시스템에 제공하는 서비스를 말한다.

Cap 2016-08-15 21-40-05-738

Cap 2016-08-15 21-45-53-411LDAP : 경량 디텍터리 접근 규약. 디렉터리 데이터베이스에 접속하기 위한 통신 규약.
o : 조직 이름
ou : 조직의 부서 이름
cn : 일반적으로 이름과 성의 조합
sn : 성을 나타냄

Cap 2016-08-15 21-46-49-264NIS 도메인명 설정하기
NIS 서버 구성시 지정한 NIS 도메인명을 설정한다. NIS 클라이언트도 역시 nisdomainname 이라는 명령을 사용해도 되지만 계속적으로 사용한다면 부팅시에 적용되도록 /etc/sysconfig/network 파일에 등록한다.

Cap 2016-08-15 22-03-48-101ypcat
NIS 클라이언트에서 사용하는 명령어로 NIS 서버의 데이터베이스라고 할 수 있는 맵 파일의 내용을 확인하는 명령이다.

#ypcat passwd.byname
NIS 서버의 사용자 관련 정보를 출력한다.
Cap 2016-08-15 22-05-43-355smbclient
리눅스 및 유닉스에서 사용하는 삼바 클라이언트 명령으로 윈도 서버로 접근할 때 사용한다.
smbclient [option] [호스트명]
리눅스에서 smbclient 명령을 이용하여 \ 로 접근할 때는 일반적인 윈도에서 사용하는 개수의 2배로 지정한다. 또한 / 를 사용하는 경우에는 호스트명 앞에는 2개를 사용하고
디렉터리 구분은 1개를 사용한다.

Cap 2016-08-15 22-11-49-155smb.conf 의 주요 섹션
[global] : 삼바 서버의 전체적인 환경 설정을 담당하는 섹션
[homes] : 각 사용자들이 자신의 홈 디렉터리로 접근할 때의 권한을 설정하는 섹션
[printers] :  프린터 관련 권한을 설정하는 섹션

Cap 2016-08-15 22-14-45-224rpcinfo : rpc 관련 정보를 출력해 주는 명령이다.

RPC(remote procedure call, 원격 프로시저 호출) : 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수 있게하는 프로세스 간 통신 기술

Cap 2016-08-15 22-19-22-596

root_squash : client가 root 라도 sever에 nobody로 mapping 함.

no_root_squash : client가 root면 server에도 root로 접근하게 함. 신뢰할 수 있는 사람에게만 허용할 것

Cap 2016-08-15 22-22-01-974/etc/vsftpd/vsftpd.conf : vsftpd 의 환경 설정 파일.

ls_recurse_enable=YES
FTP 서버 접속 상태에서 ls -R 명령 사용시 하위 디렉터리까지 검색 가능 여부를 지정한다.

Cap 2016-08-15 22-26-57-093SMTP(Simple Mail Transfer Protocol) : 인터넷에서 이메일을 보낸 때 사용되는 프로토콜로 25번 포트를 사용
POP3(Post Office Protocol Version 3) : 서버에 도착한 메일을 클라이언트에서 직접 내려 받아 읽도록 해주는 프로토콜로 110번 포트를 사용 
IMAP(Internet Mail Access Protocol) : POP3 와 마찬가리로 클라이언트 사용자가 메일 서버에 도착한 메일을 확인할 때 사용하는 프로토콜로 143번 포트를 사용

Cap 2016-08-15 22-28-31-892

메일 관련 프로그램의 분류
MTA(Mail Transfer Agent)
이메일을 SMTP 프로토콜을 이용해 다른 메일 서버로 전달하는 프로그램을 말하는데 보통 메일 서버 프로그램을 지칭한다. 대표적인 프로그램에는 sendmail, gmail, postfix, Ms Exchange Server 등이 있다.

MUA(Mail User Agent)
사용자가 메일을 읽고 보낼때 사용하는 프로그램을 의미한다. 대표적인 프로그램으로 kmail, evolution, mutt, MS의 Outlook 등이 해당된다.

MDA(Mail Delivery Agent)
MDA는 일종의 대리인 역할을 수행하는 프로그램으로 메일박스에 도착한 메일을 대행해서 가져오거나 전달하는 역할을 수행한다. 대표적인 프로그램으로는 procmail이 있는데, 스팸메일 필터링이나 메일 정렬 등의 역할을 한다.

Cap 2016-08-15 22-29-42-543Cw : 메일을 수신할 호스트 이름을 명기하는 항목으로 보통 도메인명을 기입한다.
Fw : 여러 도메인을 사용하는 경우 별도의 파일을 지정하는 항목이다.
Dj : 특정 도메인명으로 지정하여 강제적으로 적용할 때 사용하는 항목이다

Cap 2016-08-15 22-30-23-373mailq
보내는 메일이 대기하는 디렉터리의 큐(Queue) 상태를 출력 해주는 명령
-Ac : /etc/mail/submit.cf 파일에 명시된 큐의 상태를 출력한다.

Cap 2016-08-15 22-32-11-468/etc/aliases
일종의 메일계정을 다른 메일주소나 다른 계정으로 매칭하는 기능을 한다.

Cap 2016-08-15 22-33-27-007

Cap 2016-08-15 22-36-55-032

Cap 2016-08-15 22-37-22-894allow-query { 192.168.0/24; }
네임 서버에 질의할 수 있는 호스트를 지정한다. 위와 같이 지정하면 192.168.0.0 네트워크 대역에 속한 호스트만이 질의할 수 있다.

Cap 2016-08-15 22-39-41-726PTR : 리버스 존에서만 사용하는 레코드로 IP주소를 도메인으로 변환하기 위해 지정한다. 

Cap 2016-08-15 22-41-33-139SOA record
존 파일을 시작하는 레코드로 시작은 도메인명 또는 도메인명을 나타내는 기호인 @ 를 사용한다. 

Cap 2016-08-15 22-44-39-525

Cap 2016-08-15 22-45-03-831반가상화 : 반가상화는 전가상화에 비해 기존 시스템에 가까운 성능을 나타내기 위해 지원하지만, 게스트 운영체제의 커널 일부분을 수정해야 한다는 단점이 있다.

Cap 2016-08-15 22-47-00-699

Cap 2016-08-15 22-47-45-369libvirtd 데몬 실행
가상화 API 역할을 수행하는 libvirtd 데몬을 샐행해야 한다.
# service libvirtd start

Cap 2016-08-15 22-49-43-125호스트 운영체제에서 top, sar 등과 같은 명령을 이용하면 전체적인 CPU 사용량을 알 수 있지만 가상 머신만을 대상으로 CPU 자원을 모니터링 한다면 virt-top 명령을 이용하면 된다.

Cap 2016-08-15 22-50-44-661xinetd
xinetd 데몬에 의해 실행
xinetd 를 거쳐서 해당 서비스를 실행하기 때문에 standalone 보다 느림
tcp_wrapper 에 의해서 접근제어됨
효율적인 자원 사용

Cap 2016-08-15 22-52-19-056

cps  
초당 요청받은 수에 대한 제한을 설정하는 항목
cps = 50 10
초당 요청수가 50개 이상일 경우 10초동안 접속 연결을 중단한다. 

instances
동시에 서비스할 수 있는 서버의 최대 개수를 지정하는 항목으로 접속 제한을 두지 않으려면 UNLIMTED 로 설정한다.
instances = 50
xinetd에서 생성하는 관련 데몬의 최대 개수를 50으로 지정한다.

per_source
특정 IP 주소에서 접속할 수 있는 최대 개수를 지정한다.
per_source = 5
같은 IP 주소로 접속할 수 있는 서비스의 수를 5로 제한한다.

Cap 2016-08-15 22-54-01-194DHCP(Dynamic Host Configuration Protocol) 
클라이언트에게 자동으로 IP주소, Gateway 주소, Name Server 주소 등을 할당해주는 서버를 말한다.
range dynamic-bootp – DHCP 클라이언트뿐만 아니라 BOOTP 클라이언트도 함께 할당할 경우에 사용한다.

Cap 2016-08-15 22-56-19-754VNC(Virtual Network Computing, 가상 네트워크 컴퓨팅)
컴퓨터 환경에서 RFB 프로토콜을 이용하여 원격으로 다른 컴퓨터를 제어하는 그래픽 데스크톱 공유 시스템
RFB(Remote Frame Buffer) 프로토콜을 이용하여 원격의 다른 컴퓨터에서 그래픽 환경 기반으로 데스크톱을 공유할 수 있는 시스템이다.

Cap 2016-08-15 22-56-45-898

ntpdate : NTP 서버를 이용해서 시간을 동기화할 때 사용하는 명령어이다.

Cap 2016-08-15 23-00-23-233

DOS 공격
creat() : 디스크 자원 고갈
malloc() : 메모리 자원 고갈
fork() : 프로세스 자원고갈

Cap 2016-08-15 23-01-50-401
Cap 2016-08-15 23-02-23-089nmap(network mapper)
Nmap 은 네트워크 탐지 도구 및 보안 스캐너로 시스템의 서비스 중인 포트를 스캔하여 관련 정보를 출력해 준다. 
동종의 프로그램에는 WPScan, Nikto 등이 있다.

Cap 2016-08-15 23-05-45-542tcpdump : 명령 줄에서 실행하는 일반적인 패킷 가로채기 소프트웨어이다. 사용자가 TCP/IP뿐 아니라, 컴퓨터에 부착된 네트워크를 통해 송수신되는 기타 패킷을 가로채고 표시할 수 있게 도와 준다.

Cap 2016-08-15 23-06-12-157iptables
패킷 필터링 도구로서 방화벽 구성이나 NAT에 사용된다.
INPUT : 패킷 필터링 및 방화벽 관련 정책들을 설정하는 사슬로 실제적인 접근 통제를 담당하는 역할을 수행한다.
– A : 사슬에 새로운 규칙을 추가한다.
– D : 사슬의 규칙을 제거한다.
– R : 사슬의 규칙을 교환한다.
– F : 사슬로부터 규칙을 제거한다.