[리눅스마스터1급2차] 랜덤문제디펜스 (2001-2201)

gosu·2023년 11월 7일
0
post-thumbnail

2001회

2001.13

다음은 하나의 메일 서버에 여러 도메인을 사용하는 환경에서 동일한 메일 계정을 요구하여 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 메일 서버에 사용하는 도메인인 ihd.or.kr을 등록한다. 
# vi ( ① )
ihd.or.kr

나. 발신 도메인을 무조건 ihd.or.kr로 설정한다.
# vi ( ② )
( ③ )
 
다. 발신지 도메인이 spam.com으로부터 오는 메일을 거부한다.
# vi ( ④ )
( ⑤ ) 

■ 조건

  • ①, ②, ④번은 관련 파일명을 절대 경로로 기입한다.
  • ③, ⑤번은 관련 설정을 한 줄로 기입한다.

2001.13.solve

① /etc/mail/local-host-names
② /etc/mail/sendmail.cf
③ Djihd.or.kr
④ /etc/mail/access
⑤ From:spam.com REJECT (또는 DISCARD)

2001.13.howtosolve

2001.14

  1. 다음은 DNS 서버의 zone 파일을 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.
@ IN SOA ( ① ) ( ② )
 (
                         --중략--
                          3H ) ; minimum
     IN NS ns.ihd.or.kr.
     IN A 192.168.5.13
( ③ )
( ④ )

■ 조건

  • ①과 ②번은 설정되는 도메인은 ihd.or.kr이고, 관리자 메일은 kait@ihd.or,kr일 때 관련 설정 내용을 기입한다.
  • ③번은 ihd.or.kr 도메인으로 메일을 받을 수 있도록 설정 내용을 한 줄로 기입한다.
  • ④번은 www 도메인을 사용하는 호스트의 IP 주소를 192.168.5.13으로 설정한다.

2001.14.solve

① ns.ihd.or.kr.
② kait.ihd.or.kr.
③ IN MX 10 ihd.or.kr.
④ www IN A 192.168.5.13

2001.14.chatGPT 답변

  • SOA 다음에 올 값은 ( ns.도메인 ) ( 이름.이메일뒷주소 ) 양식을 가집니다. ns. 보기에 어디에도 없어서 헷갈렸지만, 다른 모든 문제를 다루어보니, ns는 그냥 "name-server"로, 관례적으로 써주는 것을 알 수 있습니다.

DNS Zone 파일 설정은 도메인 이름 시스템(DNS)에서 도메인에 대한 정보를 정의하는데 사용되는 텍스트 파일의 한 형식입니다. 여기서 주어진 조건에 따라 괄호 안에 들어갈 적절한 내용은 다음과 같습니다.

① - SOA 레코드에서 첫 번째 위치는 주로 해당 도메인의 기본 이름 서버를 나타냅니다. 'ihd.or.kr' 도메인의 경우 이것은 ns.ihd.or.kr. 이 될 것입니다. (마지막에 점을 찍어야 함을 주의하세요. 이는 FQDN(Fully Qualified Domain Name)을 나타냅니다.)

② - SOA 레코드의 두 번째 위치는 도메인에 대한 관리자 연락처 정보입니다. 'kait@ihd.or.kr'를 DNS 형식으로 바꾸면 kait.ihd.or.kr. 가 됩니다. (이메일 주소에서 '@'는 DNS에서 '.'으로 바뀌며, FQDN을 나타내므로 끝에 점을 찍습니다.)

③ - ihd.or.kr 도메인에서 메일을 받기 위한 MX 레코드를 설정해야 합니다. 예를 들어 IN MX 10 mail.ihd.or.kr. 라고 설정할 수 있습니다. 여기서 '10'은 우선 순위를 나타내며, 'mail.ihd.or.kr.'은 메일 서버의 주소입니다.

④ - 'www' 서브 도메인에 대한 A 레코드를 설정하여 IP 주소를 지정합니다. 따라서 www IN A 192.168.5.13 이 됩니다.

최종 설정은 다음과 같습니다.

@ IN SOA ns.ihd.or.kr. kait.ihd.or.kr. (
                         --중략--
                         3H ) ; minimum
     IN NS ns.ihd.or.kr.
     IN A 192.168.5.13
     IN MX 10 mail.ihd.or.kr.
www  IN A 192.168.5.13

2001.16

  1. 다음 그림과 같이 하나의 공인 IP 주소를 이용해서 다수의 서버를 연결하여 구성한 상태이고, iptables를 이용해서 방화벽 규칙(rule)을 설정하는 과정이다. 조건에 맞게 ( 괄호) 안에 알맞은 내용을 적으시오.
가. 현재 설정되어 있는 iptables의 규칙(rule)을 firewall.sh 파일로 저장한다
# ( ① ) ( ② ) firewall.sh

나. 현재 설정되어 있는 iptables의 규칙 (rule)을 전부 제거한다
# iptables ( ③ )


다. firewall.sh 파일에 저장되어 있는 iptables의 규칙(rule)을 불러와서 반영한다.
( ④ ) ( ⑤ ) firewall.sh

라. 적용된 iptables의 규칙(rule)을 확인한다.
# iptables ( ⑥ )

■ 조건

  • ①과 ④번은 관련 명령어를 기입한다.
  • ②와 ⑤번은 해당 조건을 만족시킬 수 있는 명령어의 옵션이나 기호 등을 기입한다.
  • ③과 ⑥번은 관련 옵션을 기입한다.

2001.16.solve

① iptables-save
② >
③ -F
④ iptables-restore
⑤ <
⑥ -L

2002회

2002.02

다음은 사용자의 디스크 사용량을 제한하기 위해 쿼터(Disk Quota)를 설정하는 과정이다.
조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 사전 준비 사항 - 사용자의 디스크 쿼터를 설정하기 위해서는 ( ① ) 파일에서 설정하려는 파티션과관련된 항목의 ( ② ) 번째 필드에 ( ③ )을 추가 기입하고 다시 마운트하거나 재시작해야 한다. 나. 사용자 쿼터 정보가 기록되는 파일을 생성한다. # ( ④ ) /home

■ 조건

  • ①번은 파일명을 절대경로로 기입한다.
  • ②번은 관련 필드에 해당하는 정수 값만 기입한다.
  • ③번은 추가로 설정해야할 내용만을 기입한다.
  • ④번은 관련 명령어만 기입한다.

2002.02.solve

① /etc/fstab
② 4
③ usrquota
④ quotacheck

2002.02.chatGPT 답변

물론입니다. 리눅스 시스템에서 디스크 쿼터(Disk Quota)를 설정하는 것은 관리자가 특정 사용자나 그룹의 디스크 사용량을 제한할 수 있게 해주는 기능입니다. 이 과정에는 몇 가지 단계가 포함되며, 여기에서 언급된 과정들은 다음과 같은 의미를 가집니다:

  1. /etc/fstab 파일 편집:

    • /etc/fstab 파일은 시스템 부팅 시에 파일 시스템을 어떻게 마운트할지 정의하는 중요한 설정 파일입니다.
    • 여기에서 언급된 "4번째 필드"는 특정 파티션의 마운트 옵션을 나타냅니다.
    • usrquotagrpquota 옵션을 추가함으로써, 시스템은 해당 파티션에서 사용자와 그룹의 쿼터를 추적하도록 설정됩니다.
  2. quotacheck 명령어 사용:

    • quotacheck 명령어는 파일 시스템을 검사하여 쿼터 정보를 생성하거나 업데이트하는데 사용됩니다.
    • 이 명령은 보통 쿼터를 처음 설정할 때 실행되며, 쿼터 데이터베이스를 만들거나 업데이트하여 사용자와 그룹의 디스크 사용량을 관리합니다.
    • 예를 들어, quotacheck /home/home 디렉터리(일반적으로 사용자의 홈 디렉터리가 위치하는 곳)에 대한 쿼터 정보를 검사하고 생성합니다.

이러한 설정 후에는 시스템이나 쿼터 서비스를 재시작하여 새 설정이 적용되도록 해야 합니다. 이후 관리자는 quotaon, quotaoff, edquota, repquota 등의 명령어를 사용하여 쿼터를 관리하고 사용자별 또는 그룹별 디스크 사용량을 제한하고 보고할 수 있습니다.

2002.04

다음은 rpm 명령을 이용해서 패키지를 관리하는 과정이다. 조건에 맞게 ( 괄호 ) 안에알맞은 내용을 적으시오.

가. vsftpd 패키지와 의존적인 관계에 있는 파일, 라이브러리, 패키지 목록을 출력한다. 
# rpm ( ① ) vsftpd

나. /etc/shadow 파일을 설치한 패키지 정보를 출력한다. 
# rpm ( ② ) /etc/shadow

다. 지정한 패키지 파일이 설치될 파일이나 디렉터리를 미리 확인한다.
# rpm ( ③ ) totem-2.28.6-2.el6.i686.rpm

라. vsftpd 패키지의 환경 설정 파일 정보만 출력한다. 
# rpm ( ④ ) vsftpd

■ 조건

  • ① ∼ ④번은 관련 옵션만 한 번에 기입한다. (예: -l -u, -alF, -l)

2002.04.solve

① -qR 또는 -q --requires
② -qf 또는 -qif
③ -qlp
④ -qc

2002.04.주의사항

  • man rpm 페이지에서 충분히 정보를 얻을 수 있기 때문에 잘 읽어본다면, 그렇게까지 어려운 문제는 아니지만 3번은 충분히 헷갈릴만 합니다. -f 옵션으로 "파일" 인자를 받고, -p 옵션으로 "패키지파일"을 인자로 받습니다. 따라서, 3번 보기는 .rpm 형식의 패키지 파일을 인자로 받아야하므로 -p 옵션을 덧붙이고, 설치될 파일이나 디렉터리를 미리 확인하기 위해 -l 옵션을 붙여줘야하는 것입니다.

새로운 검색 방법 rpm -qc

  • 저는 4번 보기를 유심히 보았고, vsftpd 가 된다고? 하면서 다음과 같은 결과를 얻을 수 있었습니다.
[root@localhost /]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
[root@localhost /]# 
  • 그럼 httpd도 되나?
[root@localhost /]# rpm -qc httpd
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/etc/logrotate.d/httpd
/etc/sysconfig/htcacheclean
/etc/sysconfig/httpd
[root@localhost /]# 
  • 그냥 너무나도 잘 됩니다. 이게 하나의 파일만 검색해서는 잘 안나오고, 모듈이 설치된 폴더 경로로 들어가 이 설정, 저 설정을 하나씩 출력해가며 확인하는 방법으로 했지만, 이젠 그 모듈의 환경설정은 전부 다 털어 검색해볼 수 있게 되었습니다. 다음 명령어로 말이죠.
[root@localhost /]# grep -i userdir $(rpm -qc httpd)
/etc/httpd/conf.d/userdir.conf:# UserDir: The name of the directory that is appended onto a user's home
/etc/httpd/conf.d/userdir.conf:<IfModule mod_userdir.c>
/etc/httpd/conf.d/userdir.conf:    # UserDir is disabled by default since it can confirm the presence
/etc/httpd/conf.d/userdir.conf:    UserDir disabled
/etc/httpd/conf.d/userdir.conf:    # directory, remove the "UserDir disabled" line above, and uncomment
/etc/httpd/conf.d/userdir.conf:    #UserDir public_html
/etc/httpd/conf.d/userdir.conf:# Control access to UserDir directories.  The following is an example
/etc/httpd/conf.modules.d/00-base.conf:LoadModule userdir_module modules/mod_userdir.so
[root@localhost /]# 
  • 그냥.. 미쳤습니다. userdir 같은건 어딜 뒤져봐도 없거든요. httpd와 관련된 환경설정 파일을 싹다 묶어 검색할 수 있게 된 것입니다.
#UserDir public_html
  • 다음 문구로 어떤식으로 활용해야할지 바로 눈에 보이지 않나요?

2002.05

다음은 모듈 관련 작업 및 커널 컴파일을 진행하는 과정이다. 조건에 맞게 ( 괄호) 안에알맞은 내용을 적으시오.

가. 모듈 간의 의존성이 기록된 파일명을 절대 경로로 기입한다. ( ① )
나. 커널 모듈 간의 의존성을 관리하는 명령으로 ①번에 해당하는 파일과 맵 파일을 생성
한다. ( ② )
다. 커널 컴파일 과정에서 선택한 모듈(m으로 선택)을 생성하는 명령을 기입한다. ( ③ )
라. 커널 컴파일 과정에서 생성한 모듈을 설치하는 명령을 기입한다. ( ④ )

■ 조건

  • ①번은 응시한 리눅스 버전에 맞게 파일명을 절대경로로 기입한다.
  • ② ∼ ④번은 관련 명령어만 기입한다.

2002.05.solve

① /lib/modules/커널버전/modules.dep
(커널버전: 2.6.33.3-85.fc13.i686, 2.6.33.3-85.fc13.x86_64)

② depmod
③ make modules
④ make modules_install

2002.05.chatGPT 해설

리눅스 시스템에서 커널 모듈은 시스템의 기능을 확장하는 데 사용됩니다. 이 모듈들은 커널 컴파일 과정에서 함께 컴파일될 수도 있고, 나중에 필요할 때 불러와져서 사용될 수도 있습니다. 여기서 말하는 의존성(dependency)은 한 모듈이 다른 모듈을 필요로 할 때의 관계를 말합니다.

가. 모듈 간의 의존성이 기록된 파일:

리눅스에서 모듈 간의 의존성 정보는 modules.dep 파일에 저장됩니다. 이 파일은 각 모듈이 어떤 다른 모듈들을 필요로 하는지를 나타내며, 시스템이 올바른 순서로 모듈을 불러올 수 있게 돕습니다.

나. 의존성 파일 생성 명령어:

depmod 명령어는 모든 설치된 커널 모듈을 검사하고, 그 의존성을 분석하여 modules.dep 파일과 관련 맵 파일들을 생성합니다. 이렇게 하면 모듈을 불러올 때 필요한 의존성 정보를 시스템이 알 수 있게 됩니다.

다. 모듈 컴파일 명령어:

make modules 명령어는 리눅스 커널 소스 코드 내에서 사용되며, 현재 커널 설정에 따라 커널 모듈을 컴파일합니다. 이때 'm'으로 표시된 모듈(즉, 선택적으로 빌드되는 모듈)들이 컴파일됩니다.

라. 모듈 설치 명령어:

컴파일된 모듈을 시스템에 설치하기 위해서는 make modules_install 명령어를 사용합니다. 이 명령은 컴파일된 모든 모듈을 시스템의 적절한 위치에 복사하여 설치하며, 필요한 경우 modules.dep 파일과 관련 맵 파일들도 업데이트합니다.

이러한 명령어들은 리눅스 커널 개발자 또는 시스템 관리자가 커널을 커스터마이징하거나 최신 하드웨어 지원, 보안 패치 적용 등의 이유로 커널을 컴파일할 때 사용됩니다.

2002.07

다음은 시스템 로그 관련 설정을 하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은내용을적으시오.

가. 모든 서비스(facility)에 대해 가장 최고 수준(priority)의 위험한 상황인 경우에 root 및 ihduser 사용자의 터미널로 관련 로그를 전송한다. ( ① ) ( ② )

나. 메일 서비스(facility)에서 발생하는 error 수준 메시지만 /var/log/mail_error에 기록한다. 
( ③ ) /var/log/mail_error

다. 인증 서비스 관련 로그는 로컬 시스템의 두 번째 터미널로 전송한다. 
authpriv.* ( ④ )

■ 조건

  • ①번과 ③번은 facility.priority 형식으로 기입한다.
  • ②번과 ④번은 관련 설정(action)을 기입한다.

2002.07.solve

*.emerg 또는 *.panic
② root,ihduser 또는 :omusrmsg:root,ihduser
③ mail.=error 또는 mail.=err
④ /dev/tty2

2002.07./dev

  • 오답 포인트는 두번째 터미널을 /dev/tty2 로 적느냐 아니면 tty2로 적느냐의 싸움입니다. 일반적으로 이게 틀릴만한 포인트인가 싶긴 하지만, 다음 문제를 보면 헷갈릴만 합니다.
나. 로컬시스템의 3번째 터미널 창(/dev/tty3)에 로그인이 성공한 정보를 출력한다.
 # ( ② )
  • 다음 문제의 정답은 last tty3 입니다. last /dev/tty3을 하면 오답 포인트인 것이지요. 이 부분을 착오 없이 헷갈리지 않아야합니다. rsyslog.conf 에선 전체 경로를 쓸것, last, lastb와 같은 로그인 관련 확인할 때는 tty3으로 터미널 이름만 명시할 것. 주의해야겠습니다.

참고로 /dev에 어떤 파일이 있는지 확인하면 다음과 같이 로컬에 터미널이 엄청 많이 존재하는 것을 확인할 수 있습니다.

[root@localhost dev]# ls /dev
autofs           fuse                null      stderr  tty23  tty41  tty6       vcs
block            hpet                nvram     stdin   tty24  tty42  tty60      vcs1
bsg              hugepages           oldmem    stdout  tty25  tty43  tty61      vcs2
btrfs-control    hwrng               port      tty     tty26  tty44  tty62      vcs3
bus              initctl             ppp       tty0    tty27  tty45  tty63      vcs4
cdrom            input               ptmx      tty1    tty28  tty46  tty7       vcs5
centos           kmsg                pts       tty10   tty29  tty47  tty8       vcs6
char             log                 random    tty11   tty3   tty48  tty9       vcsa
console          loop-control        raw       tty12   tty30  tty49  ttyS0      vcsa1
core             lp0                 rtc       tty13   tty31  tty5   ttyS1      vcsa2
cpu              lp1                 rtc0      tty14   tty32  tty50  ttyS2      vcsa3
cpu_dma_latency  lp2                 sda       tty15   tty33  tty51  ttyS3      vcsa4
crash            lp3                 sda1      tty16   tty34  tty52  uhid       vcsa5
disk             mapper              sda2      tty17   tty35  tty53  uinput     vcsa6
dm-0             mcelog              sg0       tty18   tty36  tty54  urandom    vfio
dm-1             mem                 sg1       tty19   tty37  tty55  usbmon0    vga_arbiter
dri              mqueue              shm       tty2    tty38  tty56  usbmon1    vhci
fb0              net                 snapshot  tty20   tty39  tty57  usbmon2    vhost-net
fd               network_latency     snd       tty21   tty4   tty58  vboxguest  zero
full             network_throughput  sr0       tty22   tty40  tty59  vboxuser

2002.09

다음은 ssh 클라이언트에서 ssh 서버인 192.168.12.22로 접근하는 과정이다. 조건에맞게( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 현재 ihduser로 로그인되어 있는 상태이다. kaituser로 계정을 변경해서 접근하는 명령을
기입한다. $ ssh ( ① )
나. ssh 서버의 포트 번호가 180번으로 변경된 경우에 접근하는 명령을 기입한다. $ ssh ( ② )
다. ssh 서버의 홈 디렉터리에 data 디렉터리는 생성하는 명령을 기입한다. $ ssh ( ③ )
라. ssh 서버에 키 기반 인증을 위해 ssh 클라이언트에서 관련 키 쌍을 생성하는 명령을
기입한다. $ ( ④ )

■ 조건

  • ① ∼ ③번은 옵션 및 관련 인자값 등을 한 번에 기입한다. (예: -a, -g ihd)
  • ④번은 관련 명령어를 기입하는데, 옵션이 필요한 경우에는 한 번에 기입한다.

2002.09.solve

① kaituser@192.168.12.22 또는 -l kaituser 192.168.12.22
② -p 180 192.168.12.22
③ 192.168.12.22 mkdir data (또는 ~/data)
④ ssh-keygen

2002.09.howtosolve

  • 난이도 말이 안되게 어렵습니다. 5개년 기출 훑어보면서 ssh 관련 문제는 전부 sshd_config로 출제되었습니다. 딱 이 문제를 제외하면 말이죠.

  • 일단 man 페이지로 다음 명령어의 쓰임새를 확인해보면 다음과 같습니다.

ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
         [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile]
         [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address]
         [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
         [-Q query_option] [-R address] [-S ctl_path] [-W host:port]
         [-w local_tun[:remote_tun]] [user@]hostname [command]
  • 마지막에 인자로 [user@]hostname [command]가 있는데, 어이가 없는게 user@]hostname 띄어쓰기가 없어 언뜻 보면 user@|hostname로 보여 hostname을 반드시 쓰지 않아도 되는 것처럼 느껴진다는 것입니다.

  • 즉, ssh 명령은 반드시 hostname을 인자로 받아야하며, 192.168.12.22를 명령어마다 꼬박꼬박 써줘야 한다는게 고난이도의 이유입니다. 예제도 한두개 숨어있지만 문제를 풀기 위해선 역부족인 man 페이지입니다. 꼼꼼하게 눈에 익혀둬야겠습니다.

2002.11

다음은 아파치 웹 사용자 인증을 위해 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에알맞은 내용을 적으시오.

가. 아파치 웹 사용자로 ihduser를 생성하고, 저장되는 파일명은 /etc/password로 지정한다. (단, /etc/password은 처음 생성하는 파일이다. )
# ( ① ) ( ② ) /etc/password ihduser
나. httpd.conf 파일에 인증할 디렉터리 관련 설정을 한다. 
<Directory "/usr/local/apache/htdocs/admin">
 AllowOverride ( ③ ) 
</Directory>
 
다. 아파치 웹 사용자 인증 대상 디렉터리인 /usr/local/apache/htdocs에 생성할 파일명을
기입한다. 
( ④ )

■ 조건

  • ①번은 관련 명령어만 기입한다.
  • ②번은 ①번에 사용되는 명령어의 옵션을 기입한다. 명령어가 틀리면 채점하지 않는다.
  • ③번은 설정값만 기입한다.
  • ④번은 해당 디렉터리 안에 생성할 파일명을 기입한다.

2002.11.solve

① htpasswd
② -c
③ AuthConfig
④ .htaccess

2002.11.howtosolve

  • 4번의 경우 그냥 외워야 합니다. cat httpd.conf | grep htaccess라는 명령어로 출력이 되긴 하는데 솔직히 외우지 않으면 못풀 것 같습니다.
# The following lines prevent .htaccess and .htpasswd files from being 
# viewed by Web clients. 

2002.12

다음은 삼바 서버 관련해서 설정 내용을 확인하는 과정이다. 조건에 맞게 ( 괄호) 안에알맞은 내용을 적으시오.

가. 삼바 클라이언트에서 삼바 서버로 운영중인 192.168.5.13의 공유 디렉터리를 확인한다. 
# ( ① ) ( ② ) 192.168.5.13

나. 공유된 디렉터리가 192.168.5.13의 data 디렉터리로 확인되었다. 접근하는 명령을 기입한다. 
# ( ① ) ( ③ )

다. 삼바 서버에서 환경 설정 파일인 smb.conf 파일의 설정 여부를 확인한다. 
# ( ④ )

■ 조건

  • ①번은 관련 명령어만 기입한다.
  • ②번은 ①번에 사용되는 명령어의 옵션을 기입한다. 명령어가 틀리면 채점하지 않는다.
  • ③번은 지정한 디렉터리 접근할 때 사용하는 설정값만 기입한다.
  • ④번은 관련 명령어만 기입한다.

2002.12.solve

① smbclient
② -L
③ \\192.168.5.13\data 또는 //192.168.5.13/data
④ testparm

2002.15

다음은 TCP Wrapper를 이용해서 접근 제어를 설정하는 과정이다. 조건에 맞게 ( 괄호) 안에알맞은 내용을 적으시오.

가. 모든 서비스에 대한 모든 호스트의 접근을 차단한다. 
# vi /etc/hosts.deny
 ( ① )
나. 텔넷 서비스에 대해 192.168.5.0 네트워크 대역에 속한 호스트의 접근을 허가한다. 
( ② )
다. ssh 서비스에 대해 IP 주소가 192.168.5.13인 호스트만 허가한다. 
( ③ )
라. vsftpd 서비스에 대해 ihd.or.kr 도메인에 속한 호스트만 허가한다. 
( ④ )

■ 조건

  • ①번은 제시된 조건과 관련된 설정값을 한 줄로 기입한다.
  • ② ∼ ④번은 /etc/hosts.allow에 설정하는 과정이고, 제시된 조건과 관련된 설정값을한 줄씩 기입한다.

2002.15.solve

① ALL: ALL
② in.telnetd: 192.168.5. (또는 192.168.5.0/255.255.255.0)
③ sshd: 192.168.5.13
④ vsftpd: .ihd.or.kr

2002.15.주의사항

  • hosts.deny에서 문제를 풀 때에는 @ihd.or.kr로 도메인을 표시하지 않는다. "모든 도메인"을 표시하는 방법은 .ihd.or.kr 로 표현해야한다.

2002. 16

다음 그림과 같이 하나의 공인 IP 주소를 이용해서 다수의 서버를 연결하여 구성한 상태이고, iptables를 이용해서 방화벽 규칙(rule)을 설정하는 과정이다. 조건에 맞게 ( 괄호) 안에알맞은 내용을 적으시오.

- 외부로부터 들어오는 웹 서비스 요청을 내부의 사설 IP 주소가 192.168.0.4인 웹 서버로 전달한다. 
# iptables -t ( ① ) -A ( ② ) -p ( ③ ) -d 203.247.50.100 ( ④ ) -j ( ⑤ ) --to ( ⑥ )

■ 조건

  • ① ∼ ⑥ 번은 명령어의 옵션, 설정값, 옵션 및 인자값을 조건에 맞게 기입한다

2002.16.solve

① nat
② PREROUTING
③ tcp
④ --dport 80
⑤ DNAT
⑥ 192.168.0.4:80

2002.16.howtosolve

  • nat, PREROUTING, DNAT 까지는 쉽게 풀 수 있는 문제였지만, 나머지가 풀기 정말 어려웠습니다. 도대체 --dport 80, :80, tcp는 어디서 나온 것일까요?

tcp에 대한 gpt 답변

TCP(Transmission Control Protocol) 포트 번호는 인터넷 프로토콜 스위트에서 호스트 내의 특정 프로세스나 서비스를 식별하기 위해 사용됩니다. 포트 번호는 0부터 65535까지 있으며, 0부터 1023까지는 잘 알려진 포트 번호로 예약되어 있고, 일반적으로 시스템 또는 관리자 권한이 필요한 서비스에 사용됩니다.

일부 잘 알려진 TCP 포트 번호는 다음과 같습니다:

  • 20, 21: FTP (File Transfer Protocol)
  • 22: SSH (Secure Shell)
  • 23: Telnet
  • 25: SMTP (Simple Mail Transfer Protocol)
  • 53: DNS (Domain Name System)
  • 80: HTTP (Hypertext Transfer Protocol)
  • 110: POP3 (Post Office Protocol version 3)
  • 143: IMAP (Internet Message Access Protocol)
  • 443: HTTPS (HTTP Secure)
  • 993: IMAPS (IMAP Secure)
  • 995: POP3S (POP3 Secure)

1024부터 49151까지의 포트 번호는 등록된 포트로, 특정 서비스를 위해 할당됩니다. 49152부터 65535까지는 동적 또는 개인 포트로 사용되며, 일시적인 통신에 사용되는 포트 번호입니다.

  • 그냥 ssh같은게 22번인 것을 tcp라고 부르고, 문제에서는 http를 연결한다는 느낌으로 간 것 같습니다. 근데 정말 어렵네요..

2101회

2101.02

다음은 2개의 하드디스크를 이용해서 스트라이핑(striping) 기술이 적용된 RAID를 구성하는 과정이다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

# ( ① ) ( ② ) /dev/md0 ( ③ ) /dev/sdb1 /dev/sdc1

■ 조건

  • 2개의 분할된 파티션인 /dev/sdb1, /dev/sdc1에 스트라이핑(striping) 기술을 적용해서 /dev/md0이라는 RAID 장치로 생성한다.
  • ①번은 관련 명령어만 기입한다.
  • ②번은 ①번 명령어의 옵션 하나만 기입한다.
  • ③번은 ①번 명령어의 옵션을 기입하는데, 여러 옵션과 인자 값이 필요한 경우에는 한 번에 기입한다. (예: -g ihd -d /home/ihd/lin)
  • ①번에 기입되는 명령어가 틀리면 ②번과 ③번은 채점하지 않는다.

2101.02.solve

① mdadm
② -C 또는 --create
③ -l 0 -n 2 또는 --level=0 --raid-devices=2

2101.04

다음은 파일 시스템을 점검하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. XFS 파일 시스템인 /dev/sdb1을 점검한다.
# ( ① ) /dev/sdb1

나. EXT4 파일 시스템인 /dev/sdc1을 점검한다.
# ( ② ) /dev/sdc1

■ 조건

  • ①번과 ②번은 특별한 옵션이나 인자값 없이 관련 명령어만 기입한다.

2101.04.solve

① xfs_repair
② fsck 또는 e2fsck 또는 fsck.ext4

2101.04.chatGPT 답변

가. XFS 파일 시스템을 점검하기 위해 사용하는 명령어는 xfs_repair입니다.

나. EXT4 파일 시스템을 점검할 때 사용하는 명령어는 e2fsck입니다.

따라서 조건에 맞추어 다음과 같이 적으면 됩니다.

가. XFS 파일 시스템인 /dev/sdb1을 점검한다.
# ( xfs_repair ) /dev/sdb1

나. EXT4 파일 시스템인 /dev/sdc1을 점검한다.
# ( e2fsck ) /dev/sdc1

2101.11.solve

개인 사용자의 홈페이지 등록과 관련된 아파치 웹 서버 환경 설정을 진행하려고 한다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 관련 모듈과 환경 설정 파일을 활성화시킨다.
# vi httpd.conf
 LoadModule ( ① ) 
 Include ( ② ) 

나. 개인 사용자들의 웹 문서가 위치하는 디렉터리를 www로 지정한다.
# vi ( ③ ) 
 ( ④ ) 

■ 조건

  • 아파치 웹 서버는 소스 파일을 이용해서 /usr/local/apache 디렉터리에 설치되어 있다.
  • ①번과 ②번은 관련 설정 내용을 한 번에 기입한다.
  • ③번은 환경 설정 파일명을 절대경로로 기입한다.
  • ④번은 ③번 파일에 존재하는 항목과 값을 하나로 기입하고 대소문자를 구분하여 정확히 기재한다. (예: LogLevel warn)

2101.11.solve

① userdir_module modules/mod_userdir.so
② conf/extra/httpd-userdir.conf
③ /usr/local/apache/conf/extra/httpd-userdir.conf
④ UserDir www

2101.11.chatGPT 답변

아파치 웹 서버에서 개인 사용자의 홈페이지를 설정하는 경우 주로 "userdir" 모듈을 사용하고, 이와 관련된 설정은 httpd.conf 파일 또는 그것을 포함하는 설정 파일에 위치합니다. 아래 내용은 주어진 조건을 토대로 채워진 것입니다.

가. 관련 모듈과 환경 설정 파일을 활성화시킨다.
# vi /usr/local/apache/conf/httpd.conf
 LoadModule userdir_module modules/mod_userdir.so
 Include conf/extra/httpd-userdir.conf

나. 개인 사용자들의 웹 문서가 위치하는 디렉터리를 www로 지정한다.
# vi /usr/local/apache/conf/extra/httpd-userdir.conf
 UserDir www
  • ①번 자리에는 "userdir_module modules/mod_userdir.so"가 들어갑니다. 이는 "userdir" 모듈을 활성화하는 데 필요한 명령입니다.
  • ②번 자리에는 "conf/extra/httpd-userdir.conf"가 들어갑니다. 이는 개인 사용자 디렉토리 설정을 담고 있는 추가 설정 파일을 포함시키는 명령입니다.
  • ③번 자리에는 환경 설정 파일의 절대 경로 "/usr/local/apache/conf/extra/httpd-userdir.conf"가 들어갑니다.
  • ④번 자리에는 "UserDir www"가 들어갑니다. 이는 개인 사용자의 웹 문서가 위치할 기본 디렉터리를 설정하는 명령입니다.

위 설정들은 아파치 서버가 해당 디렉터리의 사용자 이름에 해당하는 하위 디렉터리 내의 www 폴더를 사용자의 홈페이지로 접근하도록 설정합니다. 예를 들어, http://example.com/~user 요청은 /home/user/www 디렉터리 내의 파일을 참조하게 됩니다.

2101.11.필자의 의견

  • rpm -qc를 활용하여 3번 보기를 풀면 안됩니다. /etc/http~ 경로에 있는 httpd.conf와 /usr/local/~ 경로의 httpd.conf 의 내용은 전부 똑같을지언정 답을 적어내는 경로는 많이 다르기 때문에 반드시 find / | grep -i userdir 로 검색하여 푸는 것이 현명하다고 할수 있겠습니다.

  • 잘못된 예시

[root@localhost conf]# grep -ri userdir $(rpm -qc httpd)
/etc/httpd/conf.d/userdir.conf:# UserDir: The name of the directory that is appended onto a user's home
/etc/httpd/conf.d/userdir.conf:<IfModule mod_userdir.c>
/etc/httpd/conf.d/userdir.conf:    # UserDir is disabled by default since it can confirm the presence
/etc/httpd/conf.d/userdir.conf:    UserDir disabled
/etc/httpd/conf.d/userdir.conf:    # directory, remove the "UserDir disabled" line above, and uncomment
/etc/httpd/conf.d/userdir.conf:    #UserDir public_html
/etc/httpd/conf.d/userdir.conf:# Control access to UserDir directories.  The following is an example
/etc/httpd/conf.modules.d/00-base.conf:LoadModule userdir_module modules/mod_userdir.so

2101.14

firewalld를 이용해서 방화벽 정책을 설정하는 과정이다. 작업 사항에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

 (작업 사항) 웹 서비를 public 영역에 설정하는데, 시스템 재부팅 이후에도 지속적으로 방화벽 정책이 적용되도록 설정한다.

 # ( ① ) ( ② ) ( ③ ) ( ④ )

■ 조건

  • ①번은 관련 명령어를 기입한다.
  • ②번부터 ④번은 해당 조건을 만족시킬 수 있는 ①번 명령어의 옵션을 하나씩 기입한다. 순서는 무관하나 ①번 명령어가 틀리면 채점하지 않는다.

2101.14.solve

① firewall-cmd
② --permanent
③ --zone=public
④ --add-service=http (②∼④는 순서 무관)

2101.14.howtosolve

  • man firewalld → 맨밑 → firewall-cmd

2101.15

다음은 DNS 서버의 역 존(Reverse zone) 파일을 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

@ IN SOA ( ① ) ( ② ) 
         --중략
         3H)   ;  minimum
( ③ ) 
( ④ )

■ 조건

  • IP 주소는 10.0.2.15이고, 설정하는 도메인은 ihd.or.kr이다.
  • 관리자 메일 주소는 kait@ihd.or.kr로 설정한다.
  • 네임 서버는 ns.ihd.or.kr을 사용한다.
  • 10.0.2.15인 IP 주소를 조회하면 ihd.or.kr가 나타나도록 설정한다.

2101.15.solve

① ns.ihd.or.kr.
② kait.ihd.or.kr.
③ IN NS ns.ihd.or.kr. (첫 번째 필드는 공백이고, IN은 생략 가능)
④ 15 IN PTR ihd.or.kr. (15 및 IN은 생략 가능함) (③∼④는 순서 무관)

2102회

2102.06

다음은 2개의 하드디스크를 이용해서 LVM을 구성하는 과정이다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 2개의 파티션을 물리적 볼륨으로 구성한다.
# ( ① ) /dev/sdb1 /dev/sdc1

나. 물리적 볼륨을 lvm0이라는 볼륨 그룹으로 구성한다.
# ( ② ) /dev/sdb1 /dev/sdc1

다. 약 2GB정도의 논리적 볼륨을 생성하는데, 이름은 kdata1로 설정한다.
# ( ③ ) ( ④ )

■ 조건

  • ①번은 관련 명령어만 기입한다.
  • ②번은 관련 명령어 또는 명령어 및 인자값을 한 번에 기입한다.
  • ③번은 관련 명령어만 기입한다.
  • ④번은 ③번에 기입한 명령어를 제외한 나머지를 한 번에 기입하고, 명령어 틀리면 채점하지 않는다.

2102.06.solve

① pvcreate
② vgcreate lvm0
③ lvcreate
④ -L 2000M -n kdata1 lvm0

2102.06.주의사항

  • man lvm 으로 검색하고 맽 밑으로 내리면, pvcreate, vgcreate 등 정보를 얻을 수 있다. 여기서, 각 명령어들을 찾으면 된다.

  • 주의사항은 vgcreate lvm0, 그리고 다. 설명에서 vg에 대한 언급이 없어서 헷갈리는데, 어쨌든 vg를 인자로 받아야 논리적 볼륨이 생성되는 것이므로 lvm0을 마지막에 꼭 써줘야 한다는 점이다.

2102.09

외부로부터의 접근을 일시적으로 허가하기 위해서 SELinux 설정을 확인하고 제어하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 현재 SELinux 설정 상태를 확인한다.
# ( ① )

나. SELinux를 비활성화 상태로 바꾼다.
# ( ② )

■ 조건

  • ①번과 ②번은 명령어 또는 명령어와 인자값 조합으로 기입한다.

2102.09.solve

