pam_mysql编译安装(Ubuntu10.10)

下载pam_mysql-0.7RC1.tar.gz

pam_mysql依赖的库文件

libmysqlclient-dev
libpam0g-dev

apt - get  install libmysqlclient - dev 
apt
- get  install libpam0g - dev

 安装libmysqlclient-dev时会自动安装
 zlib1g-dev

./configure(网上有人这样配置参数的./configure --with-openssl=openssl路径 --with-mysql=mysql路径)

make

make install

安装好后会在/usr/lib/security/目录下生成文件pam_mysql.la和pam_mysql.so,pam_mysql.so正是我们要的。

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/xewnwsl2001/archive/2010/12/16/1908118.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个使用 pam_chauthtok(localAuthHandle, PAM_SILENT) 函数检查密码过期的示例: ```c #include <security/pam_appl.h> #include <security/pam_misc.h> int main(int argc, char *argv[]) { pam_handle_t *pamh=NULL; int retval; const char *user="nobody"; if(argc == 2) { user = argv[1]; } if(argc > 2) { fprintf(stderr, "Usage: check_user [username]\n"); exit(1); } retval = pam_start("check_user", user, &conv, &pamh); if (retval == PAM_SUCCESS) { retval = pam_chauthtok(pamh, PAM_SILENT); } if (retval == PAM_SUCCESS) { printf("Password change successful!\n"); } else { printf("Password change failed!\n"); } if (pam_end(pamh,retval) != PAM_SUCCESS) { pamh = NULL; fprintf(stderr, "check_user: failed to release authenticator\n"); exit(1); } return retval == PAM_SUCCESS ? 0:1; } ``` 在这个示例程序中,我们同样使用 pam_start() 函数来初始化 PAM 系统并启动认证流程。然后,我们调用 pam_chauthtok() 函数来检查密码是否过期,并在需要时强制用户更改密码。不同的是,我们使用 PAM_SILENT 选项来指定这个过程是静默的,不需要提示用户输入密码。 最后,我们同样使用 pam_end() 函数来结束 PAM 会话并释放资源。 需要注意的是,使用 PAM_SILENT 选项静默地检查密码过期可能会降低安全性。因为用户没有机会确认他们的密码是否过期,也没有机会输入一个强密码来替换过期的密码。因此,在生产系统中,我们需要谨慎使用 PAM_SILENT 选项,并确保用户密码的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值