.\" Title: pam_abl .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets v1.74.0 .\" Date: 01/13/2010 .\" Manual: User Commands .\" Source: GNU .\" Language: English .\" .TH "PAM_ABL" "1" "01/13/2010" "GNU" "User Commands" .\" ----------------------------------------------------------------- .\" * (re)Define some macros .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" toupper - uppercase a string (locale-aware) .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de toupper .tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ \\$* .tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz .. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" SH-xref - format a cross-reference to an SH section .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de SH-xref .ie n \{\ .\} .toupper \\$* .el \{\ \\$* .\} .. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" SH - level-one heading that works better for non-TTY output .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de1 SH .\" put an extra blank line of space above the head in non-TTY output .if t \{\ .sp 1 .\} .sp \\n[PD]u .nr an-level 1 .set-an-margin .nr an-prevailing-indent \\n[IN] .fi .in \\n[an-margin]u .ti 0 .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .\" make the size of the head bigger .ps +3 .ft B .ne (2v + 1u) .ie n \{\ .\" if n (TTY output), use uppercase .toupper \\$* .\} .el \{\ .nr an-break-flag 0 .\" if not n (not TTY), use normal case (not uppercase) \\$1 .in \\n[an-margin]u .ti 0 .\" if not n (not TTY), put a border/line under subheading .sp -.6 \l'\n(.lu' .\} .. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" SS - level-two heading that works better for non-TTY output .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de1 SS .sp \\n[PD]u .nr an-level 1 .set-an-margin .nr an-prevailing-indent \\n[IN] .fi .in \\n[IN]u .ti \\n[SN]u .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .ps \\n[PS-SS]u .\" make the size of the head bigger .ps +2 .ft B .ne (2v + 1u) .if \\n[.$] \&\\$* .. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" BB/BE - put background/screen (filled box) around block of text .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de BB .if t \{\ .sp -.5 .br .in +2n .ll -2n .gcolor red .di BX .\} .. .de EB .if t \{\ .if "\\$2"adjust-for-leading-newline" \{\ .sp -1 .\} .br .di .in .ll .gcolor .nr BW \\n(.lu-\\n(.i .nr BH \\n(dn+.5v .ne \\n(BHu+.5v .ie "\\$2"adjust-for-leading-newline" \{\ \M[\\$1]\h'1n'\v'+.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[] .\} .el \{\ \M[\\$1]\h'1n'\v'-.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[] .\} .in 0 .sp -.5v .nf .BX .in .sp .5v .fi .\} .. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" BM/EM - put colored marker in margin next to block of text .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .de BM .if t \{\ .br .ll -2n .gcolor red .di BX .\} .. .de EM .if t \{\ .br .di .ll .gcolor .nr BH \\n(dn .ne \\n(BHu \M[\\$1]\D'P -.75n 0 0 \\n(BHu -(\\n[.i]u - \\n(INu - .75n) 0 0 -\\n(BHu'\M[] .in 0 .nf .BX .in .fi .\} .. .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "Name" pam_abl \- query or purge the databases used by the pam_abl module\&. .SH "Synopsis" .sp pam_abl [OPTION] [CONFIG] .SH "DESCRIPTION" .sp Provides a non\-pam interface to the infomration stored in the pam_abl module databases\&. CONFIG is the name of the pam_abl config file (default: /etc/security/pam_abl\&.conf)\&. The config file is read to discover the names of the pam_abl databases, the rules that control purging of old data from them and commands to run when a user or host switches state\&. .SH "OPTIONS" .SS "MAINTENANCE" .PP \fB\-h, \-\-help\fR .RS 4 See this message\&. .RE .PP \fB\-p, \-\-purge\fR .RS 4 Purge databases according to purge rules in config\&. .RE .PP \fB\-r, \-\-relative\fR .RS 4 Display times relative to now\&. .RE .PP \fB\-v, \-\-verbose\fR .RS 4 Verbose output\&. .RE .SS "NON\-PAM INTERACTION" .PP \fB\-f, \-\-fail\fR .RS 4 Fail user or host\&. .RE .PP \fB\-w, \-\-whitelist\fR .RS 4 Perform whitelisting (remove from blacklist, does not provide immunity)\&. .RE .PP \fB\-c, \-\-check\fR .RS 4 Check status\&. Returns non\-zero if currently blocked Prints \fIname: status\fR if verboseness is specified\&. If more than one host or user is given, checks only the first host/user pair\&. .RE .PP \fB\-s, \-\-service\fR .RS 4 Operate in context of specified service\&. Defaults to \fInone\fR\&. .RE .PP \fB\-U, \-\-user\fR .RS 4 Operate on user (wildcards are ok for whitelisting)\&. .RE .PP \fB\-H, \-\-host\fR .RS 4 Operate on host (wildcards are ok for whitelisting)\&. .RE .sp If you specified commands to run in your configuration, those commands will try to run if the host or user switches state (blocked <→ clear) since the last time it was checked\&. The command will only be able to run, however, if you supply enough information to fill in the substitutions in the command\&. For instance, if your host_clr_command uses the %s parameter, you will need to specify the service with \-s in order for the command to actually run\&. .SH "EXAMPLES" .sp Obtain a list of failed hosts and users: .sp $ pam_abl .sp Obtain a full list of failures listing times relative to now: .sp $ pam_abl \-rv $ pam_abl \-\-relative \-\-verbose .sp Purge old data: .sp $ pam_abl \-p $ pam_abl \-\-purge .sp Unblock all example\&.com, somewhere\&.com hosts: .sp $ pam_abl \-w \-H *\&.example\&.com \-H \e*\&.somewhere\&.com .sp Fail the host badguy\&.com and the user joe: .sp $ pam_abl \-f \-H badguy\&.com \-U joe .sp Check whether joe is currently allowed to use your neato service from somehost, running the necessary commands if he switches state: .sp $ pam_abl \-c \-U joe \-H somehost \-s neato .SH "AUTHORS" .sp Andy Armstrong .sp Chris Tasma .SH "REPORTING BUGS" .sp Report bugs to .SH "SEE ALSO" .sp pam_abl\&.conf(5), pam_abl(8)