[어플리케이션 보안] Apache 웹 서버 보안
Apache HTTP 서버
- Apache HTTP Server는 오픈 소스 소프트웨어 그룹인 아파치 소프트웨어 재단에서 만드는 웹 서버 프로그램
Apache 보안 설정
- 서버 실행 계정 확인: root 말고 apache라는 별도의 계정을 권한으로 만들어 아파치 웹 프로세스에 대한 권한으로 할당한다.
- Apache 설정파일 수정(httpd.conf):Timeout, MaxClient, Port, User, MaxSpareServer 등 설정 파일을 수정한다 (/etc/httpd/conf/httpd.conf)
httpd.conf 세션 설정
- TimeOut : 클라이언트의 요청에 서버가 대기하는 시간
- KeepAlive (on/off) : on 으로 설정하면 클라이언트와 서버간의 tcp 연결을 keepalivetimeout 동안 유지하게 된다. 즉, 한 번의 연결에 대해 한 번의 요청만 처리하는 것이 아니라 또 다른 요청을 기다리게 된다. (일반적으로 on이 좋다)
- KeepAliveTimeout : KeepAlive 옵션이 on 이라면 클라이언트 최초 요청을 받은 뒤에 다음 요청이 전송될때까지 대기하는 시간(s)
- MaxKeepAliveRequests : KeepAlive 옵션이 on 이라면 허용할 최대 요청 수를 정의함. 이 옵션을 0으로 설정하면 무한대의 요청을 허용함 (성능은 좋아짐), KeepAlive 를 허용하는 유저 수.
- MaxClients : 아파치 서버 동시 접속자 수 (최대: 256)
- DirectoryIndex : 웹 디렉토리 접근 시 인식되는 인덱스 파일의 순서 지정
- Listen : 사용할 포트 지정
- CustomLog : 엑세스 로그 파일 위치 지정
- ErrorLog : 에러 로그 파일 위치 지정
- Port : 아파치가 사용할 기본 포트 (일반적으로 80)
- User : 보안상 절대 root 로 설정하지 말자
httpd.conf 접근제어
- 시스템 루트( / ) 디렉토리에 대한 제어
<Directory />
Order Deny, Allow
Deny from All
LimitRequestBody 5000000
Options FollwSymLinks
AllowOverride None
</Directory>
- /usr/local/apache/htdocs 디렉토리에 대한 제어
<Directory "/usr/local/apache/htdocs"/>
Order Deny, Allow
Deny from All
Allow from 127.0.0.1
LimitRequestBody 5000000
Options Indexes FollowSymLinks
AllowOverride AuthConfig
</Directory>
- Order Deny, Allow: Deny와 Allow 순서를 정한다.
- Deny from All : 모든 트래픽을 막는다.
- FollowSymLinks : 심볼릭 링크를 허용한다.
- LimitRequestBody : 파일 업로드, 다운로드 시 파일크기를 제한한다.
- Indexes : 웹 서버의 디렉토리에 접근 했을 때 DirectoryIndex 지시자로 설정한 파일이 없을 경우 디렉토리안의 파일목록을 보여준다. → '디렉토리 리스팅'이 가능하므로 해당 값을 삭제하는게 안전하다.
- AllowOverride: 클라이언트의 디렉토리 접근 제어에 관한 설정, 어떻게 접근을 허락할 것인가? (None, ALL, AuthConfig, FileInfo...) → 'None' 이면 값을 'AuthConfig'로 변경해서 상위 디렉토리 접근을 금지할 수 있다.
기출문제
https://q.fran.kr/%EB%AC%B8%EC%A0%9C/10005
https://q.fran.kr/%EB%AC%B8%EC%A0%9C/9721
https://q.fran.kr/%EB%AC%B8%EC%A0%9C/14779
https://q.fran.kr/%EB%AC%B8%EC%A0%9C/9998
참고사이트
https://namu.wiki/w/%EC%95%84%ED%8C%8C%EC%B9%98%20HTTP%20%EC%84%9C%EB%B2%84
https://zidarn87.tistory.com/364
https://peemangit.tistory.com/308
https://mosei.tistory.com/entry/apache-httpdconf-%EC%84%A4%EC%A0%95-%EB%B0%8F-%EC%84%A4%EB%AA%85
Author And Source
이 문제에 관하여([어플리케이션 보안] Apache 웹 서버 보안), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@choco_sister/어플리케이션-보안-Apache-웹-서버-보안저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)