E D R , A S I H C RSS

FrontPage ApacheAuth

No difference found



아파치 사용자 인증걸기


Contents

1. 아파치 사용자 인증걸기
1.1. apache conf 수정하기
1.2. 아파치 인증을 적용할 디렉토리에 .htaccess 파일 만들기
1.3. 사용자 추가하기
1.4. 특정 사용자를 그룹에 추가 하기


1.1. apache conf 수정하기

ns conf # pwd
/etc/apache2/conf
ns conf # vi commonapache2.conf

--- 아래부분을 추가해준다 ---
<Directory /var/www/tongseob.info/viewcvs/cgi>
    AllowOverride All --> 이 부분이 All 로 되어있어야 동작한다, None 은 안됨 !!!
    Options ExecCGI
    <IfModule mod_access.c>
      Order allow,deny
      Allow from all
    </IfModule>
</Directory>

...

ns conf # /etc/init.d/apache2 restart
(아파치를 재시작 해준다)

1.2. 아파치 인증을 적용할 디렉토리에 .htaccess 파일 만들기

이제 아파치 인증을 적용할 디렉토리로 이동하자.
ns conf # /var/www/tongseob.info/viewcvs
.htaccess 파일내용
ns viewcvs # cat .htaccess
AuthType Basic
AuthName "tongseob's web cvs"
AuthUserFile /var/www/tongseob.info/.httongseob
Require valid-user
  • /var/www/tongseob.info/.httongseob 이 파일은 한단계 상위디렉토리에 적어주는게 좋다.
    ==> apache 에서 .ht 로 시작하면 보안상 접근할 수 있는 파일이 된다.

AuthType
인증 유형을 설정하는 지시자다. Basic과 Digest를 설정할 수 있다.
Digest의 경우 MD5 방식을 사용하는데 MD5를 지원하는 브라우저가 제한 되어 있기 때문에 이 강좌에서는 언급하지 않겠다.

AuthName
인증창의 제목이라고 생각하면 된다. 간단한 스트링을 입력해서 설정하는것이 바람직하다.

AuthUserFile
사용자 User_ID 정보와 Password 정보가 들어 있는 파일을 지정해 주는 것이다.
보안상 꼭 웹 문서 디렉토리 밖에 위치 시키는 것이 좋다. 이 파일은 나중에 만들것이기 때문에 이 파일이 없다고 투덜
거리지 마시길..

Require
인증할 대상을 지정한다.
Revalid-user -> AuthUserFile에 등록된 모든 사용자를 인증을 통해 받아 들인다는 설정
Require user 사용자1 사용자2 --> 사용자1과 사용자2만 인증을 통해 받아 들인다는 설정
Require group 그룹1 그룹2 --> 그룹1 과 그룹2 에 속하는 사용자만을 인증을 통해 받아 들인다는 설정
Require 지시자는 하나의 .htaccess 파일에 2개 이상 설정을 할 수도 있다.

1.3. 사용자 추가하기

아파치 인증에 사용할 사용자 추가는 아파치의 bin 디렉토리 안에 있는 htpasswd 라는 명령어로 추가한다.
사용방법은 아주 간단하지만 주의를 기울려야 될 부분이 있다. 일반적인 사용법은 다음과 같다.

htpasswd -c AuthUserFile 사용자명

괄호 안에 있는 -c 옵션은 처음 사용자를 등록할 때 필요한 옵션이다.
AuthUserFile 경로 앞에 -c 옵션을 추가 하게 되면 AuthUserFile 파일에서 지정한 파일을 만들어 준다.
절대 2번째 사용자 등록부터는 -c 옵션을 쓰면 안된다.
만약 실수로 -c 옵션을 쓸 경우 전에 있던 파일은 날라가고 새로운 파일이 만들어 지기 때문에 각별히 주의 해야 된다.

1.4. 특정 사용자를 그룹에 추가 하기

아파치 인증은 사용자 뿐만아니라 그룹에 대해서도 인증을 할 수 있다.
특정 그룹을 아파치 인증을 통해 접근을 허가하기 위해서는 해당 디렉토리 안에 있는 .htaccess 파일에 AuthGroupFile 지시자를 이용해 그룹 정보가 담겨있는 파일의 경로를 지정하고 그룹 파일을 만들어 주면 된다.

.htaccess 파일에 추가할 부분
AuthUserFile /var/www/tongseob.info/.httongseob
AuthGroupFile /var/www/tongseob.info/.htgroup 위와같은 형식이다
# cat .htgroup
admin: aaaa bbbb
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-08-04 15:25:02
Processing time 0.0346 sec