如何為nginx服務開啟基本認證(用戶名和密碼)


1、概述

我們有的時候,通過nginx開啟http服務,作為文件服務器,但是,默認的是沒有用戶名和密碼的認證的,出於安全的考慮,我們需要為我們的文件服務器開啟最基本的認證,也就是用戶名和密碼的認證。

OK,接下來的內容,就是介紹如何在nginx中開啟用戶名、密碼的認證方式,來保證基本的訪問安全。

2、配置過程

2.1、設置用戶名、密碼文件

  • 設置用戶名
echo -n 'admin:' >> /etc/nginx/.htpasswd

執行過程

[root@node142 ~]# echo -n 'admin:' >> /etc/nginx/.htpasswd
[root@node142 ~]# 
[root@node142 ~]# cat /etc/nginx/.htpasswd 
admin:[root@node142 ~]# 

  • 設置密碼
openssl passwd -apr1 >> /etc/nginx/.htpasswd

執行過程

[root@node142 ~]# openssl passwd -apr1 >> /etc/nginx/.htpasswd
Password: 
Verifying - Password: 
[root@node142 ~]# 

# 輸入2次相同的密碼

[root@node142 ~]# cat /etc/nginx/.htpasswd 
admin:$apr1$t48tHG.G$h20FRAI1fbrBXY3BD0Td90
[root@node142 ~]#

# 查看密碼文件,已經生成了加密的密碼

OK,至此,密碼文件配置完成

2.2、修改nginx的設置(增加認證設置)

  • 修改nginx.conf文件,增加如下的部分

vi /etc/nginx/nginx.conf

在server部分,增加如下的內容:

        auth_basic "Restricted Content";
        auth_basic_user_file /etc/nginx/.htpasswd;

增加之后的效果:

  • 重新啟動nginx服務

[root@node142 ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@node142 ~]# nginx -s reload
[root@node142 ~]# 

2.3、訪問驗證

  • 通過瀏覽器訪問nginx的路徑

訪問文件路徑的時候,提示輸入用戶名、密碼信息

  • 輸入用戶名、密碼

發現,可以查看其中的內容

OK,至此,關於nginx中設置基本的用戶名、密碼的認證方式就完成了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM