반응형

정보보안기사 필기 독학 / 시스템 보안 / 7. 로그 명령어&파일

 

로그 파일 / 명령어

로그 파일 설명 형식 로그 명령어
secure 사용자 원격접속 정보 text file grep
pacct 사용자별 시간대별 명령어기록, binary file 형식 binary file lastcomm, acctcom
utmp 현재 로그인한 상태 정보를 담고 있는 로그 파일 binary file w, who, finger
wtmp 사용자들의 로그인아웃 정보, 시스템 관련 정보 기록 binary file last
btmp 실패한 로그인 정보를 담고 있는 로그 파일 binary file lastb
xferlog ftp 로그 파일    

 

로그 분석에 사용되는 명령어

grep : 특정 단어만 뽑아주는 명령어

awk : 텍스트 형태로 되어있는 입력 데이터를 행과 단어 별로 처리해 출력

sort : 정렬해서 다른파일로 저장

wc : 텍스트 파일의 행, 수, 단어, 문자 수를 출력해주는 명령어

head : 파일의 내용을 앞에서부터 출력

tail : 파일의 내용을 뒤에서부터 출력

 

관련 문제

14회 리눅스 환경에서 의심으로운 접근기록이 확인되어 로그인 실패 기록을 살펴보려고 한다. 어떤 로그 파일을 참조하는 것이 가장 적절한가? 3
①pacct
②wtmp
③btmp
④utmp

14회 리눅스 시스템에서 FTP에 대한 불법적인 접속을 감시하기 위해 로그를 검토하고자 한다. 어떤 로그를 보는 것이 가장 적절한지 고르시오. 4
①sulog
②wtmp
③utmp
④xferlog

13회 리눅스/유닉스 시스템에서 로그를 확인하는 명령어나 로그파일 과 가장 거리가 먼 것은?4
① wtmp
② history
③ pacct
④ find

13회 로그분석에 사용되며 문자열을 처리하는 Unix 명령어와 가장 거 리가 먼 것은?4
① awk
② wc
③ grep
④ nohup

13회 리눅스에서 관리하는 주요 로그파일에 대한 설명으로 옳지 않은 것은?4
① /var/log/cron : 시스템의 정기적인 작업에 대한 로그
② /var/log/messages : 커널에서 보내주는 실시간 메시지
③ /var/log/secure : 시스템의 접속에 관한 로그로 인제/누가/어디의 정보를 포함
④ /var/log/xferlog : 메일 송수신에 관한 로그

11회 분석 시 사용될 수 있는 명령어에 대하여 잘못 나열한 것은?3
① secure - 사용자 원격접속 정보 - text file - grep
② utmp - 현재 로그인 사용자 정보 - binary file - who
③ pacct - 사용자별 명령 실행 정보 - text file - history
④ wtmp - 최근 로그인 및 접속 호스트 정보 - binary file- last

10회 사용자 로그인과 로그아웃 정보를 누적하여 저장하는 파일은? 2
① utmp
② wtmp
③ lastlog
④ xferlog

10회 로그에 관한 설명으로 옳지 않은 것은? 4 
① wtmp : 사용자들이 로그인, 로그아웃한 정보를 가지고 있다.
② utmp : 시스템에 현재 로그인한 사용자들에 대한 상태정보를 수집한다.
③ pacct : 사용자가 로그인한 후부터 로그아웃하기 까지의 입력한 명령과 시간, 작동된 tty등에 대한 정보를 수집한다.
④ btmp : syslog 데몬에서 일괄적으로 생성된 로그 정보를 수집한다.

8회 바르지 않은 것은?
① wtmp: 사용자들이 로그인, 로그아웃한 정보를 가지고 있다.
② pacct: 사용자가 로그인한 후부터 로그아웃할 때까지의 입력한 명령과 시간, 작동된 tty 등에 대한 정보를 가지고 있다.
③ utmp: 시스템에 현재 로그인한 사용자들에 대한 상태 정보를 가지고 있다.
④ btmp: 사용자별로 가장 마지막에 로그인한 시간과 접속 IP, tty 등에 대한 정보를 가지고 있다.

6회 다음 중 ‘lastb’라는 명령을 통하여 로그를 살펴볼 수 있는 로그 파일명은?2
① utmp ② btmp
③ dmGsg ④ secure