① getenforce
② setenforce 0

2102.12

다음은 메일 서버를 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 발신지 도메인의 spam.com으로부터 오는 메일을 거부하는데, 별도의 메세지는 보내지 않도록 설정한다.
 # vi ( ① )
 ( ② )

나. 변경된 내용이 적용되도록 관련 정보를 갱신시킨다.
 # ( ③ ) ( ① ) ( ④ ) ( ① )
 

■ 조건

  • ①번은 관련 파일명을 절대 경로로 기입한다.
  • ②번은 관련 설정을 한 줄로 기입한다.
  • ③번은 관련 명령어 또는 명령어와 인자 값 조합으로 한 번에 기입한다.
  • ④번은 관련 기호를 기입한다.

2102.12.solve

① /etc/mail/access
② From:spam.com DISCARD
③ makemap hash
④ <

2102.12.오답포인트

  • 다음 문제는 2번 보기가 어려운 보기였습니다. discard? drop? reject? 너무 헷갈립니다.

  • option

    • OK (모든 것을 허용)
    • RELAY (메일의 수신/발신을 허용)
    • REJECT (메일의 수신/발신을 거부)
    • DISCARD (/etc/sendmail.cf에서 설정된 $#discard mailer에 지정된 곳으로 메일을 폐기함)

2102.13

다음 조건에 따라 아파치 웹 서버 환경 설정을 진행하려고 한다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 아파치 웹 서버 환경 설정 파일을 vi 편집기로 불러온다.
# vi ( ① )
 
나. 도메인명을 www.ihd.or.kr으로 지정하고 포트 번호는 80을 사용한다.
 ( ② )
 

다.웹 문서가 위치하는 디렉터리의 경로는 /usr/local/apache/html로 변경한다.
 ( ③ )
 
라. 아파치 웹 서버 데몬을 실행한다.
# ( ④ )

■ 조건

  • 아파치 웹 서버는 소스 파일을 이용해서 /usr/local/apache 디렉터리에 설치되어 있다.
  • ①번은 아파치 웹 서버의 환경 설정 파일명을 절대 경로로 기입한다.
  • ②번과 ③번은 ①번 파일에 존재하는 항목과 값을 하나로 기입하고 대소문자를 구분하여 정확히 기재한다. (예 : LogLevel warn)
  • ④ 아파치 데몬을 실행하는 명령을 정확히 기입한다.

2102.13.solve

① /usr/local/apache/conf/httpd.conf
② ServerName www.ihd.or.kr:80
③ DocumentRoot "/usr/local/apache/html"
④ /usr/local/apache/bin/apachectl start

  • 사실 그렇게까지 어려운 문제는 아니었습니다. 4번 보기만 배고 말이죠. service httpd start가 아닙니다. apache/bin 폴더에 존재하는 apachectl 명령어를 사용해야합니다.

2201회

2201.01

다음은 사용자를 관리하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. ihduser 사용자를 생성하는데, 주 그룹은 kait로 추가 그룹은 ihd로 지정한다.
 # useradd ( ① ) kait ( ② ) ihd ihduser

나. ihduser 사용자를 추가로 linuxmaster라는 그룹에 포함한다.
 # ( ③ ) ( ④ ) ihduser

■ 조건

  • ①번부터 ②번에는 관련 명령어의 옵션만 기입한다.
  • ③번은 관련 명령어만 기재한다.
  • ④번은 ③번 명령어의 옵션 기재하는데, 다수의 옵션을 사용할 경우에도 한 번에 기재한다. (예: -a -b)
  • 실행에 필요한 관련 그룹은 미리 생성되어 있고, 명령어가 틀린 경우 옵션 부분은 배점하지 않는다.

2201.01.solve

① -g
② -G
③ usermod
④ -a -G (linuxmaster)

2201.01.주의사항

useradd에서의 man 페이지이다

-g, --gid GROUP
           The group name or number of the user's initial login
           group. The group name must exist. A group number must
           refer to an already existing group.

           If not specified, the behavior of useradd will depend on
           the USERGROUPS_ENAB variable in /etc/login.defs. If this
           variable is set to yes (or -U/--user-group is specified
           on the command line), a group will be created for the
           user, with the same name as her loginname. If the
           variable is set to no (or -N/--no-user-group is
           specified on the command line), useradd will set the
           primary group of the new user to the value specified by
           the GROUP variable in /etc/default/useradd, or 100 by
           default.

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
           A list of supplementary groups which the user is also a
           member of. Each group is separated from the next by a
           comma, with no intervening whitespace. The groups are
           subject to the same restrictions as the group given with
           the -g option. The default is for the user to belong
           only to the initial group.
  • 다음을 보면, supplementary 라고 명시가 되어있는데, 보충 그룹, 즉 추가그룹인 것이다. 이 점을 주의해서 -g와 -G의 차이점을 숙지하면 좋겠다.

한편, usermod에서의 man 페이지이다

-a, --append
           Add the user to the supplementary group(s). Use only
           with the -G option.

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
           A list of supplementary groups which the user is also a
           member of. Each group is separated from the next by a
           comma, with no intervening whitespace. The groups are
           subject to the same restrictions as the group given with
           the -g option.

           If the user is currently a member of a group which is
           not listed, the user will be removed from the group.
           This behaviour can be changed via the -a option, which
           appends the user to the current supplementary group
           list.
  • 다음과 같이, user를 추가로 그룹에 추가시키고 싶을때 -a 옵션을 사용해야하며, -G 옵션과 반드시 같이 써야한다고 나와있다. 그래서 -G만 쓰면 틀린 보기가 되며, -a -G 로 정답을 써야하는 것이다.

2201.02

다음은 디렉터리 생성 후 특정 그룹과 관련해서 권한을 설정하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. project 그룹 및 관련 작업 디렉터리를 생성한다.
# mkdir /project
# groupadd project

나. /project 디렉터리의 그룹 소유권을 project로 변경한다.
 # ( ① ) ( ② ) /project

다. /project 그룹에 속한 사용자만 /project 디렉터리에 접근할 수 있고, 파일 생성 시에는 자동으로 그룹 소유권이 project로 지정되도록 한다. 
또한 해당 디렉터리에 있는 파일 삭제는 본인 소유인 경우에만 가능하도록 설정한다.
 # ( ③ ) ( ④ ) /project

■ 조건

  • ①번과 ③번은 관련 명령어만 기입한다.
  • ②번과 ④번에는 명령어만 관련된 인자값을 기록한다. 관련 명령어가 틀리면 채점하지 않는다.
  • ④번은 /project 디렉터리의 허가권 값을 알 수 없는 상황을 고려한다.

2201.02.solve

① chgrp (2번과 함께 맞추면 chown도 정답으로 인정)
② project
③ chmod
④ 3770 또는 3070

2201.02.-R 옵션을 사용하면 안되는 이유

-R 옵션은 리눅스의 chmodchown 명령어에서 사용하며, 해당 디렉터리와 그 안에 포함된 모든 파일 및 하위 디렉터리에 대하여 재귀적으로 권한을 변경하고 싶을 때 사용합니다. 만약 /project 디렉터리 안에 다수의 파일과 하위 디렉터리가 있고, 모든 내용에 대해 권한 변경을 일괄적으로 적용하고자 할 때 -R 옵션을 사용할 수 있습니다.

다만, 당신의 원래 요구사항에서는 /project 디렉터리에 대한 권한 설정만 언급되었고, 하위 파일이나 디렉터리에 대한 언급이 없었습니다. 그렇기 때문에 -R 옵션 없이 명령을 수행하는 것이 원하는 작업에 더 부합할 수 있습니다.

만약 /project 디렉터리와 그 안의 모든 파일과 하위 디렉터리에도 동일한 권한을 설정하고자 한다면 -R 옵션을 포함시켜 명령을 실행할 수 있습니다.

예를 들어, /project 디렉터리와 그 안의 모든 내용에 대해 재귀적으로 그룹 권한을 설정하고자 할 때는 다음과 같이 사용할 수 있습니다.

이 명령은 /project 디렉터리뿐만 아니라 그 안에 있는 모든 파일과 하위 디렉터리에 대해서도 그룹 사용자에게 읽기, 쓰기, 실행 권한을 주고, 다른 사용자의 모든 권한을 제거하며, 생성되는 파일들이 project 그룹 소유가 되도록 합니다.

2201.05

다음은 모듈 확인 및 관리하는 과정이다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 리눅스 커널에 적재된 모든 정보를 출력한다.
# ( ① )

나. virtis net ko'라는 거린 모듈의 정보를 출력한다.
# ( ② ) virtio net.ko.xz

다. 지정된 모듈을 삭제하면서 연관된 모듈들도 함께 삭제한다.
# ( ③ ) ( ④ ) virtio net

■ 조건

  • ①번부터 ③번에는 관련 명령어만 기재한다.
  • ④번에는 관련 명령어의 옵션 하나만을 기재한다.
  • 명령어가 틀린 경우 옵션이나 인자값 부분은 배점하지 않는다.

2201.05.solve

① lsmod
② modinfo
③ modprobe
④- r 또는 --remove

2201.07

다음은 시스템 로그 관련 설정을 하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가.  모든 서비스(facility)에 발생하는 메시지 중에 error 수준 이상의 메시지만 /var/log/critical 파일에 기록하는데, 커널이 발생하는 메시지는 제외한다.
( ① ) /var/log/critical

나. 모든 서비스(facility)에서 발생하는 alert 수준의 메시지만 로그인된 root 사용자의 터미널로 전송한다.
( ② ) ( ③ )
 
다. 인증 서비스와 관련된 모든 메시지는 /var/log/login_list 파일에 기록한다.
( ④ ) /var/log/login_list

■ 조건

  • ①번부터 ④번에는 로그 관련 설정 파일에서 지정한 형식에 맞게 기재한다.

2201.07

.error;kern.none 또는 .err;kern.none
.=alert
③ root 또는 :omusrmsg:root
④ authpriv.

2201.07.주의사항

  • 1번의 경우, kern의 정보를 받아들이지 않는다는 뜻이므로, kern.!=* 과 같이 쓰면 안되고, kern.none로 kern의 메시지를 모두 차단한다는 의미로 적어야 한다.

2201.11

다음은 조건에 따라 아파치 웹 서버에서 주 도메인 이외에 0메인을 운영하기 위해 설정하는 과정이다. ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 관련 모듈과 환경 설정 파일을 활성화한다.
# vi httpd.conf
LoadModule ( ① )
Include ( ② )

나. 관련 파일에서 추가 도메인에 대한 설정을 진행한다.
# vi ( ③ )
< ( ④ ) 192.168.5.13:80>
  ServerAdmin admin@ihd.or.kr
  DocumentRoot "/usr/local/apache/htdocs"
</ ( ④ )>

■ 조건

  • 아파치 웹서버는 소스 파일을 이용해서 /usr/local/apache 디렉터리에 설치되어 있다.
  • ①번과 ②번에는 관련 설정 내용을 한 번에 기입한다.
  • ③번에는 아파치 웹 서버의 환경 설정 파일명을 절대경로로 기재한다.
  • ④번에는 설정 항목을 기재한다.

2201.11.solve

① vhost_alias_module modules/mod_vhost_alias.so
② conf/extra/httpd-vhosts.conf
③ /usr/local/apache/conf/extra/httpd-vhosts.conf
④ VirtualHost

2201.16

다음은 DHCP 서버의 설정 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

가. 기본 테이블인 필터의 모든 사슬에 설정된 정책 정보를 출력한다.
# iptalbes ①

나. 기본 테이블인 필터의 모든 사슬에 설정된 정책 정보(포트, 프로토콜 등)를 숫자값으로 출력한다.
# iptables ②

다. 기본 테이블인 필터의 모든 사슬에 설정된 정책 정보를 패킷, 바이트 등을 추가하여 자세히 출력한다.
# iptables ③

라. 기본 테이블인 필터의 INPUT 사슬에 설정된 정책 정보만 출력한다.
#iptables  ④

마. NAT 테이블의 모든 테이블에 설정된 정책 정보를 출력한다.
# iptables ⑤

바 기본 테이블인 필터의 INPUT 사슬에 설정된 정책 정보의 앞부분에 번호를 덧붙여 출력한다.
# iptables ⑥

■ 조건

  • ①번부터 ⑥번에는 명령어의 옵션, 옵션 및 인자값을 조건에 맞게 한 번에 기재한다.

2201.16

① -L 또는 --list
② -nL
③ -vL
④ -L INPUT
⑤ -t nat -L
⑥ -L INPUT --line-number(s)

profile
개발자 블로그 ^0^

0개의 댓글