IdP433: 配置日志功能(第6/11步)

        学校IdP日志是CARSI联盟的基础运行数据之一,在帮助学校了解本单位CARSI服务运行情况的同时,为联盟的运维、监测和后续发展决策提供了第一手资料,也是IdP上线时需要检查的功能之一。学校管理员可通过CARSI会员自服务系统https://mgmt.carsi.edu.cn 查看本单位IdP服务统计数据、监测服务运行状态、了解本校师生的SP访问情况。

1.IdP日志分类

IdP日志安装在logs目录下,默认路径/opt/shibboleth-idp/logs,主要有四个日志文件:

  • idp-process.log:记录了IdP启动及运行过程所有的日志,如遇到idp运行故障,查看此日志文件来排查
  • idp-warn.log:记录了IdP启动及运行过程中日志级别为warn的日志
  • idp-consent-audit.log:当配置用户隐私保护后,会记录用户隐私保护内容的日志
  • idp-audit.log:审计日志,记录用户访问某个sp的日志,从IdP4.3.1版本开始日志中仅存储用户加密uid。不加密uid由学校idp本地留存,不上传北京大学服务器。
    (注:IdP4.3.x日志中uid加密后,在mgmt中,在按用户统计中将会显示用户加密后的UID,如果学校想在mgmt中显示正常的学工号,可以通过修改audit.xml文档中中%UID为%u,如下。)

     <util:map id="shibboleth.AuditFormattingMap">
            <entry key="Shibboleth-Audit" value="%T|%b|%I|%SP|%P|%IDP|%bb|%III|%u|%ac|%attr|%n|%i|%a|%s|%PAIRWISEID|%AFFILIATION|" />
     </util:map>

        注意:根据《网络安全法》要求,IdP至少保留180天的日志记录,目前默认为180天,如需要更改,请将/opt/shibboleth-idp/conf/logback.xml中的idp.loghistory:-180修改成其他数字,如idp.loghistory:-360,保留360天的日志。

2.IdP日志分析配置

两种方案,任选其一即可。        

方案一:

        日志生成脚本已经由安装脚本提前下载好并放在相应的目录下,只需要添加定时任务,每个小时生成日志文件即可。

#添加定时任务,执行sudo crontab -e 并增加以下作业任务。
[carsi@www ~]$ sudo crontab -e
0 */1 * * * sh /opt/shibboleth-idp/bin/auditlog.sh >/dev/null 2>&1

方案二:

       使用root账号登录,拷贝日志生成脚本到 /etc/cron.hourly目录下,同时修改脚本的执行权限。

[root@www ~]# cp /opt/shibboleth-idp/bin/auditlog.sh /etc/cron.hourly/
[root@www ~]# chmod 755 /etc/cron.hourly/auditlog.sh 


3.nginx日志保留时间配置

       nginx日志默认保留180天,nginx日志所在位置/var/log/nginx/,主要包括2个日志文件

  • access.log:nginx访问日志
  • error.log:nginx错误信息记录日志

       修改nginx日志保留时间操作如下,daily表示日志每天记录一个,rotate 180,表示保留最近180天的日志。

[carsi@www ~]$ sudo vi /etc/logrotate.d/nginx
/var/log/nginx/*log {
    create 0664 nginx root
    daily
    rotate 180
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        /bin/kill -USR1 `cat /run/nginx.pid 2>/dev/null` 2>/dev/null || true
    endscript
}

注意:如果学校已经采购日志采集设备,建议将CARSI日志集中存储。

版权所有©北京大学计算中心