pam模块日志怎么输出

本机login登陆日志可以直接使用printf输出到终端上,然后无论ssh登陆在登陆成功之前是无法将日志显示在终端上的,而直接fopen一个文件却返回失败,因此需要一种记录日志的机制。

1.说明

普通用户进程、Pam模块可以使用syslog记录日志。

  1. 普通用户进程默认输出到LOG_USER终端,可以通过调用openlog设置syslog对应的日志输出设备终端。
  2. pam模块对应的日志终端为LOG_AUTHPRIV,日志输出到/var/log/secure

2.日志调用

/*
* 日志查看 tail   -f   /var/log/message
*/

#include <syslog.h>

int main(int argc, char *argv[])
{
    //openlog("mmmmmmmyyyyyyyyyy", LOG_CONS|LOG_PID, LOG_USER); // 默认输出设备是LOG_USER, 不修改输出设备可以不调用openlog(),在调用syslog时自动调用 openlog(默认参数)
    syslog(LOG_ERR, "hhhhhhhh===%d", 998);
    //closelog(); 也可以不调用
}

 

2.日志配置

日志配置可以修改,也可以使用默认配置

cat /etc/rsyslog.conf有这样的默认配置

 

posted @ 2020-03-24 10:38  LiuYanYGZ  阅读(1588)  评论(0编辑  收藏  举报