별의 공부 블로그 🧑🏻‍💻
728x90
728x170

67. 웹 서버 보안

1. 아파치(Apache)

  • Apache 웹 서버 실행
    • httpd라는 데몬(Daemon) 프로세스가 실행되어서 기동됨.
  • 웹 서버가 80번 포트를 사용하기 때문에 httpdroot 소유자 권한으로 기동되어야 함.
  • 웹 브라우저들이 접속을 하면 httpd 프로세스를 실행해서 웹 브라우저의 요청을 처리함.
  • 웹 브라우저의 연결을 처리하는 프로세스는 apache라는 사용자를 만들어서 기동하면 됨.
  • httpd 프로세스 중에서 부모 프로세스 하나만 root 사용자로 실행되고, 나머지는 apache 사용자로 실행하면 됨.
    • 웹 사이트에 접속할 때마다 apache 사용자로 httpd 데몬 프로세스가 실행됨.
$ ps -ef | grep httpd
ubuntu   15613 15591  0 07:39 pts/0    00:00:00 grep --color=auto httpd

 

2. Apache 설정 파일

  • Apache 웹 서버의 설정 파일 : /etc/httpd/conf/httpd.conf
    • httpd 프로세스가 실행될 때 읽어서 웹 서버의 환경 설정을 하는 파일
  • Apache 웹 서버 보안 설정
보안 설정 내용
주요 디렉터리 및 파일 접근 권한 - Root에 의해 실행 가능한 모든 명령어들은 다른 사용자가 수정하지 못하도록 설정함.

# chown 0 . bin conf logs
# chgrp 0 . bin conf logs 
# chmod 755 . bin conf logs
# chmod 511 /usr/local/httpd/bin/httpd
불필요한 파일 삭제 - 아파치 설치 시에 기본적으로 설치되는 cgi-bin은 공격에 이용될 수 있으므로 삭제
- 메뉴얼 파일은 시스템에 대한 정보를 제공할 수 있어서 공격에 도움이 될 수 있으므로 삭제
- /var/www/manual 및 /var/www/cgi_bin 삭제
Directory Listing - index.html이 없거나 Listing을 보여주는 옵션이 indexes에 설정되어 있는 경우, 웹 페이지의 디렉터리가 보이게 됨.
FollowSymLinks - 심볼릭 링크를 이용해서 파일 시스템에 접근하여 Root 권한을 획득할 수 있으므로 FollowSymLink를 제거
Directory indexes - 실행 우선 순위를 결정함.
- index.cgi > index.html > index.htm 의 순서

#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir-module>
    DirectoryIndex index.html
</IfModule>
Server Tokens - 웹 서버에 접근할 경우, 최소한의 정보만 보이도록 설정
ServerSignature - ServerSignature on : on으로 설정된 경우, 아파치 버전 및 서버 이름이 노출됨.
접근 제어 - 클라이언트의 이름 및 IP 주소 등을 사용해 접근 제어 수행

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

 

3. Apache 웹 서버 Session 관리

보안 설정 내용
Timeout - 웹 브라우저가 웹 페이지에 접근한 뒤, 클라이언트의 요청에 서버가 대기하는 시간 설정
- 기본값 : 300초
MaxKeepAliveRequests - 접속을 허용할 수 있는 최대 회수 지정
- 0일 경우, 무제한 기본값 : 100
KeepAliveTimeout - 클라이언트 최초 요청을 받은 뒤에 다음 요청이 전송될 때까지 대기하는 시간 설정
- 즉, 설정된 시간 동안 서버는 한 번의 요청을 받고, 접속을 끊지 않고 유지한 상태에서 다음의 요청을 받아들임.
KeepAlive - 접속 연결에 대한 재요청을 허용할 것인지 설정
- 기본 값 : off, on으로 설정되면 MaxKeepAliveRequests 값과 연계됨.

 


내용 출처 : 이기적 네트워크관리사 1·2급 필기 (임호진, 황성하 공저, 영진닷컴)

728x90
그리드형(광고전용)

'Certificate > Network Manager' 카테고리의 다른 글

71. 파일 무결성 검사  (0) 2021.05.03
70. IP 기반의 접근 통제  (0) 2021.05.03
69. 전자 우편 보안  (0) 2021.05.03
68. 전자상거래 보안  (0) 2021.05.03
66. 비대칭키(공개키) 암호화  (0) 2021.05.02
65. 대칭키(비밀키) 암호화  (0) 2021.05.01
64. 암호화 개요  (0) 2021.05.01
63. 정보 보호 공격 유형과 보호 대책  (0) 2021.05.01
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