자격증 취득 준비할 겸 포스팅을 합니다.
** 해당 게시글에 문제가 있을 경우 댓글 달아주세요. (수정이 필요한 문구가 있거나, 문제 공유가 불가한 경우 등)
** 설명을 못 쓴 문제가 있으니 참고해주세요.
2022년 03월 12일 필기 기출문제
1. 다음 설명에 해당하는 파일로 알맞은 것은?
① /etc/hosts
② /etc/sysconfig/networks
❸ /etc/resolv.conf
④ /etc/named.conf
[설명]
① /etc/hosts : 로컬 시스템에서 IP와 호스트명을 매칭하는 설정파일.
(참고) hosts파일 작성 예시-
[IP] [호스트명]
192.168.1.1 server01
② /etc/sysconfig/networks : 존재하지 않는 파일.
간단한 네트워크 설정은 /etc/sysconfig/network 에서 설정하며, 인터페이스별 네트워크 설정은 /etc/sysconfig/network-scripts/ 하위에서 설정한다.
④ /etc/named.conf : DNS 서버에서 DNS 설정, Zone 등 구성을 선언하는 파일. 문제에서 말하는 DNS서버에서 설정하는 파일이다.
2. 다음 중 프로토콜 데이터 단위를 OSI 7 모델의 하위 계층부터 상위 계층 순으로 올바르게 나열한 것은?
❶ bit → frame → packet → segment
② bit → frame → segment → packet
③ bit → packet → frame → segment
④ bit → segment → frame → packet
[설명]
OSI 7계층별 단위 (상위->하위순)
응용(Data)->표현(Data)->세션(Data또는Message)->전송(Segment)->네트워크(Packet)->데이터링크(Frame)->물리(bit)
3. 다음 중 IPv4 주소 체제에서 B클래스에 속하는 사설IP주소 대역으로 알맞은 것은?
① 171.16.0.0 ~ 171.31.0.0
② 171.16.0.0 ~ 172.31.0.0
❸ 172.16.0.0 ~ 172.31.0.0
④ 173.16.0.0 ~ 173.31.0.0
[설명]
각 클래스 별 사설 IP 대역
A클래스 : 10.0.0.0 ~ 10.255.255.255
B클래스 : 172.16.0.0 ~ 172.31.255.255
C클래스 : 192.168.0.0 ~ 192.168.255.255
4. 다음 그림에 해당하는 명령으로 알맞은 것은?
① ip
❷ ifconfig
③ route
④ ss
[설명]
① ip : 주로 ifconfig 와 비슷한 용도로 사용하지만 패키지 종류도 다르고 출력되는 값도 다름.
대표적인 ip 명령어 사용 예시 : ip a, ip l, ip r, ip n
③ route : 현재 네트워크에서 라우팅 테이블 확인
④ ss : netstat 과 비슷한 용도로 사용하며 소켓 상태를 조회함
5. 다음과 같은 조건일 때 설정되는 게이트웨이 주소값으로 알맞은 것은?
① 192.168.5.126
② 192.168.5.127
③ 192.168.5.128
❹ 192.168.5.129
[설명]
IP를 8bit로 변환하면 아래와 같음
00000000.00000000.00000000.00000000 = 0.0.0.0
11111111.11111111.11111111.11111111 = 255.255.255.255
이 때, Netmask를 보는 방법은 8bit에서 0으로 된 부분을 네트워크 주소로 사용할 수 있도록 지정한 것
예시1)
11111111.11111111.11111111.00000000 = 255.255.255.0 이런식이고 호스트가 192.168.1.0 대역이면
192.168.1.1 ~ 192.168.1.254의 범위를 하나의 네트워크로 사용함
예시2)
SubnetMASK : 255.255.255.192 = 11111111.11111111.11111111.11000000
Host : 192.168.1.0 , Network : 192.168.1.1 ~ 192.168.1.62,
Host : 192.168.1.64 , Network : 192.168.1.65 ~ 192.168.1.126,
Host : 192.168.1.128 , Network : 192.168.1.129 ~ 192.168.1.190,
Host : 192.168.1.192 , Network : 192.168.1.193 ~ 192.168.1.254
6. 다음 그림에 해당하는 명령으로 알맞은 것은?
❶ xhost
② xauth
③ xrandr
④ xmodmap
[설명]
리눅스에 GUI환경을 설치하고 외부에서 GUI환경으로 접속하는걸 x서버, xwindow, x시스템 이라고 함
이 x서버의 명령어에 관한 문제임
① xhost : x원격을 접근할 사용자를 추가 또는 제거
② xauth : 키 값으로 인증하며, xhost보다 보안이 강화됨
③ xrandr : 해상도 정보 조회 및 조정
④ xmodmap : 키 재매핑하는 명령어
7. 최근 실행한 명령 중에서 ‘al'이라는 문자열이 들어간 명령을 찾아서 재실행하려고 할 때 가장 알맞은 것은?
① !al
❷ !?al?
③ !!al
④ history al
[설명]
bash 쉘에서 ? 특수문자를 이용하여 찾는 문자 앞뒤 전체로 확인함
! 특수문자를 이용하여 전에 사용한 명령어를 이용
8. 다음 (괄호) 안에 들어갈 내용으로 알맞은 것은?
① od
② rof
③ eof
❹ done
[설명]
--for 구문 형식
for 변수 in 범위(리스트 또는 배열로 범위 지정)
do
명령어
done
9. 다음 중 할당된 번호 값이 가장 큰 시그널로 알맞은 것은?
❶ SIGTSTP
② SIGKILL
③ SIGTERM
④ SIGQUIT
[설명]
시그널의 예시로 일반적으로 kill -9 pid 하면 SIGKILL을 호출하여 PID 프로세스를 중지하는것임
이 시그널을 전부 외우는건 힘들고, 그동안 출제됬던 문제중 언급된것만 알고있으면 좋을것 같다
1 | SIGHUP(HUP) | - hangup 시그널; 실행 종료 - 로그아웃과 같은 터미널에서 접속이 끊겼을 때 보내지는 시그널 - 데몬 관련 환경 설정 파일을 변경시키고, 변화된 내용을 적용하기 위해 재시작할 때 이 시그널이 사용됨 |
2 | SIGINT(INT) | - interrupt 시그널; Ctrl + c ; 실행 종료 - 키보드로부터 오는 인터럽트 시그널로 실행을 중지시킨다. |
3 | SIGQUIT(QUIT) | - quit 시그널; Ctrl + \ ; 실행 종료 - 사용자가 터미널에서 종료키를 누를 때 |
9 | SIGKILL(KILL) | - 무조건적으로 즉시 중지한다. ; 실행 종료 - Kill, 실행 중인 프로세스를 강제 종료할 때 사용 |
15 | SIGTERM(TERM) | - 일반적으로 kill 시그널이 전송되기 전에 전송된다. ; 실행 종료 - 잡히는 시그널이기 때문에 종료되는 것을 트랙할 수 있다. |
19 | SIGSTOP(STOP) | - SIGSTP과 같으나 잡거나 무시할 수 없음 ; 프로세스 중지 |
20 | SIGTSTP(TSTP) |
10. 다음 중 포어그라운드 동작 중인 프로세스를 백그라운드로 전환하는 방법으로 알맞은 것은?
① [Ctrl]+[c]를 눌러 작업을 일시 정지시킨 후에 fg 명령을 실행한다.
② [Ctrl]+[c]를 눌러 작업을 일시 정지시킨 후에 bg 명령을 실행한다.
③ [Ctrl]+[z]를 눌러 작업을 일시 정지시킨 후에 fg 명령을 실행한다.
❹ [Ctrl]+[z]를 눌러 작업을 일시 정지시킨 후에 bg 명령을 실행한다.
[설명]
[Ctrl]+[c]를 누르면 작업이 종료된다
bg(background) : 중지된 작업(jobs)을 백그라운드에서 실행. 터미널에서 작업이 안보임
fg(foreground) : 중지된 작업(jobs)을 포그라운드에서 실행. 터미널에서 작업이 보임
11. 다음 설명에 해당하는 프로세스 간 통신 방법으로 알맞은 것은?
① Shared Memory
② Message Queue
❸ Desktop Bus
④ Semaphore
[설명]
① Shared Memory : 공유메모리. 여러 프로그램이 동시에 접근할 수 있는 메모리
② Message Queue : 메시지를 통해 프로세스 간 안전하게 데이터 교환하는 통신(IPC) 메커니즘. 비동기적 통신
④ Semaphore : 프로세스 간 동기화를 위한 동기화 객체입니다. 공유된 자원에 대한 접근을 조절하여 임계영역보호, 프로세스 간의 실행 순서를 조절
12. 다음 중 10GB 용량의 하드 디스크 6개를 이용해서 RAID-5를 구성했을 때 실제 사용할수 있는 용량으로 알맞은 것은?
① 30GB
② 40GB
❸ 50GB
④ 60GB
[설명]
Raid 용량 효율
raid0 : 10GB x 6개 = 60GB (n=n)
raid1 : 10GB x 6개 = 30GB (n=n/2)
raid5 : 10GB x 6개 = 50GB (n=n-1, n은 최소 3)
raid6 : 10GB x 6개 = 40GB (n=n-2, n은 최소 4)
13. 다음 중 ssh 데몬을 시스템 부팅 시에 구동되도록 설정하는 명령으로 알맞은 것은?
① systemctl start sshd
❷ systemctl enable sshd
③ systemctl is-enabled sshd
④ systemctl is-active sshd
[설명]
① systemctl start sshd : sshd 서비스를 실행하는 명령어
③ systemctl is-enabled sshd : sshd 서비스가 부팅시 구동되는 상태(enabled)인지 확인하는 명령어
④ systemctl is-active sshd : sshd 서비스가 실행 중인지 확인하는 명령어
만약 CentOS6 이하 버전이었으면
chkconfig sshd on
하지만 최근 시험은 CentOS7 버전이상으로만 제출된다고 함
14. 다음 중 시스템 부팅 시에 X윈도 모드로 부팅이 되도록 설정하는 명령으로 알맞은 것은?
① systemctl get-default multi-user
② systemctl set-default multi-user
③ systemctl get-default graphical
❹ systemctl set-default graphical
[설명]
systemctl에 get-default라는 옵션은 없음
뒤에 부팅모드는 아래 표 참조
런 레벨 | target | 의미 |
0 | poweroff.target | 시스템 중단(Halt) |
1 | rescue.target | 텍스트 기반의 단일 사용자 모드(single user mode) |
2 | multi-user.target | 사용되지 않음(사용자가 지정 가능) |
3 | multi-user.target | 텍스트 기반의 다중 사용자 모드 |
4 | multi-user.target | 사용되지 않음(사용자가 지정 가능) |
5 | graphical.target | X 윈도 기반의 다중 사용자 모드(로그인도 X 윈도에서 이뤄짐) |
6 | reboot.target | 시스템 리부팅 |
15. 다음 중 CentOS 7버전에서 GRUB 환경 설정 파일을 수정한 후에 변경된 내용을 저장하기 위해 사용하는 명령으로 알맞은 것은?
① grub
❷ grub2-mkconfig
③ grub2-install
④ grub2-probe
[설명]
① grub : 없는 명령어
③ grub2-install : 리눅스 시스템의 부트로더인 GRUB2를 설치하는 명령어
④ grub2-probe : GRUB2 부트로더가 부팅 설정 파일에서 정보를 추출하는 데 사용되는 도구
* grubby : 부팅 관련된 파라미터를 설정하고 관리하는 명령어. (e.g. 커널의 부팅 순서(순위)를 변경)
16. 다음 설명에 적합한 리눅스 배포판으로 가장 알맞은 것은?
❶ Kali Linux
② Rocky Linux
③ Arch Linux
④ Ubuntu
[설명]
② Rocky Linux : RHEL와 호환 가능한 무료 배포판 OS. 예전의 CentOS 역할을 한다고 보면 됨
③ Arch Linux : 최소한의 설치로 사용자 용도에 맞게 필요한 부분만 구성하는 리눅스
④ Ubuntu : Demian 계열의 배포판 리눅스. 클라우드에서 널리 사용중
17. 다음 중 리눅스 탄생의 모델이 된 미닉스 (MINIX) 운영체제를 개발한 인물로 알맞은 것은?
① 빌 조이
② 데니스 리치
③ 리처드 스톨먼
❹ 앤드류 스튜어트 타넨바움
[설명]
① 빌 조이 : SUN 마이크로시스템즈사 공동 창립
② 데니스 리치 : C와 UNIX의 개발자
③ 리처드 스톨먼 : GNU의 아버지. 자유로운 소프트웨어 활용의 선구자
18. 다음 설명에 해당하는 운영체제의 기술로 알맞은 것은?
① 스왑
② 파이프
③ 리다이렉션
❹ 라이브러리
[설명]
① 스왑 : 가상메모리 영역을 지칭. 메모리가 부족할 때 미리 할당받은 디스크 일부영역을 메모리처럼 사용할 수 있음. 이 때 스왑한다고 함.
② 파이프 : 이전 명령어의 결과값을 다음 명령어의 입력값으로 이용할 때 사용. 문자 "|" 사용
③ 리다이렉션 : 명령어의 출력값을 다른 장치로 보내는 것. 문자 ">",">>" 사용
아래 명령어가 위의 내용 모두 사용하는 경우임
19. 다음 중 2차적 저작물 소스 코드의 비공개가 불가능한 라이선스로 알맞은 것은?
❶ MPL
② MIT
③ Apache
④ BSD
[설명]
라이선스 | 무료이용 | 배포 | 소스코드 취득 및 수정 | 2차적 저작물 소스코드 공개 | 독점 소프트웨어와 결합 |
GPL | 무료 | 허용 | 가능 | 공개 | 불가능 |
LGPL | 무료 | 허용 | 가능 | 공개 | 가능 |
BSD | 무료 | 허용 | 가능 | 비공개 가능 | 가능 |
Apache | 무료 | 허용 | 가능 | 비공개 가능 | 가능 |
MPL | 무료 | 허용 | 가능 | 공개 | 가능 |
MIT | 무료 | 허용 | 가능 | 비공개 가능 | 가능 |
20. 다음 설명에 해당하는 프로그램으로 알맞은 것은?
① Docher
② Ansible
③ OpenStack
❹ Kubernetes
[설명]
① Docher : Docker의 오타인것 같음. Docker는 컨테이너라는 기술로 구성하는 경량화된 가상시스템으로, 여러 배포를 미리 설정한대로 관리 가능
② Ansible : 여러 개의 시스템을 관리해주는 자동화 도구. 인벤토리,플레이북,모듈 등의 용어사용
③ OpenStack : 컴퓨팅 시스템을 직접 구축하여 운영하는 클라우드와 비슷한 서비스를 제공하는 기술. 프라이빗 클라우드
* vmware : 물리 HW에 VM OS, 저장장치, 네트워크 등을 탑재하는 기술. Hyper-V, ESXi, Zen 등이 있음
* Cloud : 일반적인 퍼블릭 클라우드. Amazon, MS 와 같은 기업에서 제공. 사용자 구축에 따른 비용차이가 있음
21. 다음 설명에 해당하는 작업을 위해 관리자가 설치해야 할 프로그램으로 알맞은 것은?
① PAM
② GnuPG
❸ Tripwire
④ Nessus
[설명]
① PAM(Puggable Authentication Module) : 사용자가 서비스를 이용할 때, 시스템에 인증을 할 수 있도록 제공해주는 프로그램.
/etc/pam.conf, /etc/pam.d/ 에 설정 적용. 일반적으론 /etc/pam.d/ 아래 설정파일만 적용하여 사용함.
② GnuPG(GNU Privacy Guard) : 공개키 기반 암호화와 디지털 서명 관련 기능 제공.
④ Nessus : 상용 시스템 취약점 스캐너.
(참고) Tripwire 설정 및 데이터베이스 파일 위치 : /etc/tripwire/
(참고) AIDE : Tripwire와 비슷한 기능의 유틸리티
보기 모두 보안관련 프로그램이지만 역할이 조금씩 다름.
인증, 암호화, 위변조검사, 취약점 으로 구분할 수 있어야함.
22. 다음 중 백업하는 명령어와 복원하는 명령어가 다른 백업(Backup) 프로그램으로 알맞은 것은?
① dd
❷ dump
③ cpio
④ rsync
[설명]
① dd : 블록단위로 데이터를 복제,백업하는 명령어. if와 of의 위치를 바꾸어 백업, 복원을 조정 할 수 있다.
더미파일 만들때도 자주 사용한다.
dd 백업 예시 : dd if=/dev/sdb of=/dev/sdc bs=512k
dd 복원 예시 : dd if=/dev/sdc of=/dev/sdb bs=512k
② dump : 복원시 restore 명령 사용
dump 백업 예시 : dump -0u -f backup.file /dev/sdb
restore 복원 예시 : restore -f backup.file
③ cpio : 표준 입출력을 이용한 백업,복원 활용
cpio 백업 예시 : find /home | cpio -ocv > home.cpio
cpio 복원 예시 : cpio -icv < home.cpio
④ rsync : 원격지의 파일 동기화(복제)관리 프로그램 (rcp 상위호환)
rsync 백업 예시 : rsync -av /ori_dir /cp_dir
rsync 복원 예시 : rsync -av /cp_dir /ori_dir2
23. 다음 중 시스템 보안 관리 강화를 위한 조치로 틀린 것은?
① 불필요한 서비스를 최대한 제거한다
② /etc/issue와 같은 메시지 파일을 제거한다
❸ Set-UID와 같은 특수 권한 사용을 권장한다
④ 로그인 서비스는 telnet 대신에 ssh를 사용한다
[설명]
각 항목의 보충설명
① 불필요한 서비스를 최대한 제거한다
: 불필요한 서비스를 제거함으로써 침입자가 침투할 여지를 줄인다. (침입경로 최소화)
② /etc/issue와 같은 메시지 파일을 제거한다
: 정확히는 issue 메시지에 출력되는 OS 버전정보를 제거하여 버전별 취약점에 따른 침입공격을 예방할 수 있음.
③ Set-UID와 같은 특수 권한 사용을 권장한다
: Set-UID, Set-GID, Stickybit 등의 권한은 superuser의 권한을 빌려올 수 있게 만들기때문에 불필요한 사용을 지양해야한다.
④ 로그인 서비스는 telnet 대신에 ssh를 사용한다
: telnet은 구간 보안이 없기때문에 구간보안이 적용된 ssh를 사용한다.
24. 다음 중 일반 텍스트 형식으로 저장되어 있어서 편집기로 내용을 확인할 수 있는 로그 파일명으로 알맞은 것은?
❶ /var/log/secure
② /var/log/lastlog
③ /var/log/wtmp
④ /var/log/btmp
[설명]
① /var/log/secure : OS 접근이력,거부 등 접근에 관련된 로그가 텍스트 형식으로 기록됨
② /var/log/lastlog : 계정별로 마지막으로 성공한 로그인 정보를 보여줌.
로그파일은 데이터파일이고, lastlog 명령어로 확인 가능
③ /var/log/wtmp : 시스템에 로그인/로그아웃 성공 이력 보여줌.
로그파일은 데이터파일이고, last 명령어로 확인 가능
④ /var/log/btmp : 시스템에 로그인 실패 이력 보여줌.
lastb 명령어로 확인 가능
그 외
/var/run/utmp : 현재 로그인중인 계정 상태 보여줌. w, who 등의 명령어로 확인 가능.
logname 최초의 로그인 사용자 정보를 보여줌.
25. 다음은 tar 명령어로 사용자의 홈 디렉토리 영역인 /home 디렉토리를 증분 백업하는 과정의 일부이다. ( 괄호 ) 안에 들어갈 옵션으로 알맞은 것은?
① -n
② -N
③ -C
❹ -g
[설명]
우선 일반적으로 tar의 사용용도는 여러 파일/디렉토리를 하나의 파일로 묶는것이다. (압축 아님)
그 외 추가 옵션을 통해 백업,복구,압축을 수행 할 수 있다.
① -n : archive is seekable (이건 잘 모르겠음. 아카이브를 검색하는거 같은데..)
② -N : 지정된 날짜보다 오래된 파일만 묶음 only store files newer than DATE-OR-FILE
-N옵션보다 --newer, --after-date을 이용하는게 더 직관적임. e.g. --newer="2023-10-10 12:00"
③ -C : 대문자C. tar아카이브 경로 지정. 주로 tar풀때 경로지정하여 사용.
④ -g : 이전 백업시 생성된 snaplist를 기준으로 증분백업하는 옵션
그 외 주요 옵션
-f : 대상 tar 아카이브 지정. (기본 옵션)
-c : tar 아카이브 생성. 기존 아카이브 덮어 쓰기. (파일 묶을 때 사용)
-x : tar 아카이브에서 파일 추출. (파일 풀 때 사용)
-v : 처리되는 과정(파일 정보)을 자세하게 나열.
-z : gzip 압축 적용 옵션.
-t : tar 아카이브에 포함된 내용 확인.
-C : 대상 디렉토리 경로 지정.
(참고) 증분백업하는 간략한 프로세스 화면
26. 다음은 cpio 명령을 이용해서 /home 영역을 백업(Backup)하는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?
① -icv > ② -icv <
❸ -ocv > ④ -ocv <
[설명]
① -icv > : i는 복구, >는 백업으로 명령어가 정상동작하지 않음.
② -icv < : i는 복구, >는 복구로 이나 명령어 사용양식이 맞지않음. 그리고 복구이기때문에 답은 틀림.
③ -ocv > : o는 백업, >는 백업으로 백업이 정상 작동.
④ -ocv < : o는 백업, >는 복구로 명령어가 정상동작하지 않음.
cpio 명령어 사용시 <, > 의 방향과 옵션에 따라 압축/압축해제가 된다.
압축하기 : find [경로] | cpio [옵션] > [파일명]
압축풀기 : cpio [옵션] < [파일명]
옵션
-i : 압축 해제, cpio로 백업한 데이터를 복원
-o : 압축 생성, 묶을 때 사용
-p : 표준입력에서 파일명 읽음, 통과모드
-d : 복원 중 필요한 디렉토리 자동 생성
-m : 백업 데이터들의 날짜, 시간 그대로 유지
-v : verbose, 상세한 과정 출력
-c : 아카이브 포맷 형식을 'newc'로 지정
27. 다음 설명에 해당하는 로그 파일명으로 가장 알맞은 것은?
❶ /var/log/messages ② /var/log/xferlog
③ /var/log/boot.log ④ /var/log/secure
[설명]
① /var/log/messages : 시스템 전반적인 로그를 기록
② /var/log/xferlog : 일반 FTP 사용 내역을 기록하는 로그
③ /var/log/boot.log : 서버 부트시 발생하는 로그 기록
④ /var/log/secure : 서버 접근 성공/실패에 대한 로그 기록
28. 다음은 로그 로테이션 설정 파일의 일부이다. 관련 설명으로 틀린 것은?
① 일반적인 로그 파일들은 1주일 단위로 로테이션이 진행된다.
❷ 일반적인 로테이션 파일들은 ‘파일명.1’, ‘파일명.2’ 등의 형식으로 총 4개가 생성된다.
③ /var/log/wtmp 파일의 로테이션 파일은 1개만 생성된다.
④ /var/log/wtmp 파일 크기가 1MB가 되면 지정된 기간 이전이라도 로테이션이 진행된다.
[설명]
② 일반적인 로테이션 파일들은 ‘파일명.1’, ‘파일명.2’ 등의 형식으로 총 4개가 생성된다.
-> dateext 설정이 있으므로 "파일명.1"이 아닌 "파일명-20230830" 형식으로 로그가 생성된다.
설정 설명
weekly : 주단위로 로그 로테이션
dateext : 숫자가 아닌 날짜로 로그를 저장
rotate 4 : 로그를 4개까지 보관
/var/log/wtmp { } : wtmp 로그의 경우 { } 사이의 규칙을 따름
monthly : 월단위로 로그 로테이션
29. 다음 중 로그 설정 파일에서 가장 심각한 수준에 해당하는 priority로 알맞은 것은?
① error ❷ emerg
③ crit ④ alert
[설명]
숫자 | 우선순위 | 심각도 |
0 | emerg | 시스템 구동 여부에 영향을 줄 수 있는 레벨 |
1 | alert | 즉시 조치가 필요함 |
2 | crit | 심각한 오류 |
3 | err | 중요도가 낮은 오류 |
4 | warning | 경고 |
5 | notice | 정상상태에서 발생하는 메시지 중 중요도 높음 |
6 | info | 일상적인 내용 |
7 | debug | 디버깅 메시지 (일상적인 내용보다 자세한 내용) |
30. 다음 중 외부에서 오는 ping에 대한 응답을 거부하도록 설정하는 명령으로 알맞은 것은?
① sysctl -w net.ipv4.icmp_echo_ignore_all=0
❷ sysctl -w net.ipv4.icmp_echo_ignore_all=1
③ sysctl -n net.ipv4.icmp_echo_ignore_all=0
④ sysctl -n net.ipv4.icmp_echo_ignore_all=1
[설명]
icmp 공격, 대표적으로 스머프공격을 방어할 떄 유용한 기술
설정 이후 핑이 안되는것을 볼 수 있
31. 다음 중 System V 계열에 속하는 프린터 명령어로 틀린 것은?
① lp ❷ lpr
③ lpstat ④ cancel
[설명]
프린터 관련해서는 System V와 BSD에서 명령어 및 사용법만 알면 된다.
System V 계열 프린트 명령어
- lp : 프린터 디바이스 path를 사용하여 직접 인쇄할 수 있습니다.
(-d : 다른 프린터 지정, -n : 인쇄 매수 지정)
- lpstat : 프린터 큐의 상태를 확인할 때 사용합니다.
- cancel : 프린트 작업을 취소합니다.
BSD 계열 프린트 명령어
- lpr : 인쇄 작업을 수행합니다.
(-P : 인쇄를 수행 할 프린터 지정. (프린터 명), -# : 인쇄 매수 지정 )
- lpq : 프린터 큐의 상태를 확인할 때 사용합니다.
- lprm : 프린터 큐의 작업을 삭제할 때 사용합니다.
- lpc : 프린터가 인쇄 가능 상태 인지 확인할 때 사용 합니다.
32. 다음 설명에 해당하는 용어로 알맞은 것은?
① IPP ❷ ALSA
③ CUPS ④ XSANE
[설명]
-- 리눅스 주요 외부 입/출력 장치
사운드 장치 : ALSA, OSS
스캐너 장치 : SANE, XSANE
프린터 장치 : IPP(네트워크), CUPS(로컬)
33. 다음 설명에 해당하는 명령으로 알맞은 것은
❶ depmod ② insmod
③ rmmod ④ modprobe
[설명]
모듈 명령어
- lsmod : 시스템에 설치된 모듈 리스트 확인하는 명령어
- modprobe : 모듈을 관리하는 명령어
(/etc/modprobe.conf, /etc/modprobe.d : 부팅 시에 특정 모듈을 자동으로 적재할 때 사용)
(-l : 모든 모듈 목록 출력, -r : 모듈 제거, -c : 모듈 관련 환경설정 파일 내용 출력)
- modinfo : 모듈의 정보를 조회
- insmod : 모듈을 설치하는 명령어
- rmmod : 모듈을 삭제하는 명령어
- depmod : 모듈 간의 의존성이 기록된 파일의 정보를 갱신하는 명령어
(의존성이 변경되면 modules.dep 파일의 내용의 변경)
모듈 탑재 디렉토리 : /lib/modules/커널버전/kernel
34. 다음 중 CentOS 7에서 사용되는 리눅스 커널의 모듈 파일 형식으로 알맞은 것은?
① e1000e.o ② e1000e.so
❸ e1000e.ko ④ e1000e.mo
[설명]
CentOS의 리눅스 커널 모듈파일 형식은 ".ko" 이다.
예시) CentOS 4, CentOS 7 버전의 모듈파일 형식 비교
35. 다음 중 LVM을 구성하는 순서에 대한 설명으로 알맞은 것은?
① 볼륨 그룹을 구성한 후에 물리적 볼륨, 논리적 볼륨 순으로 구성한다.
② 볼륨 그룹을 구성한 후에 논리적 불륨, 물리적 볼륨 순으로 구성한다.
③ 물리적 볼륨, 논리적 볼륨을 생성한 후에 볼륨 그룹을 구성한다.
❹ 물리적 볼륨을 생성한 후에 볼륨 그룹을 구성하고 논리적 볼륨을 생성한다.
[설명]
디스크 추가 부터 LVM 구성하는 전체 순서
1) 디스크준비 및 시스템에 추가 (lsblk, fdisk -l)
2) 디스크 파티션 생성 (fdisk, parted)
3) 파티션으로 물리볼륨 생성 (pvs, pvcreate)
4) 물리볼륨으로 볼륨그룹 생성 (vgs, vgcreate)
5) 볼륨그룹에서 논리볼륨 생성 (lvs, lvcreate)
생성한 논리볼륨을 디스크 파티션처럼 사용함
6) 논리볼륨 포맷 후 마운트하여 사용 (mkfs, mount)
참고url : https://dong-it-engineer.tistory.com/15 (디스크 추가하여 LVM 생성 및 확장)
36. 다음은 Raid 장치를 테스트 하기 위해 일부 장치를 강제적으로 오류를 발생시키는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?
① -d ② -D
❸ -f ④ -F
[설명]
[옵션]
-C(--create) : RAID 장치를 생성하는 옵션.
-l(--level=) : RAID 레벨값을 지정. -C옵션과 함께 사용됨.
value : linear, raid0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, multipath, mp, faulty, container
-n(--raid-devices=) : 구성할 디바이스 개수(Number)를 지정. -C옵션과 함께 사용됨.
예시) # mdadm -C /dev/md0 -l 0 -n 2 /dev/sdb1 /dev/sdc1
-D(--detail) : 지정한 Raid의 자세한 정보를 보여줌.
예시) # mdmadm -D /dev/md0
예시) # mdmadm --detail --scan
-S(--stop) : 구성된 RAID의 배열을 비활성화하여 모든 자원을 해제함.
예시) # mdmadm -S /dev/md0
-Q(--query) : 지정한 RAID 장치의 간단한 정보를 보여줌.
-f(--fail) : 특정 장치에 오류를 발생시킴.
예시) # mdmadm /dev/md1 -f /dev/sdb6
-a(--add) : 작동중인 RAID에 디바이스를 추가할 때 사용함
예시) # mdmadm /dev/md2 -a /dev/sdb14
-r(--remove) : RAID에서 디바이스를 제거함.
예시) # mdmadm /dev/md2 -r /dev/sdb15
RAID 상태 확인
cat /proc/mdstat
cat /proc/partitions
37. 커널 컴파일 과정 중 make menuconfig 명령을 이용해서 여러 가지를 설정을 끝낸 후에 저장하였다. 다음 중 관련 작업 후 커널 소스 디렉터리에 생성되는 파일명으로 알맞은 것은?
① Makefile ❷ .config
③ Kconfig ④ configure
----- 확인필요
38. 다음 중 커널 컴파일의 순서로 알맞은 것은?
① make menuconfig → make mrproper → make bzImage
② make menuconfig → make bzImager → make mrproper
❸ make mrproper → make menuconfig → make bzImage
④ make bzImage → make menuconfig → make mrproper
----- 확인필요
39. 다음 중 리눅스 커널이 속해있는 커널의 종류로 가장 알맞은 것은?
❶ 단일형 커널(monolithic kernel)
② 마이크로커널(microkernel)
③ 혼합형 커널(hybrid kernel)
④ 나노커널(nanokernel)
[설명]
커널 : 일반적으로 OS라고 하면 커널을 말한다 보면 된다. 쉘하고 헷갈리면 안됨. 쉘은 사용자와 커널간 중간다리역할.
커널의 주요 역할은 하드웨어, 리소스 관리 등이 있다.
- 단일형 커널(monolithic kernel) : 모든 시스템의 관리를 한 개의 커널에서 함. 성능 좋음. UNIX계열(Linux) 운영체제에서 주로 사용. 단일커널이기 때문에 어느 기능에서 문제가 발생하면 전체 시스템 오류가 발생함. (c.g. 블루스크린, coredump)
- 마이크로커널(microkernel) : 세부적인 시스템 관리를 커널이 아닌 서버라는 개념이 맡아서 함. 각 기능을 모듈화하여 서버가 관리한다. 성능은 단일형 커널보다 떨어진다. 대신 어느 기능에 문제가 생겨도 다른 기능 시스템에는 영향이 없어서, 문제 기능만 수정하면 된다.
- 혼합형 커널(hybrid kernel) : 말그대로 마이크로커널과 단일형커널의 장점을 혼합한 커널이다. 단일형의 성능+마이크로의 시스템관리
- 나노커널(nanokernel) : 초경령화 커널. 마이크로커널보다 경량하였다. 리소스가 제한되어있는 환경에서 주로 사용. IoT 같은 환경
40. 다음은 약 20GB 용량의 논리적 볼륨을 생성하는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?
① -s 20G ② -S 20G
③ -l 20G ❹ -L 20G
[설명]
-l 옵션: % 단위로 용량 할당 (예시: lvcreate -l 100%FREE -n LV명 VG명)
-L 옵션: GB,MB,KB 단위로 용량 할당 (예시: lvcreate -L 20G -n LV명 VG명)
관련 참고 URL: https://dong-it-engineer.tistory.com/15
41. 다음 설명에 가장 적합한 명령으로 알맞은 것은?
① passwd -r ihduser ❷ passwd -l ihduser
③ passwd -d ihduser ④ passwd -u ihduser
[설명]
접근 불가능 조건 = 계정 잠금
Ubuntu passwd 옵션 | |
-a, --all | 모든 사용자의 암호 상태를 출력한다. -S 옵션과 같이 사용해야 한다. |
-d, --delete | 사용자의 암호를 삭제한다. |
-e, --expire | 강제적으로 사용자의 암호를 만료시킨다. |
-h, --help | 사용법을 출력한다. |
-i, --inactive INACTIVE | 암호가 만료된 이후에 비활성화 기간(INACTIVE)을 지정한다. |
-l, --lock | 지정한 사용자의 암호에 락(lock)을 지정한다. |
-n, --mindays MIN_DAYS | 다시 암호를 변경할 수 있는 최소 일수(MIN_DAYS)을 지정한다. |
-q --quiet | 메시지를 출력하지 않는다. |
-r, --repository REPOSITORY | 저장소(REPOSITORY)의 암호를 변경한다. |
-S, --status | 사용자의 패스워드 정보를 출력한다. 상태 정보는 7개의 필드로 구성된다. |
-u, --unlock | 사용자 암호의 락을 해제한다. |
-w, --warndays WARN_DAYS | 암호 만료 메시지를 보여줄 기간(WARN_DAYS)을 지정한다. |
-x, --maxdays MAX_DAYS | 패스워드 암호를 변경하지 않아도 되는 최대 유효기간(MAX_DAYS)을 지정한다. |
CentOS passwd 옵션 | |
-k, --keep-tokens | 만기되지 않는 인증 토큰 사용 |
-d, --delete | named 계정의 비밀번호 삭제 (root로만 실행 가능) |
-l, --lock | 이름이 지정된 계정의 비밀 번호를 잠금 (root로만 실행 가능) |
-u, --unlock | 이름이 지정된 계정의 비밀번호를 잠금 해제 (root로만 실행 가능) |
-e, --expire | 이름이 지정된 계정의 비밀 번호 만료 (root로만 실행 가능) |
-f, --force | 강제 실행 |
-x, --maximum=DAYS | 비밀번호 최대 유효기간 (root로만 실행 가능) |
-n, --minimum=DAYS | 비밀번호 최소 유효기간 (root로만 실행 가능) |
-w, --warning=DAYS | 비밀번호가 만료되기 전 사용자에게 주어지는 경고 기간 (root로만 실행 가능) |
-i, --inactive=DAYS | 비밀번호 만료 후 계정이 비활성화되는 기간 (root로만 실행 가능) |
-S, --status | named 계정에 비밀 번호 상태 보고 (root로만 실행 가능) |
--stdin | stdin에서 새 토큰을 읽음 (root로만 실행 가능) |
42. 갑작스러운 시스템 점검으로 인해서 시스템에 로그인한 사용자 모두에게 긴급하게 메시지를 전달하려고 한다. 다음
( 괄호 ) 안에 들어갈 명령으로 알맞은 것은?
① mesg ❷ wall
③ write ④ mail
[설명]
mesg: 다른 유저가 나한테 메시지 보내는것을 차단한다. 차단하면 보내는것도 할 수 없다. (mesg y|n)
wall: 로그인한 유저한테 일괄적으로 메시지알람을 전송한다.
write: 다른 유저한테 채팅을 건다.
mail: 메일을 보내는 명령어.
43. 사용자에 대한 디스크 쿼터를 설정하려고 한다. 다음 중 /etc/fstab 파일에 설정해야 할 옵션값으로 알맞은 것은?
(문제 오류로 가답안 발표시 2번으로 발표되었지만 확정답안 발표시 1, 2번이 정답 처리 되었습니다. 여기서는 가답안인 2번을 누르면 정답 처리 됩니다.)
① quota ❷ uquota
③ gquota ④ edquota
[설명]
디스크쿼터: 사용자에게 사용할 수 있는 디스크 용량 제한을 설정함
/etc/fstab에 들어가는 quota 할당량 옵션
usrquota: 사용자 할당량 사용
quota: 사용자 할당량 사용 (xfs)
uquota: 사용자 할당량 사용 (vfsv0)
grpquota: 그룹 할당량 사용
gquota: 그룹 할당량 사용 (xfs)
prjquota: 프로젝트 할당량 사용 (xfs)
pquota: 프로젝트 할당량 사용 (xfs)
noquota: 할당량 사용하지 않음
edquota: fstab의 옵션이 아닌 명령어. vi편집기로 이동하여 쿼터를 직접 지정
44. 다음 중 등록된 cron 관련 파일을 제거하는 명령으로 알맞은 것은?
① crontab -e ② crontab -d
③ crontab -l ❹ crontab -r
[설명]
-e 옵션: 크론탭 편집
-d 옵션: 이런거 없음!
-l 옵션: 현재 크론탭 내용 조회
-r 옵션: 크론탭 내용 제거
-I 옵션: 크론탭 제거 전 확인. r 옵션이랑 같이 사용
별도 계정을 지정하지 않으면 현재 로그온 사용자의 크론탭에서 작업하게 됨
-u [계정] 옵션: 지정한 계정의 크론탭 작업
(참고) 크론탭 필드별 요약
[분] [시] [일] [월] [요일] [명령어]
45. 다음 중 특정 명령이나 작업을 예약된 시간에 실행할 때 사용하는 명령어로 알맞은 것은?
❶ at ② atq
③ atrm ④ atc
[설명]
at 명령어: 지정된 명령어를 예약된 시간에 수행하는 명령어. 일회성 크론탭.
(사용법 참고: at [시간] [Enter] [명령어] [Ctrl+D])
atq 명령어: 예약된 작업 확인
atrm 명령어: 예약된 작업 제거
atc 명령어: 이런거 없음!
46. 다음은 httpd 프로세스를 모두 종료시키는 과정이다. (괄호) 안에 들어갈 명령어로 알맞은 것은?
① kill ② pgrep
❸ pkill ④ nohup
[설명]
kill: 프로세스를 종료하기 위해서는 -9 시그널(옵션)으로 PID를 입력해야한다.
pgrep: ps와 grep을 동시에 수행하는 명령어
pkill: ps와 grep과 kill -9를 동시에 수행하는 명령어. 이름을 특정하여 프로세스를 찾아 중지한다.
nohup: 세션이 끊어져도 명령을 계속 수행함. 시스템 종료가 아닌이상 프로세스에서 계속 사용함. 주로 & 명령을 뒤에 붙여서 백그라운드에서 실행함
(참고) kill 명령은 이름은 kill이지만 실상 프로세스를 제어하는 명령에 가깝다.
pgrep과 ps | grep 의 결과 비교
47. 다음 명령의 결과에 대한 설명으로 알맞은 것은?
❶ 'a.out‘이라는 실행 파일이 생성된다.
② 'sum‘이라는 실행 파일이 생성된다.
③ 'a.out‘이라는 오브젝트 파일이 생성된다.
④ 'sum.o‘이라는 오브젝트 파일이 생성된다.
[설명]
이 문제는 C언어 컴파일에 관한 문제로 코딩부터 컴파일까지의 과정을 요약하면 아래와 같다.
- gcc설치: yum install gcc 또는 sudo apt-get install gcc
- C언어 코딩: vi clang.c
- C언어 컴파일: gcc clang.c
-> a.out 실행파일 생성
- 생성파일 실행: ./a.out
gcc -c 옵션으로 실행파일이 아닌 오브젝트 파일까지만 생성 할 수도 있다.
실행파일 이름 지정하려면 gcc -o [실행파일] [코딩파일].c
48. 다음은 현재 디렉토리 안에 있는 backup 디렉토리를 bzip2 압축 명령을 이용해서 tar로 묶는 과정이다. ( 괄호 ) 안에 들어갈 내용으로 알맞은 것은?
① jxvf ② Jxvf
❸ jcvf ④ Jcvf
[설명]
j 옵션: bzip2 형식으로 압축
J 옵션: xz 형식으로 압축
x 옵션: 아카이브로 묶기
c 옵션: 아카이브 풀기
v 옵션: 진행상황 출력
f 옵션: 결과파일 이름 지정
49. 다음 중 root 계정에 대한 보안을 강화하는 조치로 틀린 것은?
① root계정 이외에 UID가 0인 계정이 없도록 관리한다.
② PAM을 이용해서 root 계정으로 접근하는 서비스를 제어한다.
❸ 일반사용자들에게 sudo 보다는 su 명령을 이용하도록 한다.
④ 환경변수인 TMOUT를 이용해서 무의미하게 장시간 로그인되어 있는 것을 막는다.
[설명]
솔직히 su나 sudo나 엄청 큰차이가 있는것 같지 않지만.. 다른 답안이 너무 확실해서 이게 제일 답에 가까운것 같다.
su: 유저를 변경하여 그 유저의 모든 권한을 갖는다.
sudo: 유저의 권한을 이용한다.
① 리눅스는 계정명 보다는 UID로 유저를 식별하기 때문에 UID=0이 슈퍼유저이다.
② PAM 보안에서 여러가지 방법으로 root 접근을 제한할 수 있는데 대표적으로 pam_wheel.so 모듈을 이용한 wheel 관리자 그룹으로만 접근하는 방법이 있다. (비슷하게 /bin/su 명령의 사용제한을 하는 방법도 있다)
④ 무의미한 접속 유지는 보안에 취약점이 된다. PC에서 화면보호기를 설정하는것도 비슷한 이유다.
50. 다음 설명에 해당하는 파일명으로 알맞은 것은?
① /etc/skel ② /etc/passwd
❸ /etc/login.defs ④ /etc/default/useradd
[설명]
/etc/skel: 유저 초기 생성시 이 디렉토리 아래에 있는 파일들이 복사됨
/etc/passwd: 유저의 계정정보가 모여있는 파일
/etc/login.defs: 계정 로그인 설정파일 (패스워드 설정 등)
/etc/default/useradd: 유저 생성시 이 설정파일을 참고하여 생성
자격증 취득 준비할 겸 포스팅을 합니다.
** 해당 게시글에 문제가 있을 경우 댓글 달아주세요. (수정이 필요한 문구가 있거나, 문제 공유가 불가한 경우 등)
** 설명을 못 쓴 문제가 있으니 참고해주세요.
'IT배움 > 자격증' 카테고리의 다른 글
리눅스마스터 1급 시험문제 풀이 (20220312 51~100문) (0) | 2024.05.06 |
---|