Poster of Linux kernelThe best gift for a Linux geek
LOGIN_DUO

LOGIN_DUO

Section: Maintenance Commands (8)
Local index Up

BSD mandoc
 

NAME

login_duo - second-factor authentication via Duo login service  

SYNOPSIS

login_duo [-c file ] [-h host ] [-f user ] [command [args... ] ]  

DESCRIPTION

provides secondary authentication via the Duo authentication service, executing the user's login shell or command only if successful.

The following options are available:

-c
Specify an alternate configuration file to load.
-h
Specify the IP address from which the user is authenticating.
-f
Specify an alternate Duo user to authenticate as.

If is installed setuid root (the default), these options are only available to the super-user.

After successful Duo authentication, the user's login shell is invoked, or if an alternate command or SSH_ORIGINAL_COMMAND environment variable is specified, it will be executed via the user's shell with a -c option.  

CONFIGURATION

The INI-format configuration file must have a ``duo '' section with the following options:

ikey
Duo integration key (required).
skey
Duo secret key (required).
group
Skip Duo authentication for users not in a specific Unix group.
minuid
Skip Duo authentication for users below a specified user ID.
failmode
On service or configuration errors that prevent Duo authentication, fail ``safe '' (allow access) or ``secure '' (deny access). Default is ``safe ''
host
Override default Duo API host.

An example configuration file:

[duo]
ikey=SI9F...53RI
skey=4MjR...Q2NmRiM2Q1Y
minuid=500

If installed setuid root (the default), performs Duo authentication as a dedicated privilege separation user, requiring that the configuration file be owned and readable only by this user.  

EXAMPLES

can be enabled system-wide by specifying its full path as a ForceCommand in sshd_config5 to capture any SSH remote login (including subsystems, remote commands, and interactive login):
ForceCommand /usr/local/sbin/login_duo

Similarly, a group of administrators could require two-factor authentication for login to a shared root account by specifying as the forced command for each public key in ~root/.ssh/authorized_keys

command="/usr/local/sbin/login_duo -f alice"
ssh-rsa AAAAB2...19Q== alice@example.net
command="/usr/local/sbin/login_duo -f bob"
ssh-dss AAAAC3...51R== bob@example.net

A user without root access could configure their own account to require Duo authentication via the same ~/.ssh/authorized_keys forced command mechanism and a user-installed (non-setuid) .  

FILES

/etc/duo/login_duo.conf
Default configuration file path

 

AUTHORS

was written by An Duo Security Aq duo_unix@duosecurity.com  

NOTES

When used to protect remote SSH access, only interactive sessions support interactive Duo login. For scp(1), sftp(1), rsync(1), and other ssh(1) remote commands, automatically tries the user's default out-of-band factor (smartphone push or voice callback) and disables real-time login progress reporting to provide a clean shell environment.


 

Index

NAME
SYNOPSIS
DESCRIPTION
CONFIGURATION
EXAMPLES
FILES
AUTHORS
NOTES

This document was created by man2html, using the manual pages.
Time: 08:00:55 GMT, June 15, 2011