Linux

리눅스마스터1급 1차

ducku 2021. 11. 16. 14:58

리눅스마스터1 1

 

 

리눅스기반 운영체제

Android, Tizen, MeeGo, Bada OS, Debian, GENIVIm Moblin

 

리눅스는 유닉스 표준인 POSIX 준수

 

스왑 : 하드디스크 일부를 메모리처럼 사용하는 기술

 

현재 사용중인 터미널 이외에 추가로 다른터미널 사용 키조합

ALT + F2

 

텍스트모드 기반의 가상콘솔에서 이미 지나간 작업을 보기위한 키조합

Shift + Page UP

 

리눅스의 특징

모든장치는 파일화

공유 라이브러리를 통해 메로리를 효율적으로 사용

리다이렉션을 통해 입출력 전환

 

자유 소프트웨어 재단(FSF) 설립한 사람

리처드 스톨먼

 

데비안 리눅스를 기초로 고유한 데스크톱 환경인 유니티를 사용하여 만든 배포판

우분투

 

자유소프트웨어

상업용 목적으로 사용할 있다.

소스코드를 임의로 개작할 있다.

소스코드 수정시 반드시 공개해야한다.

 

GNU프로젝트에 의해 개발된 프로그램

GCC, BASH, EMACS

 

레드햇 계열에 속하는 배포판

RHEL, CentOS, Fedora

 

LGPL 적용된 라이브러리를 이용하여 프로그램을 개발했을 경우에는 소스를 공개하지 않아도 된다.

LGPL 적용된 라이브러리의 소스를 수정했을 경우에는 소스를 공개해야 한다.

 

BSD, Apache라이센스는 소스를 수정해서 사용해도 반드시 공개할 필요는 없다.

 

고성능의 계산능력을 제공하기위한 목적

여러컴퓨터를 병렬로 묶어서 구성, 슈퍼컴퓨터 제작에 사용

=>HPC

 

임베디드 리눅스

별도의 로열티나 라이센스 비용이 없다.

소스가 공개되어 있어서 변경 재배포가 용이하다.

리눅스를 사용한 오래되어서 커널이 안정적이다.

사용자모드와 커널모드 메모리 접근이 간단하지는 않다.

 

업무처리에 필요한 서버나 스토리지와 같은 IT하드웨어 자원을 빌려 쓰는 클라우드 서비스

=>IaaS

 

IDE, ATA

=> /dev/hdx

SCSCI, S-ATA, USB, SSD

=> /dev/sdx

 

RAID-5

최소3개의 디스크로 구성

1개의 디스크를 패리티공간으로 사용

 

RAID-6

최소4개의 디스크로 구성

2개의 디스크를 패리티공간으로 사용

 

LVM

여러개의 디스크를 하나로 묶어서 사용하는 기술.

사용중에 파티션의 크기를 줄이거나 늘릴 있다.

크기가 다른 하드디스크로 구성할 있다.

 

GRUB(GRand Unified Boot loader)

GNU프로젝트에서 만든 부트로더

메뉴 인터페이스 방식을 기본으로 사용

/boot/grub/grub.conf 에서 설정

 

 

 

/proc

일종의 가상파일 시스템으로 동작중인 프로세스의 상태정보, 하드웨어 정보, 시스템 정보 등을 있다.

 

/bin

실행파일들이 들어있다. 명령어가 들어있는 디렉터리로 보통 PATH 설정되어 있다.

 

/dev

하드디스크, 터미널 등과 같이 실제로 존재하는 물리적인 장치등을 파일화 하여 관리하는 디렉터리

 

/home

개인 사용자들이 파일이나 디렉터리를 만들어서 사용할 있는 디렉터리.

 

/lib

각종 라이브러리가 저장되어있는 디렉터리. 커널 모듈도 디렉터리에 들어있다.

 

/mnt

CD-ROM, 하드디스크, 네트워크 파일 시스템 등을 마운트할때 포인터가 되는 디렉터리.

 

/misc

자동 마운트 프로그램인 autofs 의해 사용되는 디렉터리.

 

/opt

응용프로그램들의 설치를 위해 사용되는 디렉터리

 

/root

root사용자의 디렉터리

 

/sbin

시스템 관리에대한 명령어.

 

/usr

시스템 운영에 필요한 명령, 응용프로그램들이 위치하는 디렉터리. 개발도구. mysql, php 등등 모두 디렉터리의 하위에 설치됨.

이디렉터리의 주요 하위디렉터리에는 응용프로그램의 명령어들이 들어있는 /usr/bin, /usr/sbin. 로컬에서 추가로 설치할 사용되는 /usr/local

 

/var