5회 4. 다음 중 응용 프로그램 로그에 해당되지 않는 것은? 1
① UNIX Syslog
② DB 로그
③ 웹 로그
④ FTP 로그

반응형
반응형

정보보안기사 필기 독학 / 시스템 보안 / 6. 운영체제, 커널, 프로세스

 

운영체제, 커널(Kernel)

하드웨어 특성으로 부터 프로그램들을 격리시키고, 하드웨어와 직접적으로 상호 작동함으로써 프로그램들에게 일관된 서비스를 제공합니다. 프로세스 관리, 주기억장치 관리, 보조기억장치 관리, 입출력시스템 관리, 파일 관리를 담당합니다. 

 

프로세스(Process)

운영체제가 관리하는 최소단위의 작업이며, 메모리에 저장된 실행중인 프로그램입니다. 프로세스 제어 블록(PCB)를 가지고 있으며, CPU에 의해 명령이 수행됩니다. 하나의 포르세스는 생성, 실행, 준비, 대기, 보류, 교착, 종료의 상태 변화를 거치게 됩니다.  그리고 Process ID(PID) 1번은 init 프로세스입니다.

 

프로세스 스케쥴링(Scheduling)

스케쥴링의 기준은 CPU 이용률, 시스템 처리율, 수행 시간, 대기 시간, 응답 시간이며, 우순위가 높은 다른 프로세스가 할당된 CPU를 강제로 빼앗을 수 있는 선점형 방식과 프로세스에게 이미 할당된 CPU를 강제로 빼앗을 수 없고, 사용이 끝날때까지 기다려야 하는 비선점형 방식이 있습니다. 

 

선점형 방식은 빠른 응답시간을 요구하는 대화식 시분할 시스템에 적합하며, 많은 오버헤드를 초래하게 됩니다. 대표적인 알고리즘에는 RR(Round-Robin, 순환 할당스케줄링), SRT(Shortest Remaing Time Scheduling, 최단 잔여 시간), MFQ(MultiLevel Feedback Queue Scheduling, 다단계 큐) 알고리즘이 있습니다. 

 

비선점형 방식은 모든 프로세스들에 대한 요구를 공정히 처리하기 때문에 응답시간의 예측이 용이하고, 짧은 작업이 긴 작업을 기다리는 경우가 발생하게 됩니다. 대표적인 알고리즘에는 FIFO(First In First Out), SJF(Shortest-Job-First, 최단 작업 우선 처리), HRN(Highest Response-ratio Next)스케줄링등이 있습니다.

 

스풀링(Spooling), 버퍼링(Buffering)

스풀링은 저속의 입출력장치와 고속의 CPU 간의 속도차이를 해소하기 위해 나옹 방법으로 다스크를 이용하고, 버퍼링은 입출력장치와 고속의 CPU 간의 속도차이를 해소하기 위해 나온 방법으로 주기억장치를 이용합니다.

 

 

관련 문제

10회 운영체제의 주요기능에 대한 설명으로 옳지 않은 것은? 2
① 사용자와 하드웨어 간의 인터페이스를 정의한다.
② 고급 언어로 작성된 프로그램을 이진(0 또는 1) 기계어로 번역한다.
③ 오루 검사 및 복구 기능을 수행한다.
④ 사용자 간의 자원을 스케줄링하고 할당하는 기능을 수행한다

10회 다음 보기 괄호 안에 공통으로 들어갈 적당한 단어는? 2
[보기]
( )은 하드웨어 특성으로 부터 프로그램들을 격리시키고, 하드웨어와 직접적으로 상호 작동함으로써 프로그램들에게 일관된 서비스를 제공한다. ( )의 기본 개념은 프롯스와 파일의 관리이다. 그밖에 입출력장치 관리, 메모리 관리 및 시스템 호출 인터페이스등이다.

① 유틸리티(Utilities)
② 커널(Kernel)
③ 셀(Shell)
④ 데몬(Daemon)

9회 비선점형 스케줄링만 고르 것은?1
[보기]
㉠ FCFS
㉡ SJF
㉢ RR
㉣ SRT
㉤ MLQ

① ㉠, ㉡
② ㉠, ㉢
③ ㉠, ㉣
④ ㉢, ㉤

11회 15. Process ID(PID) 1번을 가지고 있는 프로세스는 무엇인가? 1
① init
② 부트로더
③ OS 커널
④ BIOS

