nginx의 BASIC 인증
2273 단어 기본 인증nginxubuntu18.04
nginx 서버를 설정하여 BASIC 인증
실행 환경
(GCP VM에서 수행)
우분투: 18.04
nginx: 1.19.1
구현
이전과 nginx의 기본 conf 파일이 변경된 패턴.
어느 기사를 모방해도 능숙하지 않고, 번거로워 버렸으므로 기록해 둔다.
nginx 설치
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install nginx
인증용 username 및 password 설정
.htpasswd 파일을/etc/nginx/이하에 배치. (일반적으로 여기)
두 번째 줄은 htpasswd 명령을 사용하여 패키지 설치
그리고, 등록하고 싶은 username과 password를 설정한다.
$ sudo touch /etc/nginx/.htpasswd
$ sudo apt-get install apache2-utils
$ sudo htpasswd -c -b /etc/nginx/.htpasswd [USERNAME] [PASSWORD]
덧붙여서, htpasswd
커멘드에서는, -c로 새롭게 .htpasswd 파일을 생성하므로, 2회째 이후에 유저를 추가할 때에는 제외한다.
conf 파일
/etc/nginx/conf.d 이하의 *.conf
가 include 되는 설정이 되어 있을 것이므로, 확장자의 전의 이름은 무엇이든 좋다.
여기에서는 hoge.conf
로 둔다.
- 80번 포트에서 연결 대기
- root로 지정한 디렉토리 다음 페이지 표시
- 표시하고 싶은 html 파일은, index 라벨을 붙여 등록해 둔다(←개인적 망각 포인트)
- location /
다음 auth_basic
는 인증 대화 상자 설정
- auth_basic_user_file
에서는 자격 증명의 설정 파일을 지정.
/etc/nginx/conf.d$ cat hoge.conf
server {
listen 80 default_server;
server_name 0.0.0.0;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
location / {
auth_basic "Please Login";
auth_basic_user_file /etc/nginx/.htpasswd;
}
}
conf 파일 확인
다음 명령으로 conf 파일의 문법을 확인합니다.
아래 두 줄 같은 표시가 나오면 OK :)
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
로딩
지금 실시한 설정을 읽어들여 표시시킨다.
$ sudo nginx -s reload
잘 못한다면,
/etc/nginx/nginx.conf
에서, /etc/nginx/sites-enabled/
를 include 하는 설정을 지우는 것을 시도해 주었으면 한다.
이번에는 로그인 시도의 횟수 제한도 마련해 보려고 생각합니다.
비밀번호 목록에있는 비밀번호를 등록하지 않으려고합니다
Reference
이 문제에 관하여(nginx의 BASIC 인증), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/comedy_love/items/a355c842d8497a011543
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install nginx
$ sudo touch /etc/nginx/.htpasswd
$ sudo apt-get install apache2-utils
$ sudo htpasswd -c -b /etc/nginx/.htpasswd [USERNAME] [PASSWORD]
/etc/nginx/conf.d$ cat hoge.conf
server {
listen 80 default_server;
server_name 0.0.0.0;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
location / {
auth_basic "Please Login";
auth_basic_user_file /etc/nginx/.htpasswd;
}
}
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
$ sudo nginx -s reload
Reference
이 문제에 관하여(nginx의 BASIC 인증), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/comedy_love/items/a355c842d8497a011543텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)