로그파일. 메일서버로 운영하는 경우 도착한 메일이 디렉터리의 하뒤 디렉터리에 존재.

 

/sys

USB처럼 hot-plug하드웨어 정보를 가지고 있는 디렉토리.

 

/cgroup

control group 시스템 상에 동작중인 태스크들을 임의로 그룹지어 제어할 있도록 도와주는 기능을 제공하는데, 관련정보를 담고있는 디렉터리.

 

 

리눅스 런레벨

0 시스템 종료
1 single user mode 로그인과정없이 root사용자로 접속. 네트워크, 서버, 파일공유 등과 같은 서비스를 하지 않고, root패스워드를 잊어버렸거나 시스템 점검등을 접근.
2 네트워크를 사용하지 않는 다중사용자모드
3 CLI 실행.
4 사용자가 정의하여 사용가능
5 X윈도로 실행.
6 시스템 재부팅1

 

 

/etc/motd

‘Message Of The Day’ 약자로 로그인했을때 사용자에게 보여주는 메시지를 기록하는 파일.

 

파일 시스템

운영체제가 파티션이나 디스크에 데이터를 저장하고, 읽고, 쓰고찾기 위해 구성하는 일련의 체계

 

포맷

파일을 저장하기 위해 디스크를 일정한 크기로 분할하고 주소를 설정하는 작업

 

Xlib

C언어로 구현된 클라이언트 라이브러리. X서버와 대화를 해주는 역할

 

#startx

=>X윈도 실행

 

/etc/inittab에서 런레벨 설정 가능.

 

X윈도의 구성요소 사용자 로그인 세션관리 역할

=> 디스플레이 매니져

 

GUI환경을 이용하기 위해 사용자에게 제공되는 인터페이스 스타일. 파일관리자, 아이콘, , 도구모음, 배경화면등이 포함

=> 데스크톱 환경

 

KDE

데스크톱 환경의 일종

Qt라이브러리를 기반으로 만들어졌다.

리눅스뿐만 아니라, FreeBSD, Solaris, OS X 등도 지원.

 

GNOME

GPL LGPL라이선스를 따른다.

GNU프로젝트를 통해 만들어졌다.

GTK+라는 라이브러리를 기반으로 만들어졌다.

 

GNOME 관련있는것

nautilus

metacity

Mutter

XFce ( X )

 

GNOME2 버전까지는( metacity ) 라는 윈도매니저를 사용하였고, GNOME3버전부터는 ( Mutter ) 라는 윈도 매니저를 사용한다.

 

X윈도 환경에서 윈도의 배치와 표현을 담당하는 시스템 소프트웨어

=> 윈도 매니저

 

X클라이언트를 원격지로 전송하기 위해 변경하는 환경변수

=> DISPLAY

 

원격지에 접속하는 X 클라이언트를 허가할 IP주소나 호스트명이 아닌 X윈도 실행 시에 생성되는 키값으로 인증할 사용

=>xauth

 

사용자가 X윈도 실행시에 관련 정보를 저장하는 파일

.Xauthority

 

이미지뷰어프로그램

GIMP

ImageMagick

eog

Totem ( X )

 

PDF문서를 볼때 사용하는 프로그램

evince

 

LibreOffice패키지에서 프레젠테이션 프로그램

Impress

 

사용가능한 셸의 목록을 확인할 사용하는 명령어

chsh

 

사용가능한 셸의 목록을 확인할 있는 파일

/etc/profile

 

가장 마지막에 실행한 명령을 호출하는 방법

!!

 

히스토리에 저장되는 명령의 개수를 제한할 사용하는 환경변수

HISTSIZE

 

개인사용자의 환경변수와 시작프로그램 관련 설정시 사용하는 파일

.bash_profile

 

모든사용자에게 적용되는 alias 함수를 설정할 사용하는 파일

/etc/bashrc

 

프롬프트 변경시에 사용되는 환경변수

PS1

 

[Ctrl] + [z]

포어그라운드 프로세스를 백그라운드 프로세스로 전활할 사용하는 인터럽트 조합

 

[Ctrl] + [c]

SIGINT

 

[Ctrl] + [\]

SIGQUIT

 

데몬 프로세스 실행방법에는 standalone inetd 있다.

standalone : 부팅시에 실행. 해당 프로세스가 메모리에 계속 상주하면서 클라이언트의 서비스 요청을 처리하는 방식

inetd : 프로세스가 항상 메모리에 상주 X. 요청이 들어왔을 때에만 프로세스를 실행. 접속종료후에는 자동으로 프로세스 종료.

 

#chkconfig telnet on

=>텔넷 서비스 활성화.

 

