• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Admin Alert: Getting Started with i/OS Security Auditing, Part 1

    September 15, 2010 Joe Hertvik

    Sometimes you need more information about what’s happening on your system. Who changed their password? Have any system values been changed recently? Who added an entry to the System Reply list? For company security and auditor information, sometimes you need to gather information about system events. That’s where i/OS security auditing comes in.

    Security Auditing in Two Paragraphs

    IBM i/OS security auditing allows you to collect information about system events that can affect system security and integrity. To implement auditing, a user configures his system and specifies what types of information he wants to collect. After turning auditing on, he can retrieve information on a number of critical i/OS functions including authorization failures, security configuration changes, program failures, save restore information, and object management information. He can also collect information for individual users or for individual objects.

    This week and next, I’ll look at how to configure security auditing on an i/OS V5R4Mx system. Today, I’ll look at how to set up the system. Next week, I’ll look at how to retrieve the data, giving you a broad overview of the entire process. Let’s get started.

    Configuring Your System for Auditing

    To get started with system security auditing, you need to perform the following steps. But don’t worry about creating these objects and turning on system settings just yet. In the next section, I’ll show you a command that will perform all these tasks and turn on security auditing with just one command.

    1. Determine if auditing is already active on your system. You can do this by running the Display Security Auditing (DSPSECAUD) command. This option can also be reached by entering Option 11 (Display Security Auditing) off the Security Tools menu. This will show all your current security auditing values on a display that looks something like this.

    If auditing is active, you can skip to step four to modify which values you are auditing for. If auditing isn’t active, continue to step two.

    2. Create an initial journal receiver to receive the auditing entries for the items that you want to monitor. To create a new receiver in the library of your choice, run the following Create Journal Receiver (CRTJRNRCV) command.

    CRTJRNRCV JRNRCV(lib/jrnrcvname) TEXT('Journal receiver for system audits')
    

    The next step is dependent on creating this journal receiver.

    3. If necessary, create the QAUDJRN journal object (type *JRN) in library QSYS. The system uses the QAUDJRN journal to capture and record the information that you are auditing for. It places that information into the journal receivers attached to the journal. This journal is not necessarily shipped with i/OS and if it isn’t present on your system, you can create it by using the following command.

    CRTJRN JRN(QSYS/QAUDJRN) JRNRCV(lib/jrnrcvname) MNGRCV(*SYSTEM) DLTRCV(*NO) 
    TEXT('Auditing Journal') AUT(*EXCLUDE)
    

    It’s critical that the journal’s name is QAUDJRN and that it resides in the QSYS library. System auditing cannot function if it doesn’t have that name and location. In this example, the journal receiver name equals the name of the receiver I created in step two. I set the Manage Receivers (MNGRCV) parameter to *SYSTEM, which tells the system to automatically create a new receiver and swap it in for the current receiver when the current receiver’s size becomes too large.

    Even though I set MNGRCV to *SYSTEM, I made a point to set the Delete Receivers (DLTRCV) parameter to *NO. This tells the system not to automatically delete old receivers after they have been detached from the QAUDJRN journal file. This is important because the journal receivers contain all the audit history for my system, and I don’t want to automatically lose that history because my journal receiver file gets swapped out. Keep in mind, however, that this obligates me to manually review and delete old journal receiver objects as needed. I can clean up my receivers by manually reviewing and deleting the old receiver objects every year or by setting up a custom-written program that automatically evaluates and deletes the old receivers for me, as necessary. It’s important to occasionally clean old auditing receivers as excessive receivers can take up a lot of system storage.

    4. Tell the system what actions you want to audit by configuring the Security Auditing Level (QAUDLVL) system value list and (if necessary) the Security Auditing Level Extension (QAUDLVL2) system value list. You can configure these system values by using the following work with system value command.

    WRKSYSVAL SYSVAL(QAUDLVL*)
    

    Start by configuring the list in the QAUDLVL system value. If there are too many values for QAUDLVL, place the overflow values in the QAUDLVL2 system value. The values tell i/OS auditing exactly what actions you want to audit for. The list of possible values you can add to the list and what they do include the following:

    • *AUTFAIL–Authorization failures including access failures, incorrect password, or user IDs entered from a device.
    • *CREATE, *DELETE–Object creations and deletions.
    • *OBJMGT–Generic object tasks including moving and renaming objects.
    • *PGMFAIL–Program failures.
    • *SAVRST–Save/restore information.
    • *SECCFG–Creating, changing, deleting, and restoring user profiles; program changes that run the program under the owner’s profile; and changes to system values, environment values, and network attributes.
    • *SECURITY–All security-related functions are audited.

    You can find descriptions of all possible security auditing values for QAUDLVL and QAUDLVL2 in the iSeries Information Center.

    5. After performing the other steps, you can now flip the switch to start security auditing. Do this by turning on the Auditing Control (QAUDCTL) system value. Although there are five values you can set QAUDCTL to, your best move is to set it to *AUDLVL, which tells i/OS to take its auditing parameters from the QAUDLVL and QAUDLVL2 system value lists you set up in step four. By default QAUDCTL is set to *NONE, which means system auditing is turned off. Provided you have performed the other three steps correctly, this will activate auditing on your system.

    These are the basic steps to start auditing on your system. However, IBM offers several other system values for setting up object auditing for specific users, including: the Change User Auditing (QCHGUSRAUD) system value, controlling what happens when the system cannot access the audit journal; and the Auditing End Action (QAUDENDACN) system value. You can read more about setting up additional values by going to the setting up security auditing page in the iSeries Information Center.

    The Easy Way To Start Auditing

    If you want to skip entering these four steps and configure security auditing with one command, you can use the Change Security Audit (CHGSECAUD) command for an even easier configuration on your system. For example, if I wanted to configure my system to log authorization failures, program failures, security configuration changes, and generic object management tasks, I could execute CHGSECAUD with the following parameters.

    CHGSECAUD QAUDCTL(*AUDLVL) QAUDLVL(*OBJMGT *SECCFG *AUTFAIL *PGMFAIL) 
    INLJRNRCV(LIB/JRNRCVNAME)
    

    In one fell swoop, CHGSECAUD will do the following:

    1. Create the journal receiver specified in the Initial Journal Receiver (INLJRNRCV) parameter.
    2. Check to see if the QAUDJRN journal exists in library QSYS. If it doesn’t exist, it will create it and attach your journal receiver to QAUDJRN.
    3. Change the QAUDLVL system value and if necessary, the QAUDLVL2 system value to contain the list of audit actions shown in the Auditing values (QAUDLVL) parameter.
    4. Turn on system auditing by changing the QAUDCTL system value to *AUDLVL, which will point to the QAUDLVL and QAUDLVL2 system values for the audit actions to report.

    You can also use CHGSECAUD to check your current values and change them, if necessary. When the command comes up, it also displays your current values.

    And that’s it. One command configures object and user auditing on your system. To implement, make sure you read the above section to understand what you’re turning and then use CHGSECAUD to turn it on.

    Okay, It’s On, Now What?

    This week, we covered configuring security auditing on your system. In part two of this article next week, I’ll show you how to use the auditing journal entries to determine when questionable actions are taking place on your system.

    RELATED STORY

    iSeries Security Journal Receiver Management, Part 1



                         Post this story to del.icio.us
                   Post this story to Digg
        Post this story to Slashdot

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Tags:

    Sponsored by
    Raz-Lee Security

    Start your Road to Zero Trust!

    Firewall Network security, controlling Exit Points, Open DB’s and SSH. Rule Wizards and graphical BI.

    Request Demo

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Sponsored Links

    iSeries DevCon2010:  Get 3 days of IBM i training and 365 DAYS OF VALUE, Nov 15-17, Las Vegas
    looksoftware:  RPG OA & Beyond Webinar. Sept 28 & 29. Enter to win an Amazon Kindle™
    COMMON:  Join us at the Fall 2010 Conference & Expo, Oct. 4 - 6, in San Antonio, Texas

    IT Jungle Store Top Book Picks

    Easy Steps to Internet Programming for AS/400, iSeries, and System i: List Price, $49.95
    The iSeries Express Web Implementer's Guide: List Price, $49.95
    The System i RPG & RPG IV Tutorial and Lab Exercises: List Price, $59.95
    The System i Pocket RPG & RPG IV Guide: List Price, $69.95
    The iSeries Pocket Database Guide: List Price, $59.00
    The iSeries Pocket SQL Guide: List Price, $59.00
    The iSeries Pocket Query Guide: List Price, $49.00
    The iSeries Pocket WebFacing Primer: List Price, $39.00
    Migrating to WebSphere Express for iSeries: List Price, $49.00
    Getting Started With WebSphere Development Studio Client for iSeries: List Price, $89.00
    Getting Started with WebSphere Express for iSeries: List Price, $49.00
    Can the AS/400 Survive IBM?: List Price, $49.00
    Chip Wars: List Price, $29.95

    m-Power Gets ‘What If’ Analysis The More Things Change

    Leave a Reply Cancel reply

Volume 10, Number 27 -- September 15, 2010
THIS ISSUE SPONSORED BY:

WorksRight Software
Profound Logic Software
inFORM Decisions

Table of Contents

  • Get Thee to the Web, Part 2
  • Basing Pointer Variables in RPG: The Basics
  • Admin Alert: Getting Started with i/OS Security Auditing, Part 1

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • Public Preview For Watson Code Assistant for i Available Soon
  • COMMON Youth Movement Continues at POWERUp 2025
  • IBM Preserves Memory Investments Across Power10 And Power11
  • Eradani Uses AI For New EDI And API Service
  • Picking Apart IBM’s $150 Billion In US Manufacturing And R&D
  • FAX/400 And CICS For i Are Dead. What Will IBM Kill Next?
  • Fresche Overhauls X-Analysis With Web UI, AI Smarts
  • Is It Time To Add The Rust Programming Language To IBM i?
  • Is IBM Going To Raise Prices On Power10 Expert Care?
  • IBM i PTF Guide, Volume 27, Number 20

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle