favicon Jay Lee DevLog

728x90
300x250

요 몇일 너무 바빠서 공부를 거의 못했다..

당장 다음 주 시험인데 큰일난 것 같다.. 다시 열공해야지..

그리고 리눅스마스터1급의 경우 시험장소가 10일전부터 확인이 가능한데,

시험장소도 굉장히 적을 뿐더러,

서울, 수원 두곳 밖에 접수가 되지 않는다.

여기서 팁을 주면 시험 장소가 발표되는 당일날은

대표번호로 전화해서 시험 장소를 변경할 수 있다.(당일만 된다.)

대표번호로 전화하면 ARS로 연결되는데 하라는대로 한 다음에

아무 응답이 없는 상태로 30초 정도가 지나면

상담원 연결은 0번 음성이 나오니 꼭 끊지말고 기다리자.

그리고 연결될 때까지 기다리는게 현명한 방법이다.

시험장이 너무 멀다 싶으면 꼭 변경하길 바란다.

 


2018년 9월 기출문제

1. 리눅스 실무의 이해

cnt = $0 → 스크립트의 이름과 경로의 길이를 반환
"$var” → 선언된 var의 변수 값을 참조
대충 스크립트를 살펴보면 현재 실행 중인 스크립트의 파일이름의 글자 수 만큼 var를 증가시키는 것으로 보인다.
㉠은 while 문의 한계값을 설정해줘야 하기 때문에 ${#cnt} (변수 cnt의 길이를 반환하는 표현식)이 들어가야 하고
㉡은 결과 값으로  스크립트의 이름과 경로의 길이까지 포함한 총 길이 (./example)인 10을 반환해야 한다.

 

<문제 해설>
시스템 실행/중지/재실행, 런레벨이 따라 조정 안됨
-systemctl -> /usr/bin/systemctl
-service   -> /etc/init.d

런레벨에 따라 실행 구분 가능
-ntsysv    : text 환경에서 커서를 이용해서 booting 중 자동으로 실행되는 서비스를 설정,
-chkconifg : booting시 자동으로 실행되는 서비스를 설정,  
             /etc/rc.d/rcN.d의 각디렉토리에 있는 S로 시작하는 링크파일과 K로 시작하는 링크파일을 생성/삭제함으로써 부팅시에 자동실행할 서비스를 결정할 수 있다.

 

 

$: Shell 변수 기호로 뒤에 오는 문자열을 변수로 취급한다.
():부속 shell(subshell)을 뜻하는 기호로 하나의 셸 단위로 묶어준다.

 

xfree86은 1990년대와 2000년대 초기 많은 리눅스 배포판에 쓰였지만,
2004년 2월 라이선스 논란 이후로 Xfree86의 코드를 기반으로 한 x.org서버가 사용되고있다.

 

부팅과 관련된 실행 레벨이 정의되어 있다. => /etc/inittab
시스템 초기화와 관련된 내용이 설정되어있다. => /etc/init/rcS.conf
부팅 시 각 레벨별로 진행되는 내용이 설정된 파일이다. => /etc/init/rc.conf

 

SIGKILL : 킬
SIGINT : 터미널 인터럽트 신호
SIGQUIT : 터미널 종료 신호
SIGSTOP : 실행 정지

 

ethtool : 리눅스 네트워크 드라이버 및 하드웨어 설정 조회 및 변경 명령어.

 

 

/etc/hosts : 리눅스에서 DNS보다 먼저 호스트명을 IP로 풀어주는 파일.
/etc/resolv.conf : 요청할 DNS 서버를 지정할 때 사용하는 파일.
/etc/sysconfig/network : 시스템의 Hostname/Default Gateway정보를 지정할 때 사용하는 파일.

 

ISO, EIA, IEEE -> 프로토콜 제정 기관
ICANN -> 인터넷 도메인 관리와 정책을 결정하는 국제기구

 

 

 

 

2. 리눅스 시스템 관리

/etc/login.defs : 사용자 계정의 서렁과 관련된 기본 값을 정의한 파일
-UID_MIN, UID_,MAX , 1000~60000, 사용자 계정의 UID 범위

ㅇ /etc/skel :
   사용자 계정이 생성될 때 /etc/skel/ 디렉터리의 내용들이 사용자의 홈 디렉터리로 복사된다.
   (Ex: .bashrc, .bash_logout, .bash_profile)
ㅇ etc/shadow : 암호화된 패스워드와 패스워드 설정 정책이 기재
ㅇ /etc/default/useradd :
  useradd 명령으로 사용자 생성시 사용되는 기본 설정 값이 저장된 환경설정 파일
  사용자 추가 시에 행성되는 홈 디렉토리를 특정위치에에 생성되도록 설정

 

ㅇ chmod o+w /data -> 게스트 유저에게 쓰기 권한(w) 지정
  
   chmod [OPTION] [MODE] [FILE]
      OPTION
        -v : 모든 파일에 대해 모드가 적용되는 진단(diagnostic) 메시지 출력.
        -f : 에러 메시지 출력하지 않음.
        -c : 기존 파일 모드가 변경되는 경우만 진단(diagnostic) 메시지 출력.
        -R : 지정한 모드를 파일과 디렉토리에 대해 재귀적으로(recursively) 적용.
      MODE
        파일에 적용할 모드(mode) 문자열 조합.
          u,g,o,a : 소유자(u), 그룹(g), 그 외 사용자(o), 모든 사용자(a) 지정.
          +,-,=   : 현재 모드에 권한 추가(+), 현재 모드에서 권한 제거(-), 현재 모드로 권한 지정(=)
          r,w,x   : 읽기 권한(r), 쓰기 권한(w), 실행 권한(x)
          X       : "디렉토리" 또는 "실행 권한(x)이 있는 파일"에 실행 권한(x) 적용.
          s       : 실행 시 사용자 또는 그룹 ID 지정(s). "setuid", "setgid".
          t       : 공유모드에서의 제한된 삭제 플래그를 나타내는 sticky(t) bit.
          0~7     : 8진수(octet) 형식 모드 설정 값.

 

find / -type f -perm 4000
/(루트) 아래에 있는 -perm 4000(Set-UID)설정된 -type f(파일)을 find(찾겠다)
[해설작성자 : 앱준클라스]

perm 4000 : 정확히 같은 권한을 가진 파일을 찾는다
perm -4000 : 부여한 권한을 만족하는 파일을 전부 찾는다
perm /4000 : 부여한 권한을 하나라도 만족하는 파일을 찾는다.

-c : 오브젝트 파일 생성
-o : 실행파일 생성

 

타임스탬프 관련이라고 무조건 'touch'를 고르시면 안됩니다.
'touch'는 타임스템프를 수정하거나 생성하는 명령어지 확인하는 명령어는 아니죠.
타임스탬프 정보는 'stat'의 항목 중 하나로 나옵니다.

 

quota : 디스크쿼터(diskquota), 특정 사용자가 과도하게 디스크를 사용하는것을 제한하기 위해 디스크 쿼터를 설정하는 명령어
edquota(edit quota) : 쿼터설정(편집)
quotacheck : 파일시스템 스캔 및 쿼터 파일 생성/확인/수정
repquota(report quota) : 쿼터정보 요약하여 출력
quotaon : quota 실행
quotaoff : quota 끄기

 

/dev/lp0은 프린터 장치를 의미 리다이렉션의 대상으로 지정하여 출력
lp: -d 옵션은 출력 대상 프린터를 지정
pr: 파일의 출력 형식을 조정하여 표준 출력으로 출력
위 문제 2번은 -d옵션 뒤에 출력할 파일이 들어가 있으므로 틀림

# lpr -# 2 test.txt
# lp -n 2 test.txt
둘다  text.txt 파일을 2매 출력 함.

 

make mrproper  실행하면 .config 파일이 사라지는 것을 볼 수 있다.
ㅇ 강력한 명령의 순서 : distclean > mrproper > clean

 

ㅇ CUPS(영어: Common Unix Printing System, 공식 명칭으로 CUPS가 더 자주 쓰임)는
  컴퓨터를 인쇄 서버로 기능하도록 해주는 유닉스 계열 운영 체제를 위한 모듈 방식의 프린팅 시스템
ㅇ LPRng : 버클리 프린팅 시스템으로 BSD계열 유닉스에서 사용하기 위해 개발되었다.
  프린터 스풀링과 네트워크 프린터서버를 지원
ㅇ ALSA: 고급 리눅스 사운드 아키텍처(Advanced Linux Sound Architecture): 리눅스 커널의 구성 요소 중 하나
ㅇ SANE(Scanner Access Now Easy, SANE)는 이미지 스캐너 및 카메라 하드웨어
   (플랫 베드 스캐너, 핸드 헬드 스캐너, 비디오 및 스틸 카메라, 프레임 그래버 등)에 표준화된 액세스를 제공하는 API

 

cdparanoia : 오디오 CD에서 음악 파일을 추출할 때 사용하는 명령
alsamixer : 여러 개의 사운드를 믹싱 하는 GUI 프로그램

 

md5crypt : 패스워드 암호화 할때 사용
password --md5 : 암호화된 패스워드를 설정할때 사용

 

ㅇ tar : 여러 개의 파일을 하나의 파일로 묶거나 풀 때 사용하는 명령
ㅇ cpio : cpio(copy in and out) 명령을 사용하여 개별 파일, 파일 그룹 또는 전체 파일 시스템을 복사
          (*) 증분 백업을 지원하지 않음
ㅇ dump
    파일시스템 자체를 직접 읽어내는 방법을 사용하여 파일들이 아닌 파일시스템 전체를 백업한다.
    일반적으로 파티션 단위로 백업할 때 유용하게 사용되며, 0-9단계의 레벨을 가지고 증분 백업을 지원하고 있다.
  - /etc/fstab 파일을 참조
  - increment(증분) 백업 지원
  - 파티션 단위 백업에 적합
ㅇ rsync : rsync: Remote sync의 줄임말로 여러가지 옵션을 이용해 원격 또는 로컬간에 파일이나 디렉토리를 복사하는 툴

 

setfacl : 파일의 소요자나 그룹 생성
getfacl : 추가된 권한 확인

 

     setfacl -m u:lesstif:r /etc/sysconfig/iptables 권한을 부여
     setfacl -x u:lesstif /etc/sysconfig/iptables 권한을 삭제
    
     setfacl -m g:devel:rw /project/config 읽고 쓸 수 있고
     setfacl -m u:lesstif:r /project/config 읽을 수만
    
   - getfacl : 파일이나 디렉터리에 설정된 ACL 을 확인
     getfacl /var/log

 

John the Ripper : Unix passwrd crack tool
John the Ripper를 크래킹 도구라고 외우셔서 보안 도구가 아니니까 넘어가셨을텐데
3과의 보안관련 이슈에서 방지도구로도 쓰인다는 것을 배우시게 되실겁니다.

 

 

 

 

3. 네트워크 및 서비스의 활용

DN : Distinguished Name
RDN : Relative DN
CN : Common Name
SN : Surname

이 파트를 공부하실 때 같은 파트의 '아파치 웹 서버 설정파일' 부분의 특정 네트워크 대역 허가관련 부분에서 나오는 'hosts_allow'랑 헷갈리셔서 1, 2번을 고르실수도 있는데 잘구분하셔야합니다. 둘다 '공백'대신 '_'들어가는거 유의하시고요.

 

userdir : 아파치 서버 사용자들이 외부에 공개하고자 하는 html 문서들을 저장하기 위한 용도. 사용자별 디렉토리를 말함.
userdir.conf 파일을 이용하여 특정사용자의 userdir 디렉토리 사용여부를 허용 및 거부 가능.

ㅇ httpd.conf :
  - LoadModule : 관련 모듈을 활성화
    예) LoadModule authn_core_module modules/mod_authn_core.so
  - Include : 구성파일 추가
    예) Include conf/extra/httpd-mpm.conf
  - AddType : 매핑 목록이 포함된 파일
    예)  AddType application/x-gzip .gz .tgz
  - AddEncoding 의 지시어는 지정된 HTTP 콘텐츠 인코딩에, 지정된 파일 이름 확장자를 매핑
    예) AddEncoding x-gzip .gz
        AddEncoding x-compress .Z

root_squash :
    root 사용자만 nfsnobody 권한으로 매핑시키고, 일반 사용자 권한은 그대로 인정된다.
no_root_squash
    클라이언트가 root 권한 획득가능, 파일 생성시 클라이언트의 권한으로 생성됨

 

ㅇ makemap hash
   virtusertable 파일을 수정한 이후에는 access 파일과 같이 DB 파일을 만들어 주어야 하는데
   다음 명령어를 사용하여 만들어 줘야 한다.
   # makemap hash /etc/mail/local-host-names < /etc/mail/virtusertable

정답 2번

 

vsftpd 는 보안, 성능, 안정성이 우수한 FRP 데몬.
/etc/vsftpd/ftpusers 는 vsftpd 설정파일로서 파일에 등록된 사용자들의 서버 접속을 거부하겠다는 의미의 파일이다.

 

ㅇ vsftpd.conf 설정 파일 해설
  chroot_local_user = yes //홈 디렉토리 위로 이동 제한 여부 설정(기본값 NO)
                          //접속한 사용자의 홈 디렉터리를 최상위 디렉터리가 되도록 지정한다.
  
  chroot_list_enable = yes //chroot에서 제외할 사용자 목록파일 사용 여부 설정(기본값 NO)
  chroot_list_file=/etc/vsftpd/chroot_list //chroot에서 제외할 사용자 목록 파일과 경로 설정
  connect_from_port_20 = yes //standlone 모드를 운영하면서 데이터 전송포트 사용시 설정

 