MAN 위한 국제표준안으로 IEEE802.6 정의되어 있는

=>DQDB

 

이더넷 매체 표기법

10BASE-5

=>10Mbps전송속도. 동축케이블

100BASE-TX

=>100Mbps전송속도. UTP-5케이블

100BASE-FX

=>100Mbps. 광케이블

 

ATM으로 많이 알려져 있으며, 53Byte 고정길이 패킷을 이용하여 순서대로 자료를 전송하는 방식

=>Cell Relay

 

프로토콜의 구성요소 전송의 조작이나 오류제어를 위한 제어정보에 대한 규정

=>의미(Semantics)

 

전기 통신의 개선과 효율적인 사용을 위해 국제 협력을 증진하고, 전기통신의 능률향상, 이용증대 보급을 위해 만들어진 정부간 국제기구.

=>ITU-T

 

네트워크계층

=>경로선택. 혼잡제어.

 

표현계층

=>암호화. 해독. 압축. 압축해제

=>송수신 호스트 간에 서로 다르게 사용하는 코드와 문자등을 번역하여 일관되게 전송 데이터를 서로 이해할 있도록 하는 기능을 제공하는 계층.

 

프로토콜 프로토콜 번호를 확인할 있는 파일

=> /etc/protocols

 

프로토콜과 관련된 포트번호를 확인할 있는 파일

=> /etc/services

 

네트워크로 연결되어있는 컴퓨터에서 상호간 통신을 위한 접점으로 이곳을 통해서 데이터를 교환.

=>소켓

 

IP주소 할당 도메일은 관리하는 국제기구

=>ICANN

 

루프백장치를 나타내는 파일명

=>lo

 

설정되어있는 DNS서버를 확인할 있는 파일

=>/etc/resolv.conf

 

ifconfig명령으로 확인할 있는것

=>IP주소, MAC주소, 넷마스크

 

게이트웨이 주소를 확인하기위한 명령어

=>route

 

네트워크관련 설정 파일을 변견한 네트워크 데몬을 재시작하는 방법

=>service network restart

=>/etc/rc.d/init.d/network restart

=>/etc/init.d/network restart

=>/etc/network restart (X)

 

게이트웨이 주소를 설정하는 방법

=>route add default gw 192.168.~~~

 

모든소켓의 PID 프로그램명을 출력. 호스트명 포트명은 숫자로 출력

=>netstat -anp

 

서버시스템이 원격클라이언트로부터 접속 요구를 받아 클라이언트에게 응답을 하였지만, 아직 클라이언트에게 확인메세지는 받지않은 상태

=>netstat 상태값 = SYN_RECEIVED

 

로컬네트워크에 있는 특정 호스트의 MAC주소를 조회하려고 할때 사용하는 명령

=>arp

 

네트워크 인터페이스의 연결상태를 확인하고, 강제적으로 랜카드의 속도와 duplex모드를 변경하는데 사용하는

=>mii-tool

 

부팅 네트워크 사용유무를 지정하는 파일

=> /etc/sysconfig/network

 

이더넷 카드를 하나만 장착한 시스템에서 IP주소가 기록되는 파일

=>/etc/sysconfig/network-scripts/ifcfg-eth0

 

ip명령어

=>IP주소 확인, 등록 삭제

=>네트워크 인터페이스 활성 비활성

=>라우팅테이블 확인

=>게이트웨이 주소값 설정 삭제

 

사용자 생성시 참조하는 파일. 디렉토리, 기본 그룹정보등을 확인하는 파일

=>/etc/default/useradd

 

#useradd posein

#passwd posein

=>홈디렉토리는 /home/posein

=>메일 관련파일은 /var/spool/mail/posein

=>사용자계정정보는 /etc/passwd

 

새로운 사용자를 생성하였을 경우, 사용자를 위한 기본 폴더를 참고하는 디렉토리

=>/etc/skel

 

메일 디렉터리, 패스워드 관련 설정, UID 최솟값 최댓값, 홈디렉터리 생성 여부등이 정의되어있는 파일

=>/etc/login.defs

 

posein사용자가 현재 hannam이라는 그룹에 속해있다. posein사용자의 그룹을 IHD 변경하는 명령.

=>usermod -g IHD posein

 

posein사용자의 아이디를 yuloje 변경

=>usermod -l yuloje posein

 

posein 계정만기일을 "2020-12-31" 설정

=>usermod -e 2020-12-31 posein

 

posein계정을 삭제할때 사용자의 파일 디렉터리를 같이 제거

=>userdel -r posein

 

posein계정의 패스워드에 잠금을 설정하여 일시적으로 로그인을 막으려고한다

=>passwd -l posein

 

사용자의 패스워드에 대한 정보를 출력하고, /etc/passwd 날짜 관련 필드를 모두 설정할 있는 명령어

=>chage

 

kait라는 그룹이름을 ihd 변경

=>groupmod -n ihd kait

 

/etc/passwd /etc/shadow 점검해주는 명령

=>pwck

 

여러그룹에 속한 사용자가 일시적으로 그룹을 변경할때 사용하는 명령어

=>newgrp

 

admin그룹의 관리자를 posein으로 지정하는 명령

=>gpasswd -A posein admin

 

시스템에 로그인한 사용자의 아이디를 확인하는 명령

=>w, who, users

 

파일의 허가권을 확인하는 명령어

=>ls

 

해당값이 설정된 파일은 실행시 해당파일을 실행하는 동안에는 실행시킨 사용자의 권한이 아닌 해당파일의 소유자 권한으로 인식.

=> Set-UID

 

해당값이 설정된 디렉터리에 사용자가 파일을 생성하면 사용자가 속한 그룹에 상관없이 디렉터리를 소유한 그룹권한으로 만들어진다.

=>Set-GID

 

해당값이 설정된 디렉터리에서는 사용자들이 파일생성에는 제한이 없으나, 파일 삭제시에는 본인이 생성한 파일만 가능하다.

=> Sticky-Bit

 

Sticky-Bit와 가장 관련있는 디렉터리

=> /tmp

 

/data디렉터리에 Sticky-Bit를 설정

=>chmod o+t data/

 

다음파일의 소유자는 posein, 소유그룹은 yuloje로 지정하려고 할 때

=>chown posein:yuloje abc.txt

 

파일이나 디렉터리의 생성시에 부여되는 기본 허가권의 값을 지정하는 명령어

=>umask

 

joon.txt파일의 심볼릭링크파일로 j를 생성

=>ln -s joon.txt j

 

하드링크파일 생성시 원본과 생성된 링크파일의 사이즈는 다르다.

 

하드디스크 추가 과정

'fdisk -l'명령으로 디스크 인식 확인

fdisk를 이용한 파티션 분할 및 생성

mkfs로 파일시스템 생성

mount명령으로 마운트

/etc/fstab파일에 등록

 

파일시스템을 점검할때 사용하는 명령어

=>fsck

 

fsck와 가장 관계깊은 디렉터리

=>/lost+found

 

/etc/fstab 필드중에 fsck와 가장 연관있는 필드

=>6번째

 

파일이나 디렉터리의 크기를 확인할때 사용하는 명령어

=>du

 

/etc디렉터리의 총 사용량을 단위를 붙여서 확인

=>du -sh /etc

 

스왑파일을 생성하는 절차

dd를 이용한 파일생성

mkswap명령 스왑파일생성

swapon명령 스왑활성화

 

사용자의 쿼터관련정보를 기록하는 파일

=>aquota.user

 

사용자 쿼터를 이용하기위해 /etc/fstab에 설정하는 옵션값

=>usrquota

 

edquota옵션 중 디스크쿼터의 soft제한을 초과했을때의 유예기간을 설정하는 옵션

=>-t

 

posein사용자에 설정된 쿼터를 yuloje사용자에게도 적용하기위한 방법

=>edquota -p posein yuloje

 

일반사용자가 본인의 디스크쿼터설정을 확인할 때 사용하는 명령

=>quota

 

quotacheck -mf /home

 

mkdir로 디렉터리 생성 시 부모디렉터리까지 생성하는 옵션

=>-p

 

rm명령으로 디렉터리 삭제시 옵션

=>-r

 

rm명령으로 파일들을 삭제 시 하나씩 질의하면서 확인하는 옵션

=>-i

 

파일의 종류를 확인할때 사용하는 명령

=>file

 

touch명령으로 파일 생성 시 파일의 Change Time은 과거의 시간으로 변경할 수 없다.

 

/etc/passwd 파일의 타임스탬프 확인

=>stat /etc/passwd

 

cat명령으로 텍스트파일의 개행문자나 탭문자를 확인하는 옵션

=>-A

 

시스템전체에서검색

'.txt'로 끝나는 파일 및 디렉터리를 찾는다.

오류메시지는 화면에 출력하지 않는다.

=>find -name '*.txt'

 

b.txt파일의 내용을 a.txt파일에 추가

=>cat < b.txt >> a.txt

 

tail명령으로 로그파일을 계속적으로 모니터링

=>tail -f /var/log/secure

 

텍스트파일의 내용을 한 페이지씩 확인하는 명령. 커서를 사용해서 상하좌우 이동이 가능한 명령

=>less

 

