在Debian / Ubuntu上安装和配置Auth Shadow

在Debian / Ubuntu上安装和配置Auth Shadow

警告

这种安装和配置的方法对于我来说是有用的,使用apt和building的组合。 因此,可以存在更容易的方法。 一定要确保从apt使用安装的软件

apt-cache showpkg pkgname

版本和依赖关系。 像往常一样,你的里程可能会有所不同,你自己承担风险。

预先要求

您必须安装一个工作的apache或apache2,并了解重新启动服务器所涉及的概念,启用模块以及配置文件的位置和格式,例如httpd.conf或apache2.conf。

背景

Auth Shadow或mod-auth-shadow是一个用于启用/ etc / shadow认证的apache(和apache2,排序)的模块。 好处是任何具有密码的系统用户都可以通过web_dav,subversion或简单的https服务器进行身份验证。 唯一的另一种方法是使用PAM。 该方法是危险的,因为apache用户(我的情况下的www数据)必须能够读取/ etc / shadow 。 显然,不是一个好主意。 Auth Shadow通过使用一个名为validate的中间程序来安全地完成。 这是因为验证可以由root拥有,但可由大家执行。 如果您的服务器通过apache入侵,您的密码文件将无法读取。

安装

正式地,mod-auth-shadow只存在于apache,而不是apache2。 我不愿意接受这个。 我将使用apt for apache来演示在debian / ubuntu上的安装。 对于apache2,我不得不找到x86的模块的构建。 这提出了两个问题。 首先,最新版本尚未构建,其次,已经构建的版本(.rpm文件)在“验证”程序中包含导致uid错误的错误。

下载 - 仅限Apache2

从rpmfind.net - 下载下载您的体系结构的rpm。

从sourceforge下载最新的源代码(用于编译验证)。

安装模块

Apache:

sudo apt-get install libapache-mod-auth-shadow

Apache2:

为了从.rpm安装一个模块,您必须安装外部程序。

sudo apt-get install alien

从这里你可以安装rpm

sudo alien -i packagename.rpm

编译验证 - 仅Apache2

在包含mod-auth-shadow编译源的目录中

sudo make validate
sudo cp validate /usr/sbin

这必须以root身份完成,因为更改权限。

加载认证影子模块

Apache应该通过apt-get install自动处理。

Apache2需要我们

sudo a2enmod auth_shadow

配置Apache(2)

无论您的目录,位置或虚拟的配置
主机是,尝试修改以下配置以满足您的需要。
本例中只包括基本要求。

另外,不建议使用AuthType Basic
ssl,因为密码将以明文形式发送。

<Location /path/toauthenticate>
AuthType Basic
AuthShadow on
AuthName "Secure Login against User Passwords"
Require user system-username
#Require user valid-user
Order allow,deny
Allow from all
</Location>
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