ㅇ qmail : qmail은 유닉스에서 실행되는 메일 전송 에이전트(MTA)이다
ㅇ evolution :
   메일 사용자 에이전트(MUA, Mail User Agent)에 속하며,
   이메일을 읽고 쓰는데 사용됩니다. MUA는 MTA의 도움이 있어야 이메일을 보낼 수 있습니다.
ㅇ dovecot : POP3와 IMAP 역할을 수행하는 프로그램
ㅇ postfix
   전자메일을 송수신하는 무료 오픈소스 메일 전송 에이전트(MTA)로 IBM의 보안 전문가가 만든 메일 서비스이다.

 

/etc/named.conf : named 데몬의 설정파일. DNS 서버구축시 가장 중요한 파일중 하나로, 개별 도메인 설정을 위한 zone파일의 위치, named.ca파일, named.local파일등의 정보가 있음.
/var/named : DNS서버에 있는 zone파일들의 위치를 나타낸다. 즉, 네임서버 DB파일들이 존재하는 위치를 지정해주는 부분이다.

 

ㅇ KVM이 지원하는 반가상화 항목
   이더넷카드, Disk I/O, VGA
   CPU는 반가상 기술을 지원하지 않음.

 

VDI(Virtual Disk Image) : Oracle 버츄얼박스에서만 사용가능한 포맷 방식.
VHD (Virtual Hard Disk) VHD 파일은 Oracle 버츄얼박스, 마이크로 소프트(Microsoft)의 Hyper-V, 시트릭스(Citrix)의 Xen에서 구동이 가능한 포맷방식.
VMDK (Virtual Machine Disk) : Oracle의 버츄얼 박스, VMware의 Vmware Player에서 구동이 가능한 포맷 방식.

 

 

