| What's new in Sudo 1.7.4? | |
| * Sudoedit will now preserve the file extension in the name of the | |
| temporary file being edited. The extension is used by some | |
| editors (such as emacs) to choose the editing mode. | |
| * Time stamp files have moved from /var/run/sudo to either /var/db/sudo, | |
| /var/lib/sudo or /var/adm/sudo. The directories are checked for | |
| existence in that order. This prevents users from receiving the | |
| sudo lecture every time the system reboots. Time stamp files older | |
| than the boot time are ignored on systems where it is possible to | |
| determine this. | |
| * The tty_tickets sudoers option is now enabled by default. | |
| * Ancillary documentation (README files, LICENSE, etc) is now installed | |
| in a sudo documentation directory. | |
| * Sudo now recognizes "tls_cacert" as an alias for "tls_cacertfile" | |
| in ldap.conf. | |
| * Defaults settings that are tied to a user, host or command may | |
| now include the negation operator. For example: | |
| Defaults:!millert lecture | |
| will match any user but millert. | |
| * The default PATH environment variable, used when no PATH variable | |
| exists, now includes /usr/sbin and /sbin. | |
| * Sudo now uses polypkg (http://rc.quest.com/topics/polypkg/) | |
| for cross-platform packing. | |
| * On Linux, sudo will now restore the nproc resource limit before | |
| executing a command, unless the limit appears to have been modified | |
| by pam_limits. This avoids a problem with bash scripts that open | |
| more than 32 descriptors on SuSE Linux, where sysconf(_SC_CHILD_MAX) | |
| will return -1 when RLIMIT_NPROC is set to RLIMIT_UNLIMITED (-1). | |
| * The HOME and MAIL environment variables are now reset based on the | |
| target user's password database entry when the env_reset sudoers option | |
| is enabled (which is the case in the default configuration). Users | |
| wishing to preserve the original values should use a sudoers entry like: | |
| Defaults env_keep += HOME | |
| to preserve the old value of HOME and | |
| Defaults env_keep += MAIL | |
| to preserve the old value of MAIL. | |
| * Fixed a problem in the restoration of the AIX authdb registry setting. | |
| * Sudo will now fork(2) and wait until the command has completed before | |
| calling pam_close_session(). | |
| * The default syslog facility is now "authpriv" if the operating system | |
| supports it, else "auth". | |
| What's new in Sudo 1.7.3? | |
| * Support for logging I/O for the command being run. | |
| For more information, see the documentation for the "log_input" | |
| and "log_output" Defaults options in the sudoers manual. Also | |
| see the sudoreplay manual for how to replay I/O log sessions. | |
| * The use_pty sudoers option can be used to force a command to be | |
| run in a pseudo-pty, even when I/O logging is not enabled. | |
| * On some systems, sudo can now detect when a user has logged out | |
| and back in again when tty-based time stamps are in use. Supported | |
| systems include Solaris systems with the devices file system, | |
| Mac OS X, and Linux systems with the devpts filesystem (pseudo-ttys | |
| only). | |
| * On AIX systems, the registry setting in /etc/security/user is | |
| now taken into account when looking up users and groups. Sudo | |
| now applies the correct the user and group ids when running a | |
| command as a user whose account details come from a different | |
| source (e.g. LDAP or DCE vs. local files). | |
| * Support for multiple 'sudoers_base' and 'uri' entries in ldap.conf. | |
| When multiple entries are listed, sudo will try each one in the | |
| order in which they are specified. | |
| * Sudo's SELinux support should now function correctly when running | |
| commands as a non-root user and when one of stdin, stdout or stderr | |
| is not a terminal. | |
| * Sudo will now use the Linux audit system with configure with | |
| the --with-linux-audit flag. | |
| * Sudo now uses mbr_check_membership() on systems that support it | |
| to determine group membership. Currently, only Darwin (Mac OS X) | |
| supports this. | |
| * When the tty_tickets sudoers option is enabled but there is no | |
| terminal device, sudo will no longer use or create a tty-based | |
| ticket file. Previously, sudo would use a tty name of "unknown". | |
| As a consequence, if a user has no terminal device, sudo will | |
| now always prompt for a password. | |
| * The passwd_timeout and timestamp_timeout options may now be | |
| specified as floating point numbers for more granular timeout | |
| values. | |
| * Negating the fqdn option in sudoers now works correctly when sudo | |
| is configured with the --with-fqdn option. In previous versions | |
| of sudo the fqdn was set before sudoers was parsed. | |
| What's new in Sudo 1.7.2? | |
| * A new #includedir directive is available in sudoers. This can be | |
| used to implement an /etc/sudo.d directory. Files in an includedir | |
| are not edited by visudo unless they contain a syntax error. | |
| * The -g option did not work properly when only setting the group | |
| (and not the user). Also, in -l mode the wrong user was displayed | |
| for sudoers entries where only the group was allowed to be set. | |
| * Fixed a problem with the alias checking in visudo which | |
| could prevent visudo from exiting. | |
| * Sudo will now correctly parse the shell-style /etc/environment | |
| file format used by pam_env on Linux. | |
| * When doing password and group database lookups, sudo will only | |
| cache an entry by name or by id, depending on how the entry was | |
| looked up. Previously, sudo would cache by both name and id | |
| from a single lookup, but this breaks sites that have multiple | |
| password or group database names that map to the same uid or | |
| gid. | |
| * User and group names in sudoers may now be enclosed in double | |
| quotes to avoid having to escape special characters. | |
| * BSM audit fixes when changing to a non-root uid. | |
| * Experimental non-Unix group support. Currently only works with | |
| Quest Authorization Services and allows Active Directory groups | |
| fixes for Minix-3. | |
| * For Netscape/Mozilla-derived LDAP SDKs the certificate and key | |
| paths may be specified as a directory or a file. However, version | |
| 5.0 of the SDK only appears to support using a directory (despite | |
| documentation to the contrary). If SSL client initialization | |
| fails and the certificate or key paths look like they could be | |
| default file name, strip off the last path element and try again. | |
| * A setenv() compatibility fix for Linux systems, where a NULL | |
| value is treated the same as an empty string and the variable | |
| name is checked against the NULL pointer. | |
| What's new in Sudo 1.7.1? | |
| * A new Defaults option "pwfeedback" will cause sudo to provide visual | |
| feedback when the user is entering a password. | |
| * A new Defaults option "fast_glob" will cause sudo to use the fnmatch() | |
| function for file name globbing instead of glob(). When this option | |
| is enabled, sudo will not check the file system when expanding wildcards. | |
| This is faster but a side effect is that relative paths with wildcard | |
| will no longer work. | |
| * New BSM audit support for systems that support it such as FreeBSD | |
| and Mac OS X. | |
| * The file name specified with the #include directive may now include | |
| a %h escape which is expanded to the short form of hostname. | |
| * The -k flag may now be specified along with a command, causing the | |
| user's timestamp file to be ignored. | |
| * New support for Tivoli-based LDAP START_TLS, present in AIX. | |
| * New support for /etc/netsvc.conf on AIX. | |
| * The unused alias checks in visudo now handle the case of an alias | |
| referring to another alias. | |
| What's new in Sudo 1.7.0? | |
| * Rewritten parser that converts sudoers into a set of data structures. | |
| This eliminates a number of ordering issues and makes it possible to | |
| apply sudoers Defaults entries before searching for the command. | |
| It also adds support for per-command Defaults specifications. | |
| * Sudoers now supports a #include facility to allow the inclusion of other | |
| sudoers-format files. | |
| * Sudo's -l (list) flag has been enhanced: | |
| o applicable Defaults options are now listed | |
| o a command argument can be specified for testing whether a user | |
| may run a specific command. | |
| o a new -U flag can be used in conjunction with "sudo -l" to allow | |
| root (or a user with "sudo ALL") list another user's privileges. | |
| * A new -g flag has been added to allow the user to specify a | |
| primary group to run the command as. The sudoers syntax has been | |
| extended to include a group section in the Runas specification. | |
| * A uid may now be used anywhere a username is valid. | |
| * The "secure_path" run-time Defaults option has been restored. | |
| * Password and group data is now cached for fast lookups. | |
| * The file descriptor at which sudo starts closing all open files is now | |
| configurable via sudoers and, optionally, the command line. | |
| * Visudo will now warn about aliases that are defined but not used. | |
| * The -i and -s command line flags now take an optional command | |
| to be run via the shell. Previously, the argument was passed | |
| to the shell as a script to run. | |
| * Improved LDAP support. SASL authentication may now be used in | |
| conjunction when connecting to an LDAP server. The krb5_ccname | |
| parameter in ldap.conf may be used to enable Kerberos. | |
| * Support for /etc/nsswitch.conf. LDAP users may now use nsswitch.conf | |
| to specify the sudoers order. E.g.: | |
| sudoers: ldap files | |
| to check LDAP, then /etc/sudoers. The default is "files", even | |
| when LDAP support is compiled in. This differs from sudo 1.6 | |
| where LDAP was always consulted first. | |
| * Support for /etc/environment on AIX and Linux. If sudo is run | |
| with the -i flag, the contents of /etc/environment are used to | |
| populate the new environment that is passed to the command being | |
| run. | |
| * If no terminal is available or if the new -A flag is specified, | |
| sudo will use a helper program to read the password if one is | |
| configured. Typically, this is a graphical password prompter | |
| such as ssh-askpass. | |
| * A new Defaults option, "mailfrom" that sets the value of the | |
| "From:" field in the warning/error mail. If unspecified, the | |
| login name of the invoking user is used. | |
| * A new Defaults option, "env_file" that refers to a file containing | |
| environment variables to be set in the command being run. | |
| * A new flag, -n, may be used to indicate that sudo should not | |
| prompt the user for a password and, instead, exit with an error | |
| if authentication is required. | |
| * If sudo needs to prompt for a password and it is unable to disable | |
| echo (and no askpass program is defined), it will refuse to run | |
| unless the "visiblepw" Defaults option has been specified. | |
| * Prior to version 1.7.0, hitting enter/return at the Password: prompt | |
| would exit sudo. In sudo 1.7.0 and beyond, this is treated as | |
| an empty password. To exit sudo, the user must press ^C or ^D | |
| at the prompt. | |
| * visudo will now check the sudoers file owner and mode in -c (check) | |
| mode when the -s (strict) flag is specified. | |
| * A new Defaults option "umask_override" will cause sudo to set the | |
| umask specified in sudoers even if it is more permissive than the | |
| invoking user's umask. |