자격증/리눅스마스터

리눅스마스터 1급 2차 - 2102회 기출문제 풀이 (13/16)

로이제로 2023. 11. 19. 22:00
반응형

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

가. 아파치 웹 서버 환경 설정 파일을 vi 편집기로 불러온다.
# vi ①                 

나. 도메인명을 www.ihd.or.kr으로  로 지정하고 포트 번호는 80으로 사용한다.
                  

다. 웹 문서가 위치하는 디렉터리의 경로는 /usr/local/apache/html로 변경한다.
                 

라. 아파치 웹 데몬을 실행한다.
                  

 

◼︎ 조건

- 아파치 웹 서버는 소스 파일을 이용해서 /usr/local/apache 디렉터리에 설치되어 있다.

- ①번은 아파치 웹 서버의 환경 설정 파일명을 절대 경로로 기입한다.

- ②번과 ③번은 ①번 파일에 존재하는 항목과 값을 하나로 기입하고 대소문자를 구분하여 정확히 기재한다. (예 : LogLevel warn)

- ④ 아파치 데몬을 실행하는 명령을 정확히 기입한다.

 

더보기

 

번호 정답
/usr/local/apache/conf/httpd.conf
ServerName www.ihd.or.kr:80
DocumentRoot "/usr/local/apache/html"
/usr/local/apache/bin/apachectl start

 

  httpd.conf

 주로 CentOS에서는 httpd.conf로 사용되고, Ubuntu에서는 apache2로 아래와 같이 명령어를 실행 해서 apache를 설치하게 되면

$> sudo apt-get install -y apache2

apache의 설정 파일 위치는 아래와 같습니다.

/etc/apache2/apache2.conf

반면에 httpd는 "설치위치 + /conf/httpd.conf" 에 설정 파일이 위치하게 됩니다.

apache2의 설정파일

apache2와 httpd의 경우 미묘한 차이가 있을 수 있으나 (기본 경로 등) 항목은 동일하며 이 문제에서는 httpd 기준으로 작성되어 httd 기준으로 구성요소에 대해 이야기해 보면

 

구성 요소 내용 예시
SeverRoot 아파치 Root 홈 디렉터리 경로입니다.
절대경로로 지정되어야 합니다.
ServerRoot "/etc/httpd"
Listen 아파치 웹 서버 포트를 지정합니다. Listen 80
Include 해당 설정 파일 외 다른 파일에서 설정 정보를 읽어옵니다. Include conf.modules.d/*.conf
ServerAdmin 서버에서 오류가 발생하는 경우 오류 메시지에 포함될 관리자 이메일 주소입니다.
오류가 발생하면 오류 화면에 이 이메일 주소가 표시됩니다.
ServerAdmin root@localhost
ServerName 서버의 도메인을 입력합니다.
클라이언트에게 보여줄 호스트 이름 및 포트를 지정합니다.
등록된 DNS 주소가 없는 경우 IP주소로 설정합니다.
ServerName www.example.com:80
DocumentRoot 아파치 서버의 웹문서가 있는 경로 및 웹 페이지의 루트를 지정합니다.
ServerName을 통해 유입된 사용자가 마주하게 될 경로의 최상단입니다.
DocumentRoot "/var/www/html"
<Directory> 각 디렉터리별 고유 설정을 하기 위한 블록입니다.

Options : 특정 디렉터리 하위의 모든 디렉터리와 파일에 대한 접근 권한을 제어합니다.
AllowOverride : 디렉터리에 .htaccess 파일이 있을 경우 기존 설정을 덮어쓸지 여부를 설정합니다.
Require : 해당 디렉터리의 접근 허용 여부를 설정합니다.
Order : Deny와 Allow를 먼저 적힌 옵션이 우선 적용됩니다.

<Directory "/var/www">
    Options Indexes FollowSymLinks
    AllowOverride None
    # Allow open access:
    Require all granted
    Order Deny,Allow
    Deny from all
    Allow from 192.168.1.100
</Directory>
Options 내용
None 모든 접근을 허용하지 않습니다.
All 모든 옵션설정을 허용합니다.
Indexes 디렉터리 접근 시 DirectoryIndex 지시자에 설정한 파일이 없을 경우, 디렉터리 목록을 화면에 표시합니다.
Includes mod_include를 사용하는 SSI를 허용합니다.
IncludesNoExec SSI를 허용하지만, #exec cmd와 #exec cgi는 사용할 수 없습니다.
FollowSymLinks mod_cgi 를 사용하는 CGI 스크립트를 실행 가능합니다.
MultiViews 클라이언트가 요청한 media type과 content-encoding을 가지고 다중확장자를 지원하기 위해 MultiViews 기능을 사용합니다.
AllowOverride 내용
None htaccess 파일을 override를 허용하지 않습니다.
All htaccess 파일을 우선 적용하도록 override를 허용합니다.
AuthConfig 클라이언트 인증 지시자의 사용을 허용합니다.
Require 내용
all denied 모든 접근을 거부합니다.
all granted 모든 접근을 허용합니다.
ip [IP주소] 특정 IP주소의 접근을 허용합니다.
not ip [IP주소] 특정 IP주소의 접근을 거부합니다.
Order 내용
Deny 해당 클라이언트 또는 주소의 접근을 거부합니다.
Deny from all : 모든 클라이언트의 접근을 거부합니다.
Deny from [IP주소] : 특정 IP주소의 접근을 거부합니다.
Allow 해당 클라이언트 또는 주소의 접근을 허용합니다.
Allow from all : 모든 클라이언트의 접근을 허용합니다.
Allow from [IP주소] : 특정 IP주소의 접근을 허용합니다.

 

반응형