하나의 파일을 여러개의 작은 파일로 분리할때 사용하는 명령

=>split

 

grep명령으로 a.txt에서 posein 또는 yuloje라는 문자열을 검색하는 방법

=>grep -E 'posein|yuloje' a.txt

 

grep명령으로 a.conf에서 #으로 시작하지 않는 줄을 출력하는 방법

=>grep -v ^# a.conf

 

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

=>wc

 

cut명령으로 필드구분자는 :으로해서 /etc/passwd의 첫번째와 세번째 필드를 출력하는 방법

=>cut -d: -f 1,3 /etc/passwd

 

실행중인 프로세스 관련 정보는 /proc/PID디렉터리 안에 있는 파일로 확인할 수 있다. 프로세스를 실행시킨 파일명과 관련된 항목

=>exe

 

현재 활성화된 파티션 정보확인과 가장 관련있는 파일

=>/proc/partitions

 

crontab명령을 사용하여 스케줄링 작업을 등록하려고 할때 사용하는 옵션

=>crontab -e

 

crontab에서 등록된 작업을 제거

=>crontab -r

 

#cat /etc/cron.deny

=>posein

#cat /etc/cron.allow

=>posein

일반사용자 중에서는 posein만 cron사용이 가는하다.

 

실행중인 모든 프로세스를 확인하기위해 사용하는 ps명령의 옵션

=>ps aux

 

ps명령의 상태코드 중 작업은 종료되었으나 부모프로세스에 의해 회수되지 않아 메모리를 차지할때의 상태값

=>Z

 

top명령으로 확인할 수 없는 항목

=>네트워크 부하량

 

kill명령은 PID를 사용한다.

여러개의 프로세스에 시그널을 보낼 수 있다.

kill명령은 작업번호를 사용해서 프로세스를 종료시킬 수있다.

 

killall명령

같은데몬의 여러 프로세스를 한번에 종료시킬 때 유용하다.

시그널을 지정하지 않으면 TERM시그널이 보내진다.

프로세스명을 사용한다.

PID를 사용한다. ( X )

 

jobs명령어 사용 시 PID까지 출력하는 옵션

=>-l

 

nice명령어

프로세스 우선순위를 설정.

NI값을 지정할 때 사용.

일반사용자는 우선순위를 높일 수 없다.

값이 클수록 우선순위는 낮아진다.

 

사용자가 로그아웃하거나 작업중인 터미널창이 닫혀도 실행중인 프로세스를 백그라운드에서 계속 작업할 수 있도록 해주는 명령어

=>nohup

 

#nice -10 bash

=>우선순위를 낮춘것이다.

 

renice명령어

실행중인 프로세스의 우선순위를 변경할 때 사용.

PID외에 사용자명, 그룹ID로도 사용할 수 있다.

프로세스명을 사용하지 않는다.

실행중인 프로세스에 NI값이 즉시 부여되고 프로세스가 추가로 발생되지 않는다.

 

rpm패키지를 제거할 때 사용하는 옵션

=>-e

 

의존성이 발생한 패키지를 제거하려고 할 때

=>rpm -e httpd --nodeps

 

rpm명령에서 패키지를 검증할때 옵션

=>-V

 

설치하려는 rpm파일에 대한 정보를 보려고 할때

=>rpm -qip

 

시스템에 설치된 rpm패키지를 모두 검색할때 사용하는 옵션

=>rpm -qa

 

totem이라는 패키지를 yum으로 제거

=>yum remove totem

 

yum명령으로 설치된 패키지에 대한 정보 출력

=>yum list installed

 

yum명령으로 music이라는 문자열이 들어있는 패키지 검색

=>yum search music

 

yum관련해서 저장된 모든 정보를 삭제할때

=>yum clean all

 

apt-get명령으로 update할 때 가장 관련있는 파일

=>/etc/apt/sorces.list

 

dpkg로 패키지를 제거할 때 -P옵션을 사용하면 환경설정파일까지 제거

                    -r옵션을 사용하면 환경설정파일은 제거되지 않음.

 

데비안 리눅스에서는 설치시에 발생할 수 있는 의존성을 해결하기 위해 apt-get을 사용

레드햇 리눅스에서는 yum을 사용.

 

apt-get명령으로 install할 때 관련 deb파일이 생성되는 디렉터리

=>/var/cache/apt/archive

 

apt-get명령으로 install단계에서 생성된 파일을 제거할 때 사용하는 명령

=>apt-get clean

 

소스파일로 프로그램을 설치하는 단계

configure -> make -> make install

 

압축률이 가장 좋은 프로그램

=>xz

 

생성되어있는 posein.tar에 yuloje.txt를 추가로 묶고자 할 때