7회 2. 다음 중 프로세스와 관련된 설명으로 가장 거리가 먼 것은? 4
① 프로세스는 프로세스 제어블록(PCB)으로 나타내며 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓층 저장소를 의미한다.
② 하나의 포르세스는 생성, 실행, 준비, 대기, 보류, 교착, 종료의 상태 변화를 거치게 된다.
③ 프로세스란 스스로 자원을 요청하고 이를 합당받아 사용하는 능동적인 개체를 의미한다.
④ 스레드는 프로세스보다 큰 단위이며, 자원의 할당에는 관계하지 않고, 프로세서 스케줄링의 단위로써 사용하게 된다.

7회 다음 중 프로세스 스케줄링을 통한 CPU 성능요소가 아닌 것은? 4
① CPU 이용률(Utilization)
② 시스템처리율(Throughput)
③ 대기시간(Waiting time)
④ 확장성(Expansiblility)

6회 다음 중 비선점 스케줄링에 해당되는 것은? 1
① 최단 작업 우선 처리
② 다단계 큐
③ 순환 할당스케줄링 '
④ 최단 잔여 시간

6회 4회 다음의 운영 체제 구조에서 2계층부터 5계층까 지 올바르게 나열한 것은? 2
① 프로세스 관리 -> 메모리 관리 -> 주변 장치 관리 -> 파일 관리
② 메모리 관리-> 프로세스 관리->주변 장치 관리 ->파일 관리
③ 파일 관리 -> 프로세스 관리 -> 메모리 관리-> 주변 장치 관리
④ 주변 장치 관리 ->프로세스 관리 -> 파일 관리->메모리 관리

6회 20. 다음 중 프로세스 교착 상태의 발생 조건아 아닌 것은? 3
① 상호 배제 ② 점유와 대기
③ 중단 조건 ④환형 대기 조건

4회 사용자가 작성한 프로그램을 운영체계에 실행하도록 제출하면 운영체제는 이를 제출받아 프로세스를 만든다. 이때 생성된 프로세스의 주소영역을 구성하는 요소를 올바르게 나열한 것은? 4
①데이터영역-스택영역-텍스트영역
②텍스트영역-스택영역-데이터영역
③데이터영역-텍스트영역-스택영역
④텍스트영역-데이터영역-스택영역

4회 다음 중 운영체제 발전 흐름에 대한 설명으로 올바르지 못한 것은? 1
①다중처리시스템 : 여러 개의 CPU와 여러 개의 주기억장치를 이용하여 여러 개의 프로그램을 처리하는 방식이다.
②시분할시스템 : 여러 명의 사용하는 시스템에서 각 사용자는 독립된 컴퓨터를 사용하는 느낌으로 사용한다.
③다중프로그램 : 하나의 CPU와 주기억장치를 이용하여 여러개의 프로그램을 동시에 처리하는 방식이다.
④분산처리시스템 : 여러 개의 컴퓨터를 통신회선으로 연결하여 하나의 작업을 처리하는 방식을 말한다.

4회 다음 중 운영체제 5단계에 포함되지 않는 것은? 4
①메모리관리
②주변장치 관리
③파일관리
④사용자관리

4회 14. 다음 중 버퍼링과 스풀링에 대한 설명으로 올바르지 못한 것은?3
①버퍼링과 스풀링은 CPU 연산과 I/O 연산을 중첩시켜 CPU의 효율을 높이기 위하여 사용한다.
②버퍼링은 단일사용자 시스템에 사용되고, 스풀링은 다중사용자 시스템에 사용된다.
③버퍼링은 디스크를 큰 버퍼처럼 사용하고 스풀링은 주기억 장치를 사용한다.
④버퍼링과 스풀링은 큐 방식의 입출력을 수행한다.

4회 다음 중 커널에 대한 설명으로 올바르지 못한 것은? 4
①커널에는 커널모드와 사용자모드가 있다.
②운영체제의 핵심을 커널이라 부른다.
③응용프로그램에 커널 서비스를 제공하는 인터페이스를 ‘시스템 콜 인터페이스’라 한다.
④하드웨어 장치를 사용할 경우 사용자모드에서 사용된다.

9회 분산 처리 시스템에 대한 설명으로 틀린 것은? 3
① 목적은 자원의 공유, 연상 속도의 향상, 신뢰성과 컴퓨터 통신 등에 있다.
② 분산된 컴퓨터 간의 자원을 이용자가 쉽게 공유하여 액세스할 수 있다.
③ 시스템의 설계가 간단하여 확장이 용이하고 보안성을 향상시킬 수 있다.
④ 분산 운영체제는 시스템의 자원을 효율적으로 관리하기 위한 운영체제이다.

