`
crabdave
  • 浏览: 1295141 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Nginx添加htpasswd认证

 
阅读更多

Nginx添加htpasswd认证

 参考:

http://blog.csdn.net/longxibendi/article/details/23954017

http://tool.oschina.net/htpasswd

http://www.letuknowit.com/post/12.html

 

在Linux上编写脚本(注意权限,对脚本做了一些修改)

vi htpasswd.sh

 

 #!/bin/sh

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

 

 

 

echo "====================================="

echo "# A tool like htpasswd for Nginx    #"

echo "#-----------------------------------#"

echo "# Author:Licess http://blog.csdn.net/longxibendi #"

echo "====================================="

 

workdir="/nginx/user/conf"

 

#set UserName

 

 

        username=""

        read -p "Please input UserName:" username

        if [ "$username" = "" ]; then

                echo "Error:UserName can't be NULL!"

                exit 1

        fi

        echo "==========================="

        echo "UserName was: $username"

        echo "==========================="

 

 

#set password

 

 

        unpassword=""

        read -p "Please input the Password:" unpassword

        if [ "$unpassword" = "" ]; then

                echo "Error:Password can't be NULL!"

                exit 1

        fi

        echo "==========================="

        echo "Password was: $unpassword"

        echo "==========================="

password=$(perl -e 'print crypt($ARGV[0], "pwdsalt")' $unpassword)

 

 

#set htpasswd file

 

 

        htfile=""

        #read -p "Please input Auth filename:" htfile

        if [ "$htfile" = "" ]; then

                echo "Error:Auth filename can't be NULL!"

                exit 1

        fi

        echo "==========================="

        echo "Auth File: $workdir/$htfile"

        echo "==========================="

 

 

        get_char()

        {

        SAVEDSTTY=`stty -g`

        stty -echo

        stty cbreak

        dd if=/dev/tty bs=1 count=1 2> /dev/null

        stty -raw

        stty echo

        stty $SAVEDSTTY

        }

        echo ""

        echo "Press any key to Creat...or Press Ctrl+c to cancel"

        char=`get_char`

 

 

if [ ! -f $workdir/$htfile.conf ]; then

  make -p $workdir/$htfile.conf

 

  echo "Create Auth file......"

fi

cat >>$workdir/$htfile.conf<<eof

$username:$password

eof

echo "Create Auth file successful,auth file path:$workdir/$htfile.conf."

cat $workdir/$htfile.conf

 

生成用户名密码信息

 

./htpasswd.sh

 

修改Nginx.conf配置

添加如下内容:

auth_basic "Authorized users only";

auth_basic_user_file /nginx/conf/longxibendi.auth.conf ; #这里写前面脚本返回的文件路径;

 

重启nginx

nginx -t

nginx -s reload

 

 

分享到:
评论

相关推荐

    在Nginx用htpasswd对网站进行密码保护的设置方法

    这种方法不是通过网站应用层的注册登录系统,而是直接在服务器配置层面进行,利用Nginx的HTTP基本认证(HTTP Basic Authentication)功能和htpasswd文件。 首先,要实现这一功能,需要修改Nginx的服务器配置。在...

    nginx添加php basic验证

    总结来说,"nginx添加php basic验证"是一个涉及Nginx配置、HTTP基本认证和PHP-FPM集成的过程,用于增强网站安全性,防止未经授权的访问。正确配置后,只有提供了正确凭证的用户才能访问PHP应用。

    nginx添加权限控制

    本文将深入探讨如何在Nginx中添加权限控制,以增强网站的安全性,确保敏感资源不被未授权访问。 ### Nginx权限控制的重要性 在互联网世界中,数据安全至关重要。无论是个人网站还是企业级应用,保护用户数据和限制...

    Nginx中配置用户服务器访问认证的方法示例

    Nginx超级强大它可以单独为一个域名设置用户认证,方法也很简单我们只要生成用户认证的用户名和密码,然后再Nginx添加auth认证配置即可。 Nginx可以为某一个域名...2. 为Nginx添加auth认证配置 下面以某域名下面的aut

    Nginx用户认证配置方法详解(域名/目录)

    Nginx可以为某一个域名单独加用户认证,具体做法如下: ...2. 为Nginx添加auth认证配置 下面以某域名下面的auth目录为例,在域名的server段里加上如下代码: 代码如下:location ^~ /auth/ {location ~ .*.

    6.1: Nginx安装 、 用户认证 、 Nginx虚拟主机 、 HTTPS加密网站 、 总结(1).docx

    然后,我们可以在 Nginx 配置文件中添加以下内容来启用基本认证: `auth_basic "Restricted Area";` `auth_basic_user_file /usr/local/nginx/conf/passwd;` 虚拟主机 Nginx 中的虚拟主机可以让我们在同一个 IP ...

    nginx-tfs工具

    4. 配置Nginx服务器:在Nginx配置文件中添加对TFS的访问规则,例如创建一个location块,指定TFS的URL和认证方式。 ```nginx location /tfs { tfs_pass http://your-tfs-server:8080/tfs; auth_basic "TFS Access...

    Nginx服务器设置网站验证访问的方法

    为网站目录设置访问验证之后我们就是进入此页面都需要输入验证密码才可以,下面我来介绍nginx中...2、为Nginx添加auth认证配置 下面是以某域名下面的soft目录为例,在域名的server段里加上如下代码:  代码如下:  l

    nginx系列(十五)nginx下启用http_auth_basic

    2. **配置Nginx服务器块**:在Nginx的配置文件(通常为`/etc/nginx/nginx.conf`或`/etc/nginx/sites-available/default`)中,找到相应的服务器块并添加以下配置: ```nginx location /protected { auth_basic ...

    配置nginx为后台目录指定登录密码.zip访问服务器的某个目录要求输入密码登录

    找到你的Nginx配置文件(通常位于`/etc/nginx/nginx.conf`或`/etc/nginx/sites-available/default`),然后添加以下段落到你想保护的服务器或location配置中: ```nginx location /protected_directory { auth_...

    为Nginx目录设置访问密码

    接下来,我们需要配置Nginx以使用这个`.htpasswd`文件进行认证。在Nginx的配置文件(通常是`/etc/nginx/nginx.conf`)中,找到对应的服务器或location块,然后添加以下代码: ```nginx location /protected_...

    nginx动态添加访问白名单的方法

    首先,我们要了解Nginx的基本白名单配置方法,然后介绍如何结合Lua模块来实现动态添加白名单,并添加简单的认证机制,以防止未经授权的访问。 一、Nginx配置访问白名单 要启用Nginx的访问白名单,我们需要在Nginx...

    Nginx 基于url的安全认证配置

    安全起见需要增加下认证,但是重新搭建登录服务比较麻烦,所以想到利用nginx做认证. 1. 下载安装httpd-tools yum install httpd-tools -y 2. 创建授权用户和密码 htpasswd -c -d /usr/local/nginx/conf/pass_file ...

    Nginx服务器中为网站或目录添加认证密码的配置详解

    以上就是在Nginx服务器中为网站或目录添加认证密码的配置方法。通过合理使用auth_basic指令和密码文件,我们可以有效地控制对敏感数据的访问,从而提高网站的安全性。在配置过程中,还需要注意指令的正确位置以及...

    Nginx教程 防御ddos,用户访问控制,限流.zip

    auth_basic_user_file /etc/nginx/.htpasswd; ``` 2. **地理IP过滤**:通过GeoIP模块限制特定国家或地区的访问。首先安装GeoIP库和Nginx模块,然后配置: ```nginx geo $block { default 0; include /etc/...

    详解Nginx实战之让用户通过用户名密码认证访问web站点

    7. 添加DNS记录并测试访问:配置好Nginx后,需要在DNS服务器上添加相应的A记录,将域名指向正确的IP地址。最后,通过客户端(如IE浏览器)访问域名进行测试,确保配置生效。 从上述步骤中,我们可以提取以下知识点...

    Nginx的相关配置

    需要注意的是,这里使用了`htpasswd`命令来生成用户认证文件,并且需要确保认证文件的权限正确设置。 - **基于IP的访问控制**:可以通过以下方式限制特定IP地址或IP段的访问: ```nginx deny 192.168.1.0/24; ...

    nginx-windows.rar

    5. 创建认证文件:如"password.conf",一般使用htpasswd工具生成htaccess文件格式的认证信息,然后在Nginx配置中引用。 6. 部署流媒体内容:将视频文件上传到Nginx指定的目录,并创建对应的M3U8索引文件。 7. 测试...

    LNMP环境相关配置Nginx1

    可以使用`htpasswd`命令创建一个密码文件,然后在Nginx的虚拟主机配置中引用这个文件,设定需要认证的目录。例如,通过以下配置: ```nginx location /protected { auth_basic "Restricted Area"; auth_basic_...

Global site tag (gtag.js) - Google Analytics