Chapter 09 웹서버와 FTP 서버구축

 

 

 

IIS 웹서버 구성

(ㄱ) 역할 추가(ServerManager)

(ㄴ) 서비스 설정(inetmgr)

(ㄷ) 서비스 기동(services.msc)

(ㄹ) 방화벽 등록(firewall.cpl)

 

 

 

[실습] IIS 웹서버 초기 구성 및 FTP 서버(Anonymous) 구성

[실습] inetmgr > 기본 문서

[실습] inetmgr > 디렉토리 검색

* 웹 서비스 디렉토리 변경

* "디렉토리 검색"

[실습] inetmgr > "가상디렉토리 보기"

* 물리 디렉토리 - 웹 서비스(http://www.example.com/dir1)

* 가상 디렉토리 - 웹 서비스(http://www.example.com/dir1)

[실습] FTP 클라이언트 프로그램 설치

* 알드라이브(www.altools.co.kr)

[참고] ping 허용

* 파일 및 프린터 공유(에코 요청 - ICMPv4-in)

* 파일 및 프린터 공유(에코 요청 - ICMPv6-in)

[실습] FTP 서버 배너 메세지

* inetmgr > FTP 메세지

[실습] Anonymous FTP 서버 업로드 가능 설정

* 사용권한편집(ftproot > 속성 > 보안 탭 > IUSR)

* "권한 부여 규칙" : 읽기/쓰기

 

 

 

 

 

Chapter 10 DNS 서버 설치와 운영

 

[실습] C:\Windows\system32\drivers\etc\hosts

* google search : "http://www. .co.kr"

* 검색 내용 :

www.elsd.co.kr114.203.87.173

www.pentaz.co.kr116.125.182.146

www.coweaver.co.kr115.21.49.105

[실습] Cashing Only DNS Server

(ㄱ) 역할 추가(DNS Server)

(ㄴ) 서비스 설정

(ㄷ) 서비스 기동

(ㄹ) 방화벽 등록

[실습] brain.com DNS Server 구성

* IIS Web Server 구성

* FTP Server 구성(ex: 알FTP)

* DNS Server 구성

[실습] DNS 이용한 웹 부하 분산

* www(192.168.10.1, 192.168.10.2, 192.168.10.3)

 

 

 

 

 

 

Chapter 11 EMAIL 서버 구축

 

* hMailServer 패키지

* (주의) .NET Framework 3.5 설치 해야 한다.

 

* ESMTP, POP3, IMAP4

* MUA, MTA, MDA

 

[실습] DNS 서버 구성(ex: daum.net,naver.com)

[실습] MAIL 서버 구성(ex: FIRST(daum.net),SECOND(naver.com))

[실습] MAIL 클라이언트 구성(ex: WinClient, THIRD)

 

 

 

 

 

 

Chapter 12 DHCP 서버 구축

 

* 고정 IP/유동 IP, 공인 IP/사설 IP

* DORA(DHCP Discover/Offer/Request/Ack)

 

* 일반적으로, 같은 내트워크 내에 DHCP는 하나만 존재해야 한다.

* 하지만, 여러개의 네트워크를 DHCP를 통해 관리하기 위해서 Boot Relay Server 존재할 수 있다.

 

 

 

 

 

단축키 모음 & 명령어

---------------------------------------------

(단축키 모음)

<WIN + PAUSE> 시스템

<WIN + E> 윈도우 탐색기

<CTRL + ALT + DEL> <CTRL + ALT + INST>

<CTRL + ALT + ENTER> 전체화면 모드 on/off

<WIN + R> 실행

<ALT + F4> 로그아웃/재부팅/서버 전원 끄기

<CTRL + SHIFT + ESC> 작업관리자

cmd => shell:startup 시작프로그램

<WIN + D> 바탕 화면

 

(기본명령어)

notepad 메모장

regedit 레지스트리 편집기

calc 계산기

mspaint 그림판

cmd 명령창

iexplore 익스플러러

excel 엑셀

msconfig 시스템 구성

systeminfo 컴퓨터 속성 및 정보

whoami 현재 사용자 확인

shutdown 시스템 종료

tree 디렉토리 하위 목록을 tree 처럼 보여줌

 

(제어판 명령어)

appwiz.cpl 프로그램 추가/삭제

firewall.cpl Windows 방화벽

ncpa.cpl 네트워크 연결

sysdm.cpl시스템 속성

wuaucpl.cpl Windows 자동 업데이트

control folders 폴더옵션

control userpasswords2 사용자 계정

 

(관리콘솔 명령어)

certmgr.msc 인증서

compmgmt.msc 컴퓨터 관리

diskmgmt.msc 디스크 관리

eventvwr.msc 이벤트뷰어

fsmgmt.msc 공유폴더

gpedit.msc 로컬 그룹 정책 편집기

lusrmgr.msc 로컬 사용자 및 그룹

secpol.msc 로컬 보안 정책

perfmon.msc 성능 모니터 뷰

services.msc 서비스

wbadmin.msc 백업 관리자

ServerManage 서버 관리자

 

(기타)

slmgr.vbs -rearm 평가판 기간 연장(180일)

slmgr.vbs -dli 평가판 라이센스 확인

---------------------------------------------

 

 

 

 

 

 


 

 

 

 

 

 

배시(bash)쉘 스크립트

 

 

 

 

(참고)https://wiki.kldp.org/HOWTO/html/Adv-Bash-Scr-HOWTO/index.html

(참고) https://mug896.github.io/bash-shell/getopts.html

 

 

 

 

■ 목표

 

프로그램에 대한 이해력(프로그램은 어려운것이 아니다!)

프로그램에 대한 문법(프로그램 작성시 문법에 대한 에러를 줄일수 있다면?)

스크립트 방식의 언어(bash shell script -> perl/python/ruby -> C -> Network Programming)

 

 

 

 

■ 쉘스크립트 작성시 선수지식

 

(1st) 쉘스크립트 작성시 명령어(grep, sed, awk) + sort, uniq, head, tail, cut

(2nd) 쉘의 특성(redirection, pipe, shell function, variable, metacharacter, alias, ...)

 

 

 

 

 

1. 쉘 개요

 

■ 배시(bash)쉘 기능

① Command-Line Interpreter - 쉘은 명령어 해석기의 역할을 가진다.

② Programming Language - 쉘의 특징을 이용하여 프로그램을 작성할 수 있다.

 

■ 사용하고 있는 쉘 확인(sh, csh, ksh, bash)

(현재쉘 확인 )# ps

(로그인셀 확인)# grep root /etc/passwd (# echo $SHELL)

 

(현재쉘 변경 )# sh

(로그인쉘 변경)# usermod -s /bin/sh root (chsh CMD)

 

# ps

# sh

# ps

# pstree PID

# exit

# ps

 

■ 쉘에서 실행되는 종류(bash 쉘 기준)

(ㄱ) 쉘 내부 명령어(EX: if, while, ...)

(ㄴ) 엘리어스(EX: alias ls='ls –al')

함수(EX: a () { CMD ; CMD; CMD }

(ㄷ) 디스크 내에 존재하는 명령어(EX: /bin/ls)

 

 

 

 

 

 

2. 쉘 스크립트 작성시 선수 지식

 

2.1 쉘 스크립트 작성시 필요한 명령어

 

■ 쉘 스크립트 작성시 필요한 필수 명령어

grep CMD

sed CMD

awk CMD

기타명령어(sort, cut, uniq, tr, split, paste, head, tail, wc)

 

 

(1) grep 명령어

# grep OPTIONS PATTERNfile1

OPTIONS: -i(대소문자 구분안함, ignore), -l(list file, 패턴을 포함하고 있는 파일만 풀력)

-n(number line), -v(제외시킬 때), -w(완전히 정확히 일치할 때), --color,

-r(recursive 재귀)

PATTERN: * . ^root(맨 처음이 root로 시작) root$ (마지막이 root로 끝남)

[abc] [a-c] [^a] (a만 제외)

 

# CMD | grep xinetd

# cat /etc/passwd | grep root

# ps -ef | grep httpd

# netstat -an | grep :22

# rpm -qa | grep vsftpd

# systemctl list-unit-files | grep sshd

 

 

 

OPTIONS

(-i OPTIONS) # grep -inFS /etc/passwd /* -i : ignore case */

(-v OPTIONS) # grep -v root/etc/passwd /* -v : inVerse, except */

# ps -ef | grep bash | grep -v grep

(-n OPTIONS) # grep -n root/etc/group /* -n : number line */

(-l OPTIONS) # grep -l root/etc/hosts /etc/passwd /etc/shadow /* -l : list file */

# find /etc -type f -exec grep -l 'eth0' {} \;

(-r OPTIONS) # grep -r eth0 /etc/*

(--color OPTIONS)# alias grep='grep --color -i'

(-w OPTIONS) # ps -ef | grep -w rsyslogd/* -w : word */

 

 

 

PATTERNS(https://recipes4dev.tistory.com/157)

(. pattern) 1문자의 all

# grep 'no...y' /etc/passwd

(* pattern) 앞문자가 0회 이상 반복

# grep 'r*' /etc/passwd

(+ pattern) 앞문자가 1회 이상 반복

# grep 'r+*' /etc/passwd

(? pattern) 앞문자가 0또는 1회 반복

({m} pattern) 앞문자가 m번 반복

({m,n} pattern) 앞문자가 m번 이상 n번 이하 반복

([abc] pattern) 선택적인 한문자

([a-c] pattern) 선택적인 한문자

([^a] pattern) 제외시킬 한문자

(^root pattern) 라인의 처음에 매칭되는

# grep '^root' /etc/group

# ls -l | grep '^-'

# ls -l | grep '^d'

(root$ pattern) 라인의 끝에 매칭되는

# grep 'root$' /etc/group

# grep '/bin/bash$' /etc/passwd

 

[참고] grep 명령어의 pattern 부분에 변수로 지정하는 경우 [중요!]

# cat grep.sh

--------------------------------

......

PATTERN=root

grep "$PATTERN"/etc/passwd $변수를 사용할때는 더블쿼트(쌍따옴표)로 묶어주자

......

--------------------------------

 

[참고] fgrep CMD(Fixed grep), egrep CMD(Extended grep) :

f는 의미를 고정시키는 역할! E는 확장시키는 역할.

# fgrep '^root' dictionary.txt

# egrep -i '(warn|error|crit|alert|emerg)' /var/log/messages

= grep -E -i '(warn|error|crit|alert|emerg)' /var/log/messages

 

 

728x90

+ Recent posts