9회 I/O 중심 프로세스와 CPU 중심 프로세스 모두를 만족시카는 스케줄러로 가장 적합한 것은? 1
① MLFQ(Multi Level Feedback Queue)
② RR(Round Robin)
③ SPF(Shortest Process First)
④ SRT(Shortest Remaining Time)

반응형
반응형

그리스도안의 생활 / 요한복음 15장 5절

 

나는 포도나무요 너희는 가지라

그가 내 안에, 내가 그 안에 거하면 사람이 열매를 많이 맺나니

나를 떠나서는 너희가 아무 것도 할 수 없음이라

 

Iam the vin; you are the branches.

If a man remains in me and I in him, he will bear much friut;

apart from me you can do nothing.

 

반응형
반응형

파이썬 정렬하기 - sort(), sorted(), reverse()

 

sort()

기본값은 오름차순 정렬이고, reverse옵션 True는 내림차순으로 정렬하게 됩니다. 

a= [3, 1, 9, 7, 5]
a.sort()
print(a)

[1, 3, 5, 7, 9]
a= [3, 1, 9, 7, 5]
a.sort(reverse=True)
print(a)

[9, 7, 5, 3, 1]

sort는 key 값을 전달인자로 주어 정렬을 할 수도 있습니다. 

아래는 string 객체를 단어로 구분하여 리스트로 만들고, 단어의 수를 key로 설정하여 정렬을 해보았습니다.

a= "hello. my name is zidarn"
a = a.split()
a.sort(key=len)
print(a)

['my', 'is', 'name', 'hello.', 'zidarn']

 

reverse()

reverse()는 내림차순으로 정렬하고, sort(reverse=True) 한 것과 동일합니다.

a= [3, 1, 9, 7, 5]
a.reverse()
print(a)

[9, 7, 5, 3, 1]

 

sorted()

핵심이 되는 것은 이 sorted() 함수입니다. 

이 함수를 사용하는 방법은 두가지가 있습니다. 

 

1) 전달인자 1개로 리스트를 넣는 방법이 있습니다. 

sorted 함수는 리스트를 반환하게 되고, 오름차순으로 정렬하게 됩니다.

a= [3, 1, 9, 7, 5]
b = sorted(a)
print(b)

[1, 3, 5, 7, 9]

 

2) 전달인자 2개로 하나는 리스트를 넣고, 하나는 key 값을 넣게 됩니다.  

( sorted(strings, key=lambda element:element[n])  : lambda는 익명 함수 )

 

string 객체를 단어로 구분하여 리스트로 만들고, 단어의 수를 key로 설정하여 정렬을 해보았습니다.

a= "hello. my name is zidarn"
a = a.split()
b = sorted(a, key=len)
print(b)

튜플로 되어 있는 내용도 정렬이 가능합니다. 

key 값은 여러 개를 설정할 수 있습니다. 첫번째 element로 정렬하였을 때, 동일하다면, 그 다음 설정된 element로 정렬할 수 있습니다. 

아래 예시를 보시면 쉽게 파악할 수 있을 것입니다. 

student_tuples = [
    (2016, 'brown', 'A', 15),
    (2015, 'Kevin', 'B', 12),
	(2014, 'Cain',  'B', 10),
    (2015, 'Crown', 'B', 5)
]

t = sorted(student_tuples, key=lambda student: (student[0], student[1]))
print(t)

[(2014, 'Cain', 'B', 10), (2015, 'Crown', 'B', 5), (2015, 'Kevin', 'B', 12), (2016, 'brown', 'A', 15)]

key 값에 마이너스 '-'를 붙이면 내림차순으로 정렬하게 됩니다. 

student_tuples = [
    (2016, 'brown', 'A', 15),
    (2015, 'Kevin', 'B', 12),
	(2014, 'Cain',  'B', 10),
    (2015, 'Crown', 'B', 5)
]

t = sorted(student_tuples, key=lambda student: (-student[0], student[1]))
print(t)

[(2016, 'brown', 'A', 15), (2015, 'Crown', 'B', 5), (2015, 'Kevin', 'B', 12), (2014, 'Cain', 'B', 10)]
반응형

+ Recent posts