Apache로 디렉토리를 암호로 보호방법
Apache의 기본 HTTP 인증을 사용하여 디렉토리를 암호로 보호하는 방법을 알아 봅니다. 이 방법을 사용하면 액세스를 위해 사용자 이름과 암호가 필요한 웹 사이트의 제한 영역을 설정할 수 있습니다.
요구 사항
- Linux (CentOS 7 또는 Ubuntu 16.04)를 실행하는 클라우드 서버.
- Apache 웹 서버가 설치되어 실행 중입니다.
암호 파일 만들기
첫 번째 단계는 Apache가 사용자 이름과 암호를 확인하는 데 사용할 암호 파일을 만드는 것입니다. 이 파일의 이름 은 Ubuntu 16.04 및 CentOS 7 과 .htpasswd
같은 안전한 위치 /etc/apache2
에 지정 /etc/httpd
됩니다.
이 htpasswd
명령은 암호 파일을 만들거나 항목을 추가하는 데 사용할 수 있습니다. 처음으로 -c
플래그를 사용하여 파일을 만들고 사용자 이름을 추가합니다 jdoe
.
- CentOS 7 :
sudo htpasswd -c /etc/httpd/.htpasswd jdoe
- Ubuntu 16.04 :
sudo htpasswd -c /etc/apache2/.htpasswd jdoe
사용자의 새 암호를 입력하고 확인하라는 메시지가 표시됩니다.
기존 파일에 새 사용자 추가
기존 비밀번호 파일에 새 사용자를 추가하려면 -c
플래그 없이 동일한 명령을 사용하십시오 . 예를 들어 사용자를 추가 janedoe
하려면 명령은 다음과 같습니다.
- CentOS 7 :
sudo htpasswd /etc/httpd/.htpasswd janedoe
- Ubuntu 16.04 :
sudo htpasswd /etc/apache2/.htpasswd janedoe
사용자의 새 암호를 입력하고 확인하라는 메시지가 표시됩니다.
디렉터리 제한 활성화
디렉토리를 제한하려면 먼저 .htaccess
파일 을 허용하도록 Apache를 구성해야 합니다.
CentOS 7
다음 명령으로 편집 할 기본 Apache 구성 파일을 엽니 다.
sudo nano /etc/httpd/conf/httpd.conf
<Directory>
섹션 까지 아래로 스크롤하여로 "/var/www/html"
변경 AllowOverride
합니다 All
.
파일을 저장하고 종료하십시오. 그런 다음 Apache를 다시 시작하여 변경 사항을 적용하십시오.
sudo systemctl restart httpd
Ubuntu 16.04
다음 명령으로 편집 할 기본 Apache 구성 파일을 엽니 다.
sudo nano /etc/apache2/apache2.conf
<Directory>
섹션 까지 아래로 스크롤하여로 "/var/www"
변경 AllowOverride
합니다 All
.
<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted</Directory>
파일을 저장하고 종료하십시오. 그런 다음 Apache를 다시 시작하여 변경 사항을 적용하십시오.
sudo systemctl restart apache2
제한 구역 만들기
보호하려는 디렉토리로 이동하십시오. 예를 들면 :
cd /var/www/html/admin
라는 파일을 .htaccess
만들고 편집을 위해 엽니 다.
sudo nano .htaccess
이 파일에 다음을 넣으십시오.
CentOS 7 :
AuthType BasicAuthName "Password Required"Require valid-userAuthUserFile /etc/httpd/.htpasswd
Ubuntu 16.04 :
AuthType BasicAuthName "Password Required"Require valid-userAuthUserFile /etc/apache2/.htpasswd
인증 테스트
인증을 테스트하려면 브라우저에서 비밀번호로 보호 된 URL을 방문하십시오. 계속하려면 사용자 이름과 비밀번호를 입력하라는 팝업이 표시됩니다.
참고 : 브라우저에 팝업 차단기가있는 경우이 도메인에 대한 팝업을 허용하도록 구성해야합니다.
출처 URL
이 게시글이 문제가 될 시, 삭제하겠습니다
댓글 없음:
참고: 블로그의 회원만 댓글을 작성할 수 있습니다.