天天看點

LNMP—Nginx的使用者認證

使用者認證目的提高系統安全度,那麼什麼時候我們使用“使用者認證”呢?

進入管理中心:www.test.com/admin.php ,假如事前不小心把某個管理者的密碼弄的非常簡單,很不安全,不得不提高安全度,那麼我們就要在這個基礎上做一個安全認證,就要先輸入使用者名和密碼,才能進入“管理中心”,這樣能增加我們的安全性(回顧一下Apache的使用者認證怎麼做的)。

我們先進入“虛拟主機配置檔案”的目錄并列出包含檔案:

[root@LampLinux vhosts]# cd /usr/local/nginx/conf/vhosts/

[root@LampLinux vhosts]# ls

    default.conf  (預設虛拟主機)

    test.conf     (虛拟主機配置檔案)

打開“虛拟主機配置檔案”:

在 root /data/www;下方寫入

location ~ .*admin\.php$ {

        auth_basic "LampLinux auth";

        auth_basic_user_file /usr/local/nginx/conf/.htpasswd;

        include fastcgi_params;

        fastcgi_pass unix:/tmp/www.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME  /data/www$fastcgi_script_name;

    }

(PS:紅字|為新加入資訊,綠字|為複制原有配置檔案内下面“PHP解析”括号内的内容。)

配置好檔案後,我們增加使用者:

[root@LampLinux vhosts]# htpasswd -c /usr/local/nginx/conf/.htpasswd user1

說明一下:

Nginx是沒有htpasswd這個工具的,有兩種方法,對應兩種不同的情況:

我們可以把Apache的這個工具拿過來用,我們從LAMP中手動編譯過的Apache中的/usr/local/apache2/bin/htpasswd這個工具來使用;

如果是沒有安裝Apache的環境,我們可以yum install -y httpd 來使用這個指令。

另:如果需要增加使用者認證的使用者,我們在增加使用者的時候把“-c”去掉就行了;如下:

[root@LampLinux vhosts]# htpasswd  /usr/local/nginx/conf/.htpasswd user2

本文轉自 聽丶飛鳥說 51CTO部落格,原文連結:http://blog.51cto.com/286577399/1683784

繼續閱讀