아파치 기본 인증

아파치 기본 인증

내 웹사이트의 디렉토리 중 하나에 대해 기본 인증을 활성화했습니다. 코드가 httpd.conf파일 에 추가되었습니다 . 사용자와 비밀번호가 /etc/passwd파일 에 추가되었습니다 . 에도 동일한 경로가 입력되었습니다 httpd.conf. 모든 모듈(예: 기본, 인증, 재작성 등)이 Apache에 로드되었는지 확인하세요.

문제 - 웹사이트(인터넷)에서 폴더에 접근하려고 하면 바로 인증 팝업이 뜨는데 사용자 이름과 비밀번호를 입력하면 더 이상 진행되지 않고 팝업이 계속 뜨면서 접근이 불가능합니다. 내용물.

암호httpd.conf

<Directory "/srv/www/htdocs/.....">
AllowOverride AuthConfig
AuthType Basic
AuthName "Restricted Files"
# (Following line optional)
AuthBasicProvider file
AuthUserFile "/etc/passwd"
# AuthGroupFile "/etc/group"
Require valid-user
</Directory>

답변1

나는 당신이 and 지시문에서 and 를 사용하고 싶지 않다고 확신합니다 /etc/passwd./etc/groupAuthUserFileAuthGroupFile

나는 별도의 파일을 만들어야 한다고 생각합니다( AuthUserFile파일을 만들고 유지하려면 명령을 사용하십시오 htpasswd).

Apache가 인증을 위해 일반 시스템 계정을 사용하도록 하려면 PAM과 같은 인증 모듈을 사용하는 것이 좋습니다.이것하지만 그것이 좋은지는 모르겠습니다. 한번도 사용해본 적이 없습니다.)

답변2

Murray가 제안한 대로 다른 파일(이 아닌 /etc/passwd)을 만든 다음 다음과 같이 할 수 있습니다.여기에 설명, 다음 단계에 따라 기본 인증 사용자를 생성할 수 있습니다.

htpasswd -c /path/to/your/file username

비밀번호를 입력하라는 메시지가 표시되며 비밀번호는 암호화되어 위에 정의된 파일에 저장됩니다.노트추가 사용자를 생성하려면 이 -c매개변수를 생략해야 합니다.

htpasswd /path/to/your/file username

그렇지 않으면 파일이 다시 생성되고 이전에 추가된 사용자를 덮어쓰게 됩니다.

htpasswd --help

-c는 새 파일을 만듭니다.

또한 비밀번호 암호화에 사용할 암호화 알고리즘을 결정할 수 있다는 점을 고려하세요.

-m은 비밀번호의 MD5 암호화를 강제합니다.

-d 비밀번호의 CRYPT 암호화를 강제합니다(기본값).

-p 비밀번호를 암호화하지 않습니다(일반 텍스트).

-s는 비밀번호의 SHA 암호화를 강제합니다.

관련 정보