본문 바로가기
IT Network System/Linux Srv

[Linux Srv 실습] apache2

by Skills 2020. 11. 19.

※ 사용자들에게 웹 서비스를 제공하는 apache 웹 서버를 구성해보자!

 

#실습 재료 (가상 머신 VMware / debian 10.4.0)

apt install apache2 -y // 웹 서버 apache2 패키지를 깐다.

a2enmod authnz_ldap // apache2 LDAP 인증 모듈을 사용하도록 설정한다.

 

vi /etc/apache2/sites-enabled/000-default.conf

ServerName : 웹 서버 도메인 주소 (클라이언트에게 보이는 호스트 주소 http://intranet.skill39.net)

ServerAdmin : 웹 문서 로딩 시 에러가 발생한 경우 에러 페이지에 나타나는 관리자 메일 주소.

DocumentRoot : 서버의 웹 문서가 있는 경로를 지정한다. 경로의 마지막에 “/”를 추가하면 안됨!

 

ErrorLog : 웹사이트에 에러가 나면 /var/log/apache2/error.log에 기록이 남는다.

CustomLog : 웹사이트에 접속한 기록이 /var/log/apache2/access.log에 남는다.

 

authname : 인증에 사용할 영역을 지정한다. 영역이 하는 두 가지 역할

클라이언트가 보통 이 정보를 암호 대화창에 보여준다.

영역 정보를 사용하여 클라이언트가 특정 인증 구역에 어떤 암호를 보낼지 결정한다.

ex ) 클라이언트가 ldap 영역에 인증이 성공했다면, 클라이언트는 자동으로 같은 서버에서 ldap 영역으로 표시된 구역에 대해 동일한 암호를 시도한다. 그래서 여러 제한 구역이 같은 영역을 공유하면 사용자가 여러 번 암호를 입력하지 않아도 된다.

authtype basic : 사용자를 인증할 방법을 선택한다. Basic 인증은 브라우저가 서버로 암호를 암호화하지 않고 보낸다. 그래서 기밀 자료를 보호할 때는 이 방법을 사용하면 안 된다.

authbasicprovider : 이 위치에서 사용자를 인증할 제공자를 지정한다.

authldapurl : 아파치 웹 서버는 LDAP 서버 192.168.1.2를 사용하여 사용자 계정을 인증하도록 구성.

require valid-user : 인증(비밀번호)이 올바르면 모든 사용자를 허용한다. (허가된 사용자만 접근 허용)

 

a2enmod ssl && a2ensite default-ssl.conf // https 사이트를 구성할 수 있는 설정 파일 활성화

원래 http 사이트(000-default.conf)가 기본적으로 생성되는데, https 사이트(default-ssl.conf)를 구성하려면 저 명령어를 해줘야지 ssl.conf가 활성화된다.

 

vi /etc/apache2/sites-enabled/default-ssl.conf

SSLEngine on : SSL 인증 활성화

SSLCertificateFile : 웹사이트에서 사용하는 crt 인증서

SSLCertificateKeyFile : 웹사이트에서 사용하는 key 파일

 

/etc/apache2/apache2.conf : 기본 설정 파일이다. httpd.conf(타 리눅스 배포판) = apache2.conf

vi /etc/apache2/apache2.conf

Options : 지정한 디렉토리 이하에 모든 파일과 디렉토리들에 적용할 접근 제어를 설정한다.

- FollowSymLinks

심볼릭 링크를 허용한다. (심볼릭 링크 허용=기존의 웹 문서 외에 다른 파일 시스템에 접근 가능하다)

이 옵션을 지정하면 웹 브라우저에서 링크 파일의 경로까지도 확인할 수 있게 된다.

보안상 이 값은 설정하지 않는 것이 좋다.

 

AllowOverride : 어떻게 접근을 허락할 것인가에 대해 설정한다.

- None

이 값이 설정되면 AccessFileName에 지정된 파일을 액세스 이전 파일로 인식하지 않는다.

AccessFileName의 값이 대부분 .htaccess 이므로 이를 무시하게 된다.

아주 제한적인 접근만을 허용할 때 사용하는 값이다.

 

Require : 서버의 특정 영역에 접근할 수 있는 사용자를 지정하여 권한을 부여한다.

- all granted : 모든 접근에 대해 제한을 두지 않는다.

728x90

'IT Network System > Linux Srv' 카테고리의 다른 글

데비안 패키지 관리자 시스템(DPMS)  (0) 2020.11.20
리눅스 패키지 놀이  (0) 2020.11.20
Boot loader  (0) 2020.11.20
Linux File permissions  (0) 2020.11.20
[Linux Srv 실습] FTP  (0) 2020.11.20

댓글