Debian与Ubuntu下配置LDAP登录身份验证

前几天在两个使用Ubuntu Server 12.04的 VPS上搭建了LDAP环境。

Ubuntu使用LDAP身份验证,仅需从更新源安装libpam-ldap nscd这两个DEB包,

然后根据引导一步步填入信息,再修改下pam的配置文件即可使用。

不过昨天在给两个个使用Debian的虚拟专用服务器使用同样的方法安装并配置LDAP身份验证客户端时,就一直弄不好,总是无法通过验证,从/var/log/auth.log文件可以读取到类似的信息:

谷歌了下有关的资料,但并未找到有效的解决方案。昨天尝尽各种方法折腾了好久……

今天早上起来用search从更新源看了下与ldap有关的DEB包,看到一个libnss-ldap,想起数天前弄pam_mysql时,也要安装一个libnss-mysql,于是尝试安装了这个包。

同样,根据引导一步步填入信息,然后修改pam的配置文件。

再次使用LDAP中已添加的账户登录,成功通过验证。

 

为何有如此差异?

先来看看Ubuntu下安装libpam-ldap nscd这两个包时输出的信息:

再看看Debian下安装libpam-ldap与nscd时输出的信息:

可见,Ubuntu自动安装了数个额外的DEB包,其中包括了libnss-ldap,而Debian是作为建议的DEB包出现,并没有自动安装。相信很多人都和我一样,除非出现错误信息,否则使用apt-get或yum安装东西肯定不会仔细看这些,自然也不会留意到有建议安装的包……

再来看看Debian下安装libnss-ldap时输出的信息:

这就充分说明,在Debian下配置LDAP验证,libnss-ldap这个包是最关键。

 

最后就是配置文件。

Debian下PAM的LDAP验证客户端的配置文件有两个,分别是pam-ldap和libnss-ldap的,他们在以下路径:

密码则在以下两个文件中:

Ubuntu应该是libnss-ldap与pam-ldap共用配置文件,其路径为:

密码文件在此:

 

PPTP自动安装配置Shell Script For Ubuntu/Debian

呵呵,不解释……

使用方法:

执行后会自动列出你服务器的网卡的IP,挑一个外网的:

Server IP

这是添加连接的账号和密码的Shell Script:

添加账号,就执行:

输入账号密码即可……

Good luck……

给你的Debian上Dotdeb更新源,用上新版东西

最近使用Debian配置LAMNP环境时发现,使用apt-get install安装的东西版本都比较旧的,例如PHP能下载的最新版是5.3.10,我自己尝试着去debian源的网站看了下,发现nginx,apache,php,mysql都有新版的。于是用apt-cache 看了下,发现版本里面就只有5.3.10……

无奈之下,问了下“月姐”,最终使用dotdeb的源解决了问题……

方法很简单,root权限执行以下命令:

看到OK两个字,你就成功了,Upgrade吧:

另外,用国内的VPS的请注意,把packages.dotdeb.org换成其他服务器,个人推荐日本的吧,离我们最近了:

至于为什么要换,我不多说,自己打开dotdeb.org就知道……

当然,还有其他的服务器,自己挑:

  • Austria

  • Belgium

  • Bulgaria

  • Czech republic

  • Estonia

  • France

  • Germany

  • Japan

  • Netherlands

  • New Caledonia

  • Poland

  • Portugal

  • Romania

  • Slovakia

  • Sweden

  • United Kingdom