데몬에는 두 가지 방식이 있다.
Standalone 방식 vs inetd(xinetd) 방식
Standalone이 속도가 빠르다는 장점이 있지만 서버 리소스를 많이 점유한다는 단점이 있다.
반면 xinetd 데몬은 슈퍼 데몬을 이용하여 개별 서비스를 동작시키는 방식으로 속도가 느리지만 서버 리소스를 절약할 수 있다.
따라서, 사용자가 많지않고 빠른응답이 요구되지않는 서비스에 xinetd 데몬을 사용하는것이 적합하다.

 

 

<문제 해설>
VNC : 리눅스 환경에서 원격 데스크탑으로 사용하는 SW.
vncserver : 서버 구축.
vncconfig : vnc 설정 변경.
vncpasswd : 패스워드 설정.

 

NTP서버에서 시간 설정 불러오니 ntp + date 로 기억합시다.

 

침입차단시스템(Firewall) : 외부로부터의 불법적인 접근이나 해커의 공격으로부터 내부 네트워크를 방어하기 위해 내부 인트라넷과 외부 인터넷 사이에 유일한 통로에 설치하여 두 네트워크 간에 이루어지는 접근을 제어하는 장치

침입탐지시스템(IDS) : 일반적으로 시스템에 대한 원치 않는 조작을 탐지하여 주며, 전통적인 방화벽이 탐지할 수 없는 모든 종류의 악의적인 네트워크 트래픽 및 컴퓨터 사용을 탐지하기 위해 사용된다
탐지 기능외에도 정보분석 및 실시간 모니터링 기능을 지원한다

침입방지시스템(IPS) : 네트워크에서 공격 서명을 찾아내어 장동으로 모종의 조치를 취함으로써 비정상적인 트래픽을 중단시키는 보안 솔루션.
수동적인 방어 개념의 침입차단시스템(Firewall)이나 침입탐지시스템(IDS)과 달리 침입경고 이전에 공격을 중단시키는 데 초점을 두 시스템이 합쳐진 개념의 솔루션임.

Packet Sniffer : 네트워크 상의 패킷을 sniffing하여 보여주는 기능

Packet Logger : 모니터링한 패킷을 저장하고 로그에 남기는 기능

 

 

 

 

 

 

 

 

 

 

728x90
반응형

+ Recent posts

/ /

Contact

📧 dlwjdwls60@naver.com


블로그에 내용이 있으면 해당 글을 보여주며, 없으면 내용이 복사된 채로 ChatGPT로 연결됩니다.