PAM_SECURETTY(8)

  .SH "NAME" pam_securetty - Limit root login to special devices
  .SH "SYNOPSIS"
    .HP u
      pam_securetty.so
       [debug]

  .SH "DESCRIPTION"

    .PP pam_securetty is a PAM module that allows root logins only if the user is logging in on a "secure" tty, as defined by the listing in the securetty file. pam_securetty checks at first, if /etc/securetty exists. If not and it was built with vendordir support, it will use /usr/share/pam/securetty. pam_securetty also checks that the securetty files are plain files and not world writable. It will also allow root logins on the tty specified with console= switch on the kernel command line and on ttys from the /sys/class/tty/console/active.
    .PP This module has no effect on non-root users and requires that the application fills in the PAM_TTY item correctly.
    .PP For canonical usage, should be listed as a required authentication method before any sufficient authentication methods.

  .SH "OPTIONS"

      .PP debug

              Print debug information.

          .RE
          .PP noconsole

                  Do not automatically allow root logins on the kernel console device, as specified on the kernel command line or by the sys file, if it is not also specified in the securetty file.

              .RE

          .SH "MODULE TYPES PROVIDED"

            .PP Only the auth module type is provided.

          .SH "RETURN VALUES"

              .PP PAM_SUCCESS

                      The user is allowed to continue authentication. Either the user is not root, or the root user is trying to log in on an acceptable device.

                  .RE
                  .PP PAM_AUTH_ERR

                          Authentication is rejected. Either root is attempting to log in via an unacceptable device, or the securetty file is world writable or not a normal file.

                      .RE
                      .PP PAM_BUF_ERR

                              Memory buffer error.

                          .RE
                          .PP PAM_CONV_ERR

                                  The conversation method supplied by the application failed to obtain the username.

                              .RE
                              .PP PAM_INCOMPLETE

                                      The conversation method supplied by the application returned PAM_CONV_AGAIN.

                                  .RE
                                  .PP PAM_SERVICE_ERR

                                          An error occurred while the module was determining the user's name or tty, or the module could not open the securetty file.

                                      .RE
                                      .PP PAM_USER_UNKNOWN

                                              The module could not find the user name in the /etc/passwd file to verify whether the user had a UID of 0. Therefore, the results of running this module are ignored.

                                          .RE

                                      .SH "EXAMPLES"

                                        .PP
                                        auth  required  pam_securetty.so
                                        auth  required  pam_unix.so

                                      .SH "SEE ALSO"

                                        .PP securetty(5), pam.conf(5), pam.d(5), pam(8)

                                      .SH "AUTHOR"

                                          .PP pam_securetty was written by Elliot Lee <sopwith@cuc.edu>.