=> tar rvf posein.tar yuloje.txt

 

압축률 순서

xz > bzip2 > gzip > compress

 

sum.c라는 파일을 컴파일하여 sum이라는 실행파일명을 생성

=>gcc -o sum sum.c

 

모듈 제거시 사용하지않는 관련모듈도 함께 제거

=>modprobe -r 모듈명

 

커널모듈이 위치하는 디렉터리

=>/lib/modules/~~~~~/kernel

 

모듈관련 환경설정파일이 위치하는 디렉터리

=>/etc/modprobe.d

 

모듈간의 의존성을 기록한 파일

=>modules.dep

 

/etc/rsyslog.conf 파일에서 인증이 필요한 프로그램에서 발생한 메시지를 처리하는 facility는?

=>authpriv

 

/etc/rsyslog.conf파일에 설정하는 가장높은수준의 priority는?

=>alert

 

관련로그를 로그인한 posein사용자의 터미널로 전송하려고 한다.

#vi /etc/rsyslog.conf

authpriv.*          posein

 

logrotate

로그파일은 하루, 일주일, 한달단위로 로테이션 할 수 있다.

로그파일 압축은 제공하지 않는다.

cron에 의해 스케쥴링되어 실행된다.

파일크기에 제한을 통해 로테이션할 수 있다. (X)

 

/etc/logrotate.conf파일에서 로그파일에 해당날짜를 덧붙여서 생성하는 설정

=>dateext

 

/var/log/secure파일에 쌓이는 로그기록

telnet, ssh, xinetd, ftp(X)

 

접속에 실패한 기록만 저장하는 로그파일명

=>/var/log/btmp

 

접속에 실패한 기록만 확인할때 사용하는 명령

=>lastb

 

/var/log/wtmp파일과 가장 관련이 있는 명령

=>last

 

 cat명령으로 로그확인이 가능한 파일

=>/var/log/secure

 

last명령으로 posein사용자가 접속한 기록을 확인하려 할 때

=>last posein

 

재부팅기록을 확인

=>last reboot

 

lastlog명령을 이용하여 posein사용자가 최종 접속한 기록 확인

=>lastlog -u posein

 

dmesg

=>커널링 버퍼의 내용을 출력하고 제어하는 명령.

 

단일사용자모드로 접근을 제어하기위해 grub.conf파일에 패스워드를 설정하려고 한다. grub프롬프트에서 암호화된 패스워드 설정을 위해 실행하는 명령

=>md5crypt

 

ping응답을 하지않기위해 커널 파라미터값을 조정

=>sysctl -w net.ipv4.icmp_echo_ignore_all=1

 

sshd_config에서 root접속을 막기위한 설정

=>PermitRootLogin no

 

ssh명령으로 접속하려는데 포트번호가 180번으로 변경되었다. 접속방법은?

=>ssh 192.~~ -p 180

 

SSH서버 접속할때에 별도의 인증파일을 통해 접근하려고한다. SSH서버에 생성하는 인증파일은?

=> authorized_keys

 

SSH클라이언트에서 비밀키와 공개키를 생서할 때 사용하는 명령

=ssh-keygen

 

사용자를 인증하고 그 사용자의 서비스에 대한 접근을 제어하는 모듈화된 방법. 보통 응용프로그램에게 사용자 인증방법을 선택할 수 있는 공유 라이브러리 묶음을 제공한다.

=>pam

 

PAM에서 제공하는 라이브러리는 ( /lib/security ) 에 위치하고 동적으로 로드 가능한 오브젝트파일형태로 되어있다.

PAM을 이용하는 서비스들은 (  /etc/pam.d ) 디렉터리안에 설정되어 있다.

 

sudo의 환경설정파일인 ( /etc/sudoers ) 를 편집하기위해서 ( visudo ) 명령을 실행하면 vi편집기가 실행된다.

 

nmap : 네트워크 탐지 및 스캐너도구

tripwire : 무결성 검사 도구

nessus : 취약점 검사 도구

 

SELinux적용여부를 확인하는 명령

=>getenforce

 

SELinux를 비활성화 하는 명령어

=>setenforce 0

 

dump : 파일들이 아닌 파일시스템 전체를 백업할 때 사용하는 유틸리티.

restore : 데이터 복원시 사용하는 명령어

 

dd명령어

디스크단위로 백업할 때 사용.

파티션 단위로 백업할 때 사용.

소문자로 이루어진 텍스트파일은 전부 대문자로 전환할 때 사용.

디렉터리 단위로 백업할 대 사용. ( X )

 

Not Found에 해당하는 HTTP코드는?

=>404

 

