Apache HTTP Server Version 2.2

Apache > HTTP Server > Documentation > Version 2.2 > Programs

#### Please note

This document refers to a legacy release (2.2) of Apache httpd. The active release (2.4) is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

# dbmmanage - DBM 형식의 사용자인증 파일을 관리한다

가능한 언어: en | ko | tr

이 문서는 최신판 번역이 아닙니다. 최근에 변경된 내용은 영어 문서를 참고하세요.

`dbmmanage`는 HTTP basic authentication에 사용할 사용자명과 암호를 저장하는 DBM형식의 파일을 만들고 수정한다. 아파치 웹서버는 자원을 `dbmmanage`로 만든 파일에 기록한 사용자에게만 보여줄 수 있다. 사용자명이 DBM 파일에 기록되있을때만 이 프로그램을 사용할 수 있다. 일반파일을 데이터베이스로 사용하려면 htpasswd를 참고하라.

이 manpage는 명령행 옵션만을 설명한다. httpd에서 사용자인증을 설정하는 지시어에 대한 설명은 아파치 배포본에 포함되있고 http://httpd.apache.org/에서도 볼 수 있는 아파치 설명서를 참고하라.

### 참고

- httpd
- `mod_authn_dbm`
- `mod_authz_dbm`

- Comments

## 개요

`dbmmanage [ encoding ] filename add|adduser|check|delete|update username [ encpasswd [ group[,group...] [ comment ] ] ]`

`dbmmanage filename view [ username ]`

`dbmmanage filename import`

## 옵션

`filename`
  DBM형식 파일의 파일명. 보통 `.db`, `.pag`, `.dir` 확장자를 뺀다.
`username`
  작업할 사용자명. username에 콜론(`:`)을 사용할 수 없다.
`encpasswd`
  `update`나 `add` 명령에 사용할 이미 암호화된 암호이다. 암호를 나중에 지정하고 싶은 경우 빼기기호(`-`)를 사용한다. 또, `update` 명령을 사용할때 마침표(`.`)를 사용하면 원래 암호를 그대로 둔다.
`group`
  사용자가 속한 그룹. 그룹명에 콜론(`:`)을 사용할 수 없다. 사용자를 그룹에 추가하지는 않지만 설명란을 채우고 싶다면 빼기기호(`-`)를 사용한다. 또, `update` 명령을 사용할때 마침표(`.`)를 사용한다면 원래 그룹을 그대로 둔다.
`comment`
  실제 이름, 메일 주소 등 사용자에 대한 설명을 적는 란이다. 서버는 이 항목을 무시한다.

### 인코딩

`-d`
  crypt 암호화 (Win32나 Netware가 아니라면 기본값)
`-m`
  MD5 암호화 (Win32과 Netware에서 기본값)
`-s`
  SHA1 암호화
`-p`
  암호를 그대로 기록 (추천하지 않음)

### 명령

`add`
  암호화된 암호 encpasswd를 사용하여 filename에 username 항목을 추가한다.
`adduser`
  암호를 물어보고 filename에 username 항목을 추가한다.
`check`
  암호를 물어본후 filename에 username이 있고 암호가 일치하는지 검사한다.
`delete`
  filename에서 username 항목을 삭제한다.
`import`
  `STDIN`에서 `username:password` 항목을 (한줄에 하나씩) 읽어서 filename에 추가한다. 암호는 이미 암호화되있어야 한다.
`update`
  `adduser` 명령과 비슷하지만, filename에 이미 username이 있는지 확인한다.
`view`
  DBM 파일 내용을 출력한다. username을 지정하면 특정 항목만을 출력한다.

## 버그

여러 다른 DBM 파일형식들이 있고 당신의 시스템에 여러 형식에 대한 비슷한 라이브러리들이 있음을 주의해야 한다. 가장 대표적인 네가지가 SDBM, NDBM, GNU 프로젝트의 GDBM, Berkeley DB 2이다. 불행히도 이 라이브러리들은 모두 다른 파일형식을 사용한다. 그래서 filename이 사용하는 파일형식이 `dbmmanage`가 원하는 형식과 같은지 확인해야 한다. `dbmmanage`는 DBM 파일의 형식을 알아내지 못한다. 다른 형식을 사용하면 아무일도 하지 않거나, 다름 이름의 DBM 파일을 만들거나, 최악의 경우 파일을 기록하여 DBM 파일을 망칠 수 있다.

`dbmmanage` 프로그램 앞부분에 있는 `@AnyDBM::ISA` 배열이 DBM형식 선호순서이다. 우리는 Berkeley DB 2 파일형식을 선호하므로 `dbmmanage`가 시스템 라이브러리를 찾는 순서는 Berkeley DB 2, NDBM, GDBM, SDBM 순이다. `dbmmanage`는 제일 먼저 찾은 라이브러리를 사용하여 모든 DBM 파일 작업을 한다. 이 순서는 Perl의 간단한 `dbmopen()` 호출이 사용하는 순서나 Perl의 표준 `@AnyDBM::ISA` 순서와 조금 다르다. 그래서 다른 도구를 사용하여 DBM 파일을 관리한다면 이 순서를 따라야 한다. C와 같이 다른 언어로 작성한 프로그램을 사용하여 파일을 다루는 경우에도 마찬가지다.

대부분의 유닉스 시스템에서 `file` 프로그램으로 DBM 파일형식을 확인할 수 있다.

가능한 언어: en | ko | tr

## Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.