如何借助LinOTP為Apache2保駕護航?
譯文本文介紹了使用一次性密碼為Apache 2設置雙因子驗證的方法。我們假設,你已經(jīng)設置好了自己的LinOTP服務器。你可以下載Debian和Ubuntu程序包,也可以使用Python軟件包倉庫(Python Package Index)來安裝系統(tǒng)。它提供了一個便捷的方法,可以創(chuàng)建用于演示的服務,并讓服務運行起來(檢查確保是***版本)。
下載
一次性密碼(OTP)驗證使用Apache驗證提供程序來完成,用于Apache基本驗證。該提供程序可以從github網(wǎng)站下載(https://github.com/lsexperts/mod_authn_linotp)。
或者你可以直接在命令行下載該軟件包:
wget https://github.com/lsexperts/mod_authn_linotp/zipball/master -O mod_authn_linotp.zip
安裝
你在Ubuntu或Debian系統(tǒng)上至少需要下列軟件包,來編譯Apache模塊:
dpkg -i libtool automake autoconf build-essential libcurl4-gnutls-dev
現(xiàn)在,對該模塊解壓縮,進入目錄:
unzip mod_authn_linotp.zip
cd lsexperts-mod_authn_linotp-3583b90
安裝過程在文件INSTALL中也加以描述:
libtoolize
aclocal
automake --add-missing
autoconf
./configure
make
sudo make install
你還可以使用checkinstall,創(chuàng)建一個Debian軟件包,以便更容易處理軟件包。
sudo checkinstall make install
現(xiàn)在,該模塊位于/usr/lib/apache2/modules/mod_authn_linotp.so。
激活模塊
sudo a2enmod authn_linotp
#p# 配置Apache
現(xiàn)在,你可以為你的Apache目錄和位置使用雙因子驗證機制。你還可以更細致地查看文件README,了解所有的配置參數(shù)。
該模塊使用cookie來緩存成功的驗證信息。cookie經(jīng)過了加密,所以你需要創(chuàng)建密鑰:
pwgen 24 1
現(xiàn)在你可以保護任何Directory(目錄)或Location(位置)范圍,就像這樣:
AuthType basic
AuthName "LinOTP protected"
AuthBasicProvider LinOTP
Require valid-user
LinOTPValidateURL https://172.16.200.148/validate/simplecheck
LinOTPCookieSecret eenohJaen6CeexaH9yieTiel
LinOTPSSLCertVerify Off
LinOTPSSLHostVerify Off
使用LinOTPTimeout,你就可以定義cookie應該在幾秒內(nèi)有效;因而過了這個時間,就應該要求用戶再次輸入一個新的一次性密碼(OTP)。
請格外注意:在LinOTPValidateURL中使用localhost可能會導致curl錯誤,所以請使用正確的IP或FQDN(完全符合標準的域名)。
祝驗證過程順利!
原文鏈接: http://www.howtoforge.com/how-to-secure-apache2-with-linotp