교육/자격증

[리눅스마스터 1급] 2101회 1차 시험

Bonita SY 2021. 3. 11. 13:17
728x90
반응형

시험 일정

 

 

시험 준비물

- 신분증

- 필기도구

 

- 수험표

※ 수험표는 시험일 기준 5일 전 출력 가능

 

시험 시간

- 입실 완료 시간 : 오후 1시 50분까지

- 시험 시간 : 오후 2시 ~ 오후 3시 40분 (총 100분)

- 신분증은 본인 책상 좌측 상단에 배치

- 시험시간 50분이 지나면 퇴실 가능

- 시험 도중 화장실 이용 불가

 

 

시험 과목

 

합격 기준

- 합계 60점 이상

- 과목당 점수의 40% 미만 과락

   (1과목 : 8점 / 2과목 : 16점 / 3과목 : 16점 미만)

 

과목별 문제 수 및 문제당 배점

- 1과목 (리눅스 실무의 이해) : 20문제 * 1점 (총 20점)

- 2과목 (리눅스 시스템 관리) : 40문제 * 1점 (총 40점)

- 3과목 (네트워크 및 서비스의 활용) : 40문제 * 1점 (총 40점)

 

 

 

응시 비용 및 지역

 

※ 자격증 발급 수수료 : 5800원

* 정보이용료 별도: 신용카드/계좌이체 650원, 가상계좌입금 300원

 

응시 자격

- 1차 : 제한 없음

- 2차 : 1차 시험 합격자에 한해 성적 공개일 기준으로 2년 이내

 

www.ihd.or.kr/introducesubject1.do

 

KAIT 자격검정

리눅스마스터 졸업인증 경동대학교(정보보안학과), 공주대학교(컴퓨터공학부), 광안대학교(정보보호학과), 국제대학교(컴퓨터정보통신과), 동덕여자대학교(컴퓨터공학과), 동서울대학교(네트

www.ihd.or.kr

 

 

공부한 책

 

- 정보처리기사도 이 문제집 다 풀고 합격해서 이기적으로 샀다.

- 오타가 많아서 별 1개 마이너스

- 2021년인데 아직도 2020년 시리즈밖에 없어서 최종 별 3.5개

 


 

나의 요점 정리

PAM(Pluggable Authentication Modules) : 어플과 서비스에 대한 중앙집중적, 동적인증 제공

- /etc/pam.d 디렉터리에 위치한 구성 파일 참조

- account : 해당 서비스에 대한 사용자의 접근 허용 여부 결정

- auth : 다른 인증 모듈과 연동

- required : 인증을 위해 반드시 이 모듈에 대한 점검 결과가 성공해야함을 명시

- session : 사용자가 인증받기 전후에 해야할 일 명시

 

last : 로그인, 로그아웃, 리부팅 이력을 확인 명령어

- /var/log/wtmp 참조

lastb : 로그인 실패 이력 확인 명령어

- /var/log/btmp 참조

 

sudo의 환경설정 파일 위치 : /etc/sudoers

 

/var/log/dmesg : 커널 부트 메시지 로그, 시스템 부팅할 때 생기는 로그 기록, (명령어 : dmesg)

/var/log/secure : telnet, ssh 접속에 대한 유저 로그인 기록

/var/log/lastlog : 사용자들의 마지막 로그인 정보 저장, (명령어 : lastlog)

 

HTTP 상태 코드

- 1XX : 조건부 응답

- 2XX : 성공

- 3XX : 리다이렉션

- 4XX : 요청 오류

- 5XX : 서버 오류

 

400 - Bad Request

401 - Unauthorized

402 - 결재 필요

403 - Forbidden

404 - Not Found

405 - Method Not Allowed

408 - Request Timeout

 

LDAP (Lightweight Directory Access Protocol)

- 디렉터리 서비스를 조회, 수정하는 TCP 기반 응용 프로토콜

- X.500 DAP 경량화 버전

- 트리 구조로 구성

 

LDAP 엔트리

- c : 국가이름

- st : 주 이름 (대한민국은 도)

- l : 도시 / 지역

- street : 도로명 주소

- dn : 조직 내 고유 식별자

- rdn : 상대적인 dn

- o : 조직명 / 회사명

- ou : 부서 이름

- cn : 전체 이름 (이름 + 성)

- sn : 성

- givenName : 이름

- dc : 도메인 네임 요소

- mail : 이메일 주소

 

NIS(Network Information System)

- Sun Micro 사의 클라이언트 서버 디렉터리 서비스 프로토콜

- RPC 기반

- 시스템의 중요한 파일의 정보를 네트워크 상에 있는 모든 호스트에 배포하는데 사용

- DB 접근 기능

- 사용자 인증 기능

- NFS와 연동하여 효율적인 네트워크 서버 환경 구축 가능

- 관련 서비스 : ssh, telnet, samba

 

/etc/yp.conf : ypbind의 환경설정 파일

/etc/networks : 네트워크 정보 설정 파일

/etc/ypserv.conf :  ypserve를 위한 옵션 저장

/etc/sysconfig/network : NIS 도메인명을 설정하여 시스템 부팅 시 항상 적용되도록 수정 가능

※ nisdomainname : 일시적으로 NIS 도메인명 설정 (부팅 시 정보 삭제)

 

Samba

- GPL 기반 자유소프트웨어

- 리눅스와 윈도우 간 디렉터리 및 파일 공유 시 사용

- 2개의 데몬 사용 :  smbd, nmbd

- smb.conf(환경설정 파일)은 global setting과 share definitions 영역으로 구분

 

SMB (Server Message Block) : Samba 표준 프로토콜

CIFS (Common Internet File System) : 네트워크를 위한 SMB 프로콜의 확장된 버전

 

testparm : smb.conf 파일 점검 명령어

 

smbclient : 윈도우 공유 폴더를 사용하기 위한 명령어

-L : 삼바 서버의 공유 디렉토리 정보 표시

-M : 메시지 전송

-U [사용자 이름] : 사용자 이름 지정

-p [TCP 포트] : 서버의 TCP 포트 번호 지정

 

smbpasswd : Samba 접근을 위한 계정 관리 명령어, 옵션 없이 사용 시 해당 계정의 비밀번호 변경

-a : 계정 추가

-d: 해당 계정은 사용하지 못하도록 설정

-e : 사용 중지된 계정을 다시 사용 가능하도록 설정

-x : 해당 계정 삭제

-n : 지정한 계정의 패스워드 삭제

 

pdbedit -l : Samba에 등록된 모든 계정 정보 출력

 

MTA (Mail Transfer Agent) : 메일 전송 프로그램

- sendmail, qmail, postfix 등이 포함

 

kmail : KDE용 이메일, GUI를 이용해 이메일 주고받음

 

가상화 기능

- 공유(sharing) : 여러 개의 가상 자원들이 하나의 동일한 물리적 자원과 연결

- 단일화(pooling) : 여러 개의 물리적 자원을 하나의 가상 자원으로 취급하여 단순하게 활용, 관리

- 애뮬레이션(emulation) : 물리적 자원에 없는 기능을 가상 자원에는 처음부터 있던 것처럼

- 절연(insulation) : 1개의 가상 자원이 장애가 생겨도 다른 가상 자원은 영향을 받지 않음, 물리 자원 교체 가능

 

전가상화

- 하드웨어 전체 가상화

- 게스트 OS 수정 없이 다양한 OS 지원

- CPU의 VT(Virtual Technology) 기술 사용 => 성능 저하 유발

 

반가상화

- 하드웨어 일부 가상화

- 게스트 OS 커널 일부 수정 필요

- 게스트 OS가 하이퍼바이저를 호출하여 하드웨어 제어

-- 하이퍼바이저 : 다수의 OS를 한개의 컴퓨터 시스템에서 가동 가능한 SW

 

Xen

- 1990년대 케임브리지 대학교에서 시작

- 오픈소스

- 하이퍼바이저 기반의 가상화 기술

- 리눅스, 윈도우, Solaris 등 지원

- 전가상화/반가상화 지원

- xm : 도메인 관리, 제어하는 명령어

 

KVM(Kernel-based Virtual Machine)

- 인텔-VT, AMD-V 기반 CPU 전가상화를 지원하는 기술

- 리눅스 커널 2.6.20부터 포함

- QEMU(반가상화 방식의 하이퍼바이저)를 이용한 다중 가상머신 운영

- CPU 반가상 기술은 지원하지 않지만, Disk I/O, 이더넷, 그래픽 등은 반가상화 지원

- /var/lib/libvirt/images : 게스트 OS의 가상화 디스크 이미지 저장 디렉터리

 

VirtualBox

- 오라클 주도 하에 개발 및 배포

- x86 기반 가상화

 

Docker

- 하이퍼바이저 사용하지 않음

- 게스트 OS 설치 안함

- 서버 운영에 필요한 프로그램, 라이브러리만 이미지로 만들어 프로세스처럼 동작시키는 경량화된 가상화 방식

 

하이퍼바이저를 통합 관리하는 플랫폼 : OpenStack, CloudStack, OpenNebula

 

CPU 가상화 지원 여부 확인 시 /proc/cpuinfo 파일 참조

 

virsh : 텍스트 기반 콘솔 환경에서 가상머신 관리 도구 / 시작, 생성, 재시작, 종료 등 기능 제공

xm : Xen 관리 명령어

virt-top : 가상화 현황을 top 처럼

virt-manager : GUI 기반 가상머신 관리 도구 / 시작, 종료, CPU 모니터링 등 기능 제공

libvirtd : 가상화 기술을 위한 데몬

 

VNC(Virtual Network Computing)

- 원격으로 다른 컴퓨터 제어

- 그래픽 데스크톱 공유 시스템

- 5900번 포트 사용

- vncpasswd : VNC 서버 패스워드 변경 명령어

- vncserver : VNC 서버 실행 명령어 (-kill : 종료 옵션)

- /etc/sysconfig/vncservers : VNC 서버 환경설정 파일

 

NTP(Network Time Protocol)

- 네트워크 상의 컴퓨터 시간을 동기화 프로토콜

- 계층 구조

- 123번 포트 사용

- 각 계층 : stratum

-- stratum 0 : GPS, 원자시계

- ntpdate : NTP 서버를 이용해 시간을 동기화시키는 명령어

- ntpq -p : peer 상태를 요약해서 출력

- /etc/ntp.conf : NTP 서버 설정 파일

 

DHCP(Dynamic Host Configuration Protocol)

- 호스트 IP 주소를 동적으로 할당할 때 사용하는 프로토콜

- IP 충돌 예방 가능

- ARP 프로토콜 사용

- /etc/dhcp/dhcpd.conf : DHCP 환경 설정 파일

- range : DHCP 서버가 호스트에게 할당 가능한 IP 범위 지정 명령어

-- 사용 방법 : range ip1 ip2

- option routers : 게이트웨이 주소 지정 명령어

- option subnet-mask : 서브넷 마스크 지정 명령어

- fixed-address : 특정 호스트에게 할당할 고정 IP 지정 명령어

 

Proxy server

- 클라이언트가 프록시를 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 하는 서버

- 접근 정책 생성 => 유해 사이트 접근 제한 (방화벽)

- 익명으로 페이지 접근 (보안)

- 캐시를 사용하여 속도 향상

- 우회

 

squid 프록시 서버

- 유닉스 계열에서 작동

- GPL 라이선스를 따르는 오픈 소스 SW

- /etc/squid/squid.conf : squid 서버 환경 설정 파일

-- http_port : 서비스 포트 지정

-- cache_mem : 제공할 캐시 메모리 용량 설정

-- cache_dir : 캐시 저장 경로 및 용량 설정

-- cache_access_log : 캐시 접속 로그를 기록할 파일 설정

-- acl : 별칭 설정

-- http_access allow : 서비스 접근 허용

-- http_access deny : 서비스 접근 불가

 

DNS(Domain Name System)

- 도메인명을 네트워크 주소로 변환하는 시스템

- 53번 포트 사용

- named : DNS 데몬명

- /etc/resolve.conf : 기본 DNS 서버 주소에 대한 정보 파일

- /etc/named.conf : 네임 서버 환경 설정

 

Recursive 네임서버 (= Cache DNS 서버)

- 질의가 들어오면 [자신의 캐시에 저장된 정보] 또는 [반복적 질의를 통해 얻은 결과]를 호스트에게 응답

-- 반복적 질의(Iterative Query) : Recursive 네임서버가 각 Authoritative 네임 서버로 질의하는 방식

-- 재귀적 질의(Recursive Query) : 호스트가 Recursive 네임서버로 질의할 때 사용되는 방식

 

Authoritative 네임서버 (= DNS 서버)

- 특정 도메인에 대한 정보를 관리

- 특정 도메인에 대한 질의에만 응답

- master - slave 구조 (또는 primary - secondary)

- 존(Zone) : 네임서버가 관리하는 도메인 영역

- 존 파일(Zone File) : 특정 도메인에 대한 정보를 저장한 파일, 해당 파일을 읽어 질의에 응답

- 존 전송(Zone Transfer) : 마스터에 있는 원본 존 데이터를 슬레이브가 동기화하는 작업

 

DNS 레코드

- A(Address) : 도메인에 대한 IPv4 주소 질의

- AAAA :  IPv6 주소 질의

- ANY : 도메인에 대한 모든 레코드 질의, 응답이  큼

- TXT : 도메인에 대한 텍스트 정보 질의

- SOA(Start Of Authority) : Zone의 기본 속성 정보 질의

- MX(Mail Exchanger) : 도메인의 메일 서버 질의

- NS(Name Server) : 도메인의 네임서버 질의

- PTR(Pointer) : IP에 대한 도메인 정보 질의 => reverse zone(역 존)에만 사용

- CNAME(Canonical Name) : 호스트 별칭 설정

※  57페이지

 

MUA (Mail User Agent) : 사용자들이 메일을 송/수신하기 위한 클라이언트 에이전트

- Thunderbird : 모질라, 메일 클라이언트 프로그램

- Evolution : GNOME, 메일 관리 프로그램

 

MTA (Mail Transfer Agent) : (메일)서버로 메일을 보내기 위한 서버-클라이언트 에이전트

- Sendmail : SMTP 기반, 리눅스 배포판에 기본으로 있는 프로그램

-- /etc/mail/sendmail.cf : 환경설정 파일, 메일 송/수신 시 이 파일을 해석하여 실행

--- m4 명령어로 환경설정 파일 생성 => m4 sendmail.mc > sendmail.cf

--- Cw : 호스트 지정

--- Fw : 파일 지정

--- Dj : 특정 도메인 강제 지정

-- /etc/mail/local-host-names : 메일 서버에서 사용하는 호스트(도메인)를 등록

-- /etc/mail/access : 접근 제어 설정 저장

--- makemap : /etc/mail/access 파일 편집 후 DB 파일(access.db) 생성 명령어 => makemap hast /etc/mail/access < /etc/mail/access

--- /etc/mail/access 파일 항목)

----- RELAY : relay 허용

----- OK : 무조건 허용

----- REJECT : 메시지 보내고 차단

----- DISCARD : 메시지 없이 차단

----- 501 : 지정된 메일 주소와 일치하는 메일 수신 차단

-- /etc/aliases

--- 특정 ID로 들어오는 메일을 여러 호스트에게 전달할 때 사용

--- 메일 별칭 사용 가능

--- newaliases : /etc/aliases 파일 변동 사항 적용 명령어 (= sendmail -bi)

-- /etc/mail/virtusertable

--- 가상 메일 사용자의 설정 저장 파일

--- makemap hash로 DB 파일 생성 필요

- Qmail : Sendmail에 비해 보안이 뛰어나고 모듈 방식(편리) 프로그램

- Postfix : IBM 라이선스, 오픈소스 프로그램

 

MDA (Mail Delivery Agent) : (메일)서버가 받은 메일을 사용자에게 전달하는 에이전트

- Procmail : 메일 필터링 프로그램

- SpamAssassin : 아파치, Perl로 개발, 메일 필터링 프로그램

 

PEM (Privacy Enhanced Mail) : 높은 보안성, 복잡한 구현 방식, 메일 보안 프로그램

PGP (Pretty Good Privach) : PEM에 비해 보안성이 낮고, 구현 쉬움, 메일 보안 프로그램

dovecot : POP3와 IMAP4 역할 수행하는 프로그램

 

포워딩 (forwarding) 방법

1) virtusertable 파일 설정

2) aliases 파일 설정

3) 사용자 홈 디렉터리에 .forward 파일 설정

 

SMTP (Simple Mail Transfer Protocol)

- MTA 클라이언트와 서버를 구성하는 프로토콜

- 25번 포트 사용

- 메일서버 - 메일서버 사이에 사용

 

POP3 (Post Office Protocol)

- (메일) 서버로부터 메일을 수신하기 위한 서버-클라이언트 프로토콜

- 110번 포트 사용

- 메일 서버는 읽은 메일은 삭제함

 

IMAP4 (Internet Mail Access Protocol)

- POP3와 비슷

- 143번 포트 사용

- 메일 서버는 읽은 메일도 계속 저장함

 

mailq : 메일 큐 목록(/var/spool/mqueue) 출력 (= sendmail -bp)

-v : 자세하게 출력

-Ac : /etc/spool/submit.cf에 저장된 메일 큐 목록(/var/spool/clientmqueue) 출력

 

xinetd : inetd 기반 보안 강화된 오픈 소스 슈퍼 데몬

- DoS 공격 억제

- 로그 파일 크기 제한

- IP 주소 당 동시 접속 수 제한

- TCP/UDP 및 RPC 서비스에 대한 접근 제어