아파치 웹 서버

=>소스가 공개되어있는 공개 소프트웨어

=>다양한 웹 프로그래밍 언어 지원

=>멀티스레딩 지원

=>PHP는 동적모듈로만 지원

 

초기에 시작하는 프로세스의 개수를 지정하고, 페이지 요청이 들어오면 스레드로 처리하는 방식

=>worker

 

아파치 소스파일을 설치하기전에 검증하려고한다.

(.    ) httpd-~~~

=>md5sum

 

MySQL을 소스 설치하기 위해서 반드시 필요한 프로그램

=>cmake

 

MySQL을 설치한 후에 기본 데이터베이스를 생성할때 사용하는 명령

=>mysql_install_db

 

MySQL을 설치한 후에 관련 데몬을 실행하는 명령

=>mysqld_safe

 

아파치 웹서버환경설정할때 관련모듈을 전부 동적모듈로 설치하도록 지정하려고 한다. configure옵션으로 알맞은것

=>--enable-mods-shared

 

PHP설치시 아파치 데몬에 동적모듈로 로딩되도록 하기위해 경로를 설정하는 명령

=>apxs

 

PHP설치 후 httpd.conf에 php파일이 해석하도록 지정하는 과정

#vi httpd.conf

AddType application/(x-httpd-php) .htm .html .php

AddType application/(x-httpd-php-source) .phps

 

PHP설치 후 httpd.conf에 php관련 설정을 확인하는 과정.

#vi httpd.conf

LoadModule php5_module modules/(libphp5.so)

 

httpd.conf의 <Directory>태그 옵션 중 심볼릭링크의 사용을 허가할때 사용하는 항목

=>FollowSymLinks

 

일반사용자들이 개인 홈페이지를 이용하도록 설정하려면 ()파일에서 ()항목을 설정하면 된다.

=>httpd-userdir.conf / UserDir

 

아파치 웹 관련 파일 중 IP주소 하나에 여러 도메인을 운영하기 위해 설정하는 파일

=>httpd-vhosts.conf

 

httpd.conf의 항목

여러 웹문서 파일중에 처음으로 인식하는 파일을 start.html로 변경하려고 한다.

=>DirectoryIndex

 

아파치 사용자인증파일을 생성하고 관리해주는 명령

=>htpasswd

 

https프로토콜이 사용하는 포트번호

=>443

 

하나의 서버에 등록된 사용자 계정, 암호, 그룹정보등을 공유하여 다른 시스템에 제공하는 서비스

=>NIS

 

IP프로토콜을 기반으로 사용자, 시스템, 네트워크, 서비스정보등의 디렉터리 정보를 공유할 수 있다.

=>LDAP

 

LDAP속성 중 이름과 성의 조합을 나타내는 키워드

=>cn

 

NIS는 ()을 사용하기 때문에 관련호출을 처리하는 데몬을 반드시 구동시켜야 한다. 초기에는

()데몬이 그 역할을 수행했으나 현재는 ()데몬이 대신하고있다.

=>RPC / portmap / rpcbind

 

NIS도메인명을 부팅시에 적용시키려고 한다. 수정해야할 파일은?

=>/etc/sysconfig/network

 

NIS클라이언트 데몬

=>ypbind

 

NIS서버명과 관련 맵 파일을 출력하는 명령어

=>ypwhich

 

(.    ) passwd.byname

=>ypcat

 

삼바는 초기에 ()프로토콜을 사용해서 유닉스와 윈도우간의 자료공유를 하였다. 현재는 ()프로토콜로 확장됨.

=>SMB / CIFS

 

삼바는 두개의 데몬으로 동작한다. ()는 파일과 프린터공유, 사용자권한부여 및 확인을 담당

()는 WINS를 담당하는 데몬으로 컴퓨터명과 IP주소연결등의 역할을 수행

=>smbd / nmbd

 

인증없이 삼바서버에 접근 가능하도록 설정

#vi /etc/samba/smb.conf

security = ()

=>share

 

삼바서버에 접속을 192.168.12.0 네트워크 대역에 속한 호스트만 가능하도록 smb.conf파일에 설정

=>host allow = 192.168.12.

 

smb.conf파일의 설정오류를 점검하는 명령

=>testparm

 

posein이라는 삼바사용자를 제거하려고한다

=>smbpasswd -x posein

 

posein이라는 삼바사용자를 암호입력없이 로그인

=>smbpasswd -n posein

 

삼바사용자의 데이터베이스 파일인 SAMdatebase를 관리해주는 명령

=>pdbedit

 

NFS서버의 접근제어 및 환경설정파일

=>/etc/exports

 

NFS서버 설정 옵션 알맞은것

