diff options
author | djm@openbsd.org <djm@openbsd.org> | 2023-01-06 03:47:18 +0100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2023-01-06 06:23:16 +0100 |
commit | 2d1ff2b9431393ad99ef496d5e3b9dd0d4f5ac8c (patch) | |
tree | 3f244d571a85c08ae82b00c079af13b12e49e462 /sshd_config.5 | |
parent | upstream: Add channel_set_xtype() (diff) | |
download | openssh-2d1ff2b9431393ad99ef496d5e3b9dd0d4f5ac8c.tar.xz openssh-2d1ff2b9431393ad99ef496d5e3b9dd0d4f5ac8c.zip |
upstream: Implement channel inactivity timeouts
This adds a sshd_config ChannelTimeouts directive that allows channels that
have not seen traffic in a configurable interval to be automatically closed.
Different timeouts may be applied to session, X11, agent and TCP forwarding
channels.
Note: this only affects channels over an opened SSH connection and not
the connection itself. Most clients close the connection when their channels
go away, with a notable exception being ssh(1) in multiplexing mode.
ok markus dtucker
OpenBSD-Commit-ID: ae8bba3ed9d9f95ff2e2dc8dcadfa36b48e6c0b8
Diffstat (limited to 'sshd_config.5')
-rw-r--r-- | sshd_config.5 | 69 |
1 files changed, 67 insertions, 2 deletions
diff --git a/sshd_config.5 b/sshd_config.5 index f5a06637f..853ba94c5 100644 --- a/sshd_config.5 +++ b/sshd_config.5 @@ -33,8 +33,8 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $OpenBSD: sshd_config.5,v 1.343 2022/09/17 10:34:29 djm Exp $ -.Dd $Mdocdate: September 17 2022 $ +.\" $OpenBSD: sshd_config.5,v 1.344 2023/01/06 02:47:19 djm Exp $ +.Dd $Mdocdate: January 6 2023 $ .Dt SSHD_CONFIG 5 .Os .Sh NAME @@ -395,6 +395,71 @@ from the default set instead of replacing them. .Pp Certificates signed using other algorithms will not be accepted for public key or host-based authentication. +.It Cm ChannelTimeout +Specifies whether and how quickly +.Xr sshd 8 +should close inactive channels. +Timeouts for specified as one or more +.Dq type=interval +pairs separated by whitespace, where the +.Dq type +must be a channel type name (as described in the table below), optionally +containing wildcard characters. +.Pp +The timeout value +.Dq interval +is specified in seconds or may use any of the units documented in the +.Sx TIME FORMATS +section. +For example, +.Dq session:*=5m +would cause all sessions to terminate after five minutes of inactivity. +Specifying a zero value disables the inactivity timeout. +.Pp +The available channel types include: +.Bl -tag -width Ds +.It Cm agent-connection +Open connections to +.Xr ssh-agent 1 . +.It Cm direct-tcpip Cm direct-streamlocal@openssh.com +Open TCP or Unix socket (respectively) connections that have +been established from a +.Xr ssh 1 +local forwarding, i.e. +.Cm LocalForward or +.Cm DynamicForward . +.It Cm forwarded-tcpip Cm forwarded-streamlocal@openssh.com +Open TCP or Unix socket (respectively) connections that have been +established to a +.Xr sshd 8 +listening on behalf of a +.Xr ssh 1 +remote forwarding, i.e. +.Cm RemoteForward . +.It Cm session:command +Command execution sessions. +.It Cm session:shell +Interactive shell sessions. +.It Cm session:subsystem:... +Subsystem sessions, e.g. for +.Xr sftp 1 , +which could be identified as +.Cm session:subsystem:sftp . +.It Cm x11-connection +Open X11 forwarding sessions. +.El +.Pp +Note that, in all the above cases, terminating an inactive session does not +guarantee to remove all resources associated with the session, e.g. shell +processes or X11 clients relating to the session may continue to execute. +.Pp +Moreover, terminating an inactive channel or session does necessarily +close the SSH connection, nor does it prevent a client from +requesting another channel of the same type. +In particular, expiring an inactive forwarding session does not prevent +another identical forwarding from being subsequently created. +.Pp +The default is not to expire channels of any type for inactivity. .It Cm ChrootDirectory Specifies the pathname of a directory to .Xr chroot 2 |