본문 바로가기

카테고리 없음

mod_auth 모듈 사용하기

========================================================================
LAB> 아파치의 mod_auth 모듈을 이용한 디렉토리 인증을 걸어보자.

- 순서 -
1. 인증 디렉토리 생성
2. 웹서버 설정 변경
3. 인증파일 생성 (.htaccess)
4. 사용자 인증 파일 생성 (.htpasswd)
5. 확인
- 순서 -


1. 인증 디렉토리 생성
# cd /usr/local/apache/htdocs
# mkdir mysqladmin
# cd mysqladmin/
# echo "mysqladmin directory" > index.html

2. 웹서버 설정 변경
# vi /usr/local/apache/conf/httpd.conf
-- /usr/local/apache/conf/httpd.conf --
  :
<Directory "/usr/local/apache/htdocs">
  :
  :
</Directory>

<Directory "/usr/local/apache/htdocs/mysqladmin">
     Options Indexes FollowSymLinks
     AllowOverride All               <-- None -> All 로 수정

     #AuthName "관리자 영역" 
     #AuthType Basic
     #AuthUserFile   "/usr/local/apache/.htpasswd"
     #AuthGroupFile  /dev/null
     #<Limit GET POST>
     #require valid-user
     #</Limit>

</Directory>
-- /usr/local/apache/conf/httpd.conf --

- 설정파일 구문 분석 (정상이면 웹서버를 재시작한다.)
# apachectl configtest
Syntax OK
# apachectl restart

3. 인증파일 생성 (.htaccess)
- 인증을 걸고자 하는 디렉토리에 .htaccess 파일을 생성한다.
# pwd
/usr/local/apache/htdocs/mysqladmin
# vi .htaccess
-- .htaccess --
AuthName "관리자 영역" 
AuthType Basic
AuthUserFile   "/usr/local/apache/.htpasswd"
AuthGroupFile  /dev/null
<Limit GET POST>
require valid-user
</Limit>
-- .htaccess --

4. 사용자 인증 파일 생성 (.htpasswd)
- htpasswd 명령어를 이용해서 .htpasswd를 생성
- 사용자를 처음 생성할 때 -c 옵션 준다.
# cd /usr/local/apache/
# htpasswd -c .htpasswd webadmin
New password:             <-- 암호 입력
Re-type new password:     <-- 암호 입력
# cat .htpasswd 
webadmin:$apr1$lVRyr6VP$aqmTAE2q0xszpke0Boxe01

5. 확인
http://192.168.56.101/mysqladmin/  <-- 접근시 로그인창이 나오면 성공


========================================================================