如何使用LinOTP来保护Apache2
此Howto描述了使用Apache2的一次性密码设置双因素身份验证的方法。 我们假设您已经设置了您的LinOTP服务器。 您可以下载Debian和Ubuntu软件包 ,也可以使用Python Package Index安装系统。 它提供了一个很好的快速启动,以获得服务并运行演示目的(检查最新版本)。
下载
使用Apache认证提供程序对Apache基本身份验证进行OTP身份验证。 这个提供者可以在github下载 。
或者您可以直接在命令行下载软件包:
wget https://github.com/lsexperts/mod_authn_linotp/zipball/master -O mod_authn_linotp.zip
安装
您至少需要Ubuntu或Debian系统上的以下软件包来编译Apache模块:
dpkg -i libtool automake autoconf build-essential libcurl4-gnutls-dev
现在解压缩模块并输入目录:
unzip mod_authn_linotp.zip
cd lsexperts-mod_authn_linotp-3583b90
安装过程也在文件INSTALL中描述
:
libtoolize
aclocal
automake --add-missing
autoconf
./configure
make
sudo make install
您还可以使用checkinstall
创建一个debian软件包,以便更容易的软件包处理。
sudo checkinstall make install
现在该模块位于/usr/lib/apache2/modules/mod_authn_linotp.so
。
激活模块
sudo a2enmod authn_linotp
配置Apache
现在,您可以对Apache目录和位置使用双因素身份验证。 您还可以仔细查看所有配置参数的README文件。
该模块使用Cookie缓存成功的身份验证。 Cookie已加密,因此您需要创建一个秘密:
pwgen 24 1
现在您可以保护任何目录
或位置
范围,如下所示:
<Directory /> AuthType basic AuthName "LinOTP protected" AuthBasicProvider LinOTP Require valid-user LinOTPValidateURL https://172.16.200.148/validate/simplecheck LinOTPCookieSecret eenohJaen6CeexaH9yieTiel LinOTPSSLCertVerify Off LinOTPSSLHostVerify Off </Directory>
使用LinOTPTimeout,您可以定义Cookie应该有效的秒数,因此在此之后,应再次向用户询问新的OTP。
请注意:使用localhost在您的LinOTPValidateURL可能会导致Curl错误,所以请使用正确的IP或FQDN。
快乐认证!