Nginx Basic認証設定、社内IPなど特定ipのみ許可

概要

サービス公開前にNginxで
Basic認証を掛ける必要がありました

ちょうど社内公開したときでもあり
Basic認証のポップアップが出るのが鬱陶しいのもあって
社内だけオフりたい、というときに以下のような設定をしました。

Basic認証設定

1
# yum install -y httpd-tools
1
2
3
4
# cd /etc/nginx
# htpasswd -c .htpasswd <Basic認証ユーザ>
New password: <Basic認証ユーザのパスワード入力>
Re-type new password: <もう一度、Basic認証ユーザのパスワード入力>

Nginx configureファイル編集

1
# vim /etc/nginx/conf.d/default.conf
1
2
3
4
5
6
7
8
9
location / {
....

# Basic認証設定
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;

....
}

特定IPのみ許可したい場合

1
# vim /etc/nginx/conf.d/default.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
location / {
....

# add start -----
satisfy any;
allow <許可IP>;
allow <許可IP>;
deny all;
# add end -----

# Basic認証設定
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;

....
}

あとは 許可IPを随時増やせば良いです。

Webアプリケーション開発におけるNginxあるあるかなと思います♪

以上です。

Nginx Basic認証設定、社内IPなど特定ipのみ許可

https://kenzo0107.github.io/2015/10/18/2015-10-19-allow-specified-ip-nginx/

Author

Kenzo Tanaka

Posted on

2015-10-19

Updated on

2020-05-07

Licensed under

コメント