- /etc/xinetd.d/* : xinetd 설정 파일

-- disable : 서비스 사용 여부 설정

-- socket_type : tcp=stream / udp=dgram

-- wait : 요청 받은 후 즉시 다음 요청까지 대기 여부

-- user : 슈퍼데몬 실행 사용자 권한 설정

-- server : 서비스 실행 파일 경로

-- log_type : 로그 기록 파일 경로

-- log_on_failure : 로그인 실패 시 로그에 기록할 내용

-- no_access : 접속 거부할 IP 대역

-- only_from : 접속 허용할 IP 대역

-- cps : 들어올 수 있는 접속 수 제한

-- instances : 동시에 실행할 수 있는 데몬 개수

-- access_time : 접속 허용 시간대

 

TCP Wrapper

- 슈퍼 데몬에 의해 수행되는 호스트 기반 네트워킹 ACL(Access Control List) 시스템

- /etc/hosts.allow, /etc/hosts.deny에 정의된 호스트 정보 기준으로 접근 통제

 

NFS (Network File System)

- 다른 컴퓨터에 있는 파일, 파일 시스템 공유를 위한 시스템

- RPC(Remote Procedure Call) 사용

- /etc/exports :  서버 환경 설정 파일

-- ro : 공유 자원 읽기만 허용

-- rw : 공유 자원 읽/쓰기 허용

-- root_squash : root 권한으로 접근 시 nobody 사용자로 변경한 후 마운트

-- no_root_squash : root 권한으로 접근 가능

-- sync : 파일 시스템 내 데이터 변동 시 즉시 동기화

-- async : 파일 시스템 내 데이터 변동 시 비동기적으로 처리

 

showmount : NFS/NIS의 마운트 정보 출력 명령어

-a : 모든 원격 마운트 정보 출력

-e : export된 디렉터리 정보 출력

 

exportfs : NFS 서버를 다시 시작하지 않고 공유 정보 수정/출력 명령어

-a : /etc/exports 파일 읽음

-r : /etc/exports 파일 다시 읽음

-v : 현재 공유 목록 출력

 

rpcinfo : RPC 정보 출력 명령어

 

FTP (File Transfer Protocol)

- 네트워크 상 컴퓨터들 간 파일 교환을 위한 프로토콜

- data 영역 : 20번 포트 / control 영역 : 21번 포트

- 종류 : vsftpd, proftpd 등

 

vsftpd (Very Secure FTP Daemon)

- 보안 강화된 FTP 데몬

- /etc/vsftpd/vsftpd.conf : 서버 환경 설정 파일

-- anonymous_enable : 익명 사용자 접속 허용 유무

-- local_umask : 로컬 계정 사용자들의 umask 값 설정

-- idle_session_timeout : 유휴 시간에 대한 타임아웃 설정

-- max_clients : 접속할 수 있는 클라이언트 최대 수

-- max_per_ip : 한 호스트가 동시에 접속할 수 있는 IP 설정

-- tcp_wrappers : tcp_wrapper 적용 여부

-- chroot_list_enable : 다시 입력

-- chroot_list_file : 다시 입력

-- chroot_local_user : 다시 입력

-- ls_recures_enable : FTP 서버 내에서 ls -R 가능 여부

-- listen : YES (standalone 방식) / NO (xinetd 방식)

-- listen_port : standalone 방식일 경우, 리스닝 포트 설정

- /etc/vsftpd/ftpuser : FPT 서버 접근 제한할 계정 목록 저장 파일

 

proftpd

- /etc/proftpd.conf : 서버 환경 설정 파일

-- ServerName : FTP 서버 이름 "설정"

-- ServerType : 데몬 구동 방식 (standalone / xinetd)

-- Port : 리스닝 포트 번호

-- Umask : 로컬 계정 사용자들의 umask 값

-- MaxInstances : FTP 접속 클라이언트 최대 수

-- User : FTP 실행 시 사용할 사용자명

-- Group : FTP 실행 시 사용할 그룹명

-- TimeoutIdle : 유휴 시간에 대한 타이아웃

-- Directory : 지정한 디렉터리에 대한 설정 (/부터 시작)

-- AllowOverwrite : 사용자가 전송하는 파일이 서버에 있을 덮어쓰기 허용 여부

-- Anonymous : 익명 사용자를 위한 디렉터리에 대한 설정

-- RequireValidShell : /etc/shells 파일에 정의되지 않은 쉘을 사용하는 사용자에 대한 접근 허용 여부

-- MaxClients : 익명 사용자에 대한 최대 접속 클라이언트 수

 

apachectl -graceful : 설정을 변경 한 후 connection을 끊지 않은 상태로 아파치 서버 재시작하는 명령어

 

mysql_install_db : 최초 설치 후 기본 DB 생성 시 사용하는 명령어

 

 

 

728x90
반응형