NFS클라이언트에서 접근하는 모든사용자의 권한을 nobody로 매핑시킨다

=>all_squash

 

NFS서버의 root_squash옵션

=>NFS클라이언트에서 접근하는 root사용자를 NFS서버상의 nfsnobody권한자로 인정한다.

 

NFS서버에서 익스포트된 정보를 확인

=>#exportfs

 

NFS클라이언트에서 NFS서버에 익스포트된 정보를 확인하려고 한다.

=>#(showmount) -e nfs_server

 

vsftpd.conf설정에서 최대접속자를 지정하는 항목값

=>max_clients

 

vsftpd.conf설정에서 하나의 IP주소 당 허용할 최대 접속수를 지정하는 항목

=>max_per_ip

 

/etc/vsftpd/ftpusers파일에 대한 설명

=>ftp서버에 접근할 수 없는 계정목록파일이다.

 

vsftpd.conf파일에 다음과 같이 설정하였다. 접속할 때 메시지를 전달하기 위해 사용자의 홈 디렉터리에 생성하는 파일명

dirmessage_enable=YES

=>.message

 

vsftpd.conf설정에서 접속한 사용자의 홈 디렉터리를 최상위 디렉터리로 지정하려고 할때 관련 항목

=>chroot_local_user

 

vsftpd서버에 접속한 내역윽 /var/log/wtmp파일에 기록하여 last명령으로 확인하려고 한다. vsftpd.conf파일에 설정하는 항목

=>session_support

 

SMTP프로토콜의 포트번호

=>25

 

서버에 도착한 메일을 클라이언트에서 직접 내려받아 읽도록. 내려받으면 서버에서 해당메일 삭제됨.

=>POP3

 

대표적인 MDA(Mail Delivery Agent)프로그램으로 메일박스에 도착한 메일을 대행해서 가져오거나 전달하는 역할을 수행.

=>procmail

 

리눅스에서 사용하는 POP3 및 IMAP서버프로그램

=>dovecot

 

발신도메인을 강제적으로 지정하기위해 sendmail.cf파일을 수정. 관련항목

=>Dj

 

메일서버에 사용하는 도메인을 등록하는 파일

=>/etc/mail/local-host-names

 

sendmail.cf파일 복원

=>#m4 ~~~~~

 

webmaster라는 계정으로 들어오는 메일을 고객지원센터에 속한 모든 사용자들에게 전달하고자 한다. 관련파일?

=>/etc/aliases

 

특정도메인으로부터 전송되는 메일을 거부메시지없이 무조건 거절.

#vi /etc/mail/access

From:spammer@spam.com.     ( )

=>DISCARD

 

/etc/aliases파일 수정 후 실행해야하는 명령

=>newaliases

 

각 사용자 개인이 자신에게 들어오는 메일을 다른 메일주소로 포워딩하려고 한다. 이 경우에는 개인 사용자의 홈디렉터리에 ()파일을 생성하면 된다.

=>.forward

 

보낸메일의 전송상태를 확인하는 명령

=>mailq

 

named.conf파일에서 네임서버에 질의할 수 있는 호스트를 지정할 때 사용하는 항목

=>allow-query

 

존 파일에서 IPv6주소를 기입하기위해 사용되는 레코드 타입

=>AAAA

 

DNS서버의 데몬명

=>named

 

named.conf파일의 문법젖오류를 검사할 때 사용하는 명령

=>named-checkconf

 

CPU가상화기술

=>KVM

 

XEN

=>cpu전 가상화 , 반가상화 지원

 

XEN, KVM등으로 나누어서 운영되는 가상화 환경을 통합관리할때 유용한 프로그램

=>OpenStack

 

가상장치관리자를 실행하는 명령

=>virt-manager

 

가상머신운영을 위해 관련데몬 활성화

=>#service (libvirtd) start

 

가상머신을 관리해주는 도구로서 생성, 상태정보, 출력, 일시정지등의 기능을 제공

=>virsh

 

가상머신의 이미지파일이 저장되는 디렉터리

=>/var/lib/libvirt/images

 

IP주소가 AA인 호스트의 텔넷서비스를 차단하기위해 /etc/hosts.deny에 등록하려한다. 관련설정

=>in.telnetd: AA

 

xinetd에서 제공하는 기능

접속시간제한

DOS공격에 대비

IP주소 당 접속수 제한

아이디제한(X)

 

 

 

 

 

    

'Linux' 카테고리의 다른 글

cp  (0) 2021.11.16
crontab  (0) 2021.11.16
useradd  (0) 2021.11.16
dmesg  (0) 2021.11.16
로그  (0) 2021.11.16