Thanks for filing this bug report.

This appears to be configuration issue on your end, but you're correct
that it is new in the recent update.

tl;dr - You should not edit the systemd units directly. Just add your
sshd_config.d drop-in, and run:

$ systemctl daemon-reload
$ systemctl restart ssh.socket

See the comment near the top of /etc/ssh/sshd_config.

--

The longer version of things - the last update added
BindIPv6Only=ipv6-only to ssh.socket. This is required so that ipv6-only
(i.e. AddressFamily inet6) setups are honored. However, setting that
option changes the behavior of ListenStream=<port> [1]. Namely, a single
port number in ListenStream= is interpreted as a port to listen on via
IPv6. By default, it is also available on IPv4, but not when
BindIPv6Only=ipv6-only.

And, with your override (via systemctl edit) is in place, you end up
with:

root@n:~# systemctl cat ssh.socket
# /usr/lib/systemd/system/ssh.socket
[Unit]
Description=OpenBSD Secure Shell server socket
Before=sockets.target ssh.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Socket]
ListenStream=0.0.0.0:22
ListenStream=[::]:22
BindIPv6Only=ipv6-only
Accept=no
FreeBind=yes

[Install]
WantedBy=sockets.target
RequiredBy=ssh.service

# /run/systemd/generator/ssh.socket.d/addresses.conf
# Automatically generated by sshd-socket-generator

[Socket]
ListenStream=
ListenStream=0.0.0.0:22
ListenStream=[::]:22
ListenStream=0.0.0.0:1221
ListenStream=[::]:1221

# /etc/systemd/system/ssh.socket.d/override.conf
[Socket]
ListenStream=
ListenStream=22
ListenStream=1221

root@n:~# lsof -i :22
COMMAND PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
systemd   1 root    3u  IPv6 2143641      0t0  TCP *:ssh (LISTEN)
sshd    864 root    3u  IPv6 2143641      0t0  TCP *:ssh (LISTEN)

But, if you remove your override, and let sshd-socket-generator handle
the port configuration as it's designed to do, things are resolved:

root@n:~# rm /etc/systemd/system/ssh.socket.d/override.conf
root@n:~# systemctl daemon-reload
root@n:~# systemctl restart ssh.socket
root@n:~# systemctl cat ssh.socket
# /usr/lib/systemd/system/ssh.socket
[Unit]
Description=OpenBSD Secure Shell server socket
Before=sockets.target ssh.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Socket]
ListenStream=0.0.0.0:22
ListenStream=[::]:22
BindIPv6Only=ipv6-only
Accept=no
FreeBind=yes

[Install]
WantedBy=sockets.target
RequiredBy=ssh.service

# /run/systemd/generator/ssh.socket.d/addresses.conf
# Automatically generated by sshd-socket-generator

[Socket]
ListenStream=
ListenStream=0.0.0.0:22
ListenStream=[::]:22
ListenStream=0.0.0.0:1221
ListenStream=[::]:1221

root@n:~# lsof -i :22
COMMAND PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
systemd   1 root    3u  IPv4 2155385      0t0  TCP *:ssh (LISTEN)
systemd   1 root   43u  IPv6 2155386      0t0  TCP *:ssh (LISTEN)
sshd    930 root    3u  IPv4 2155385      0t0  TCP *:ssh (LISTEN)
sshd    930 root    4u  IPv6 2155386      0t0  TCP *:ssh (LISTEN)


[1] 
https://www.freedesktop.org/software/systemd/man/latest/systemd.socket.html#ListenStream=

** Changed in: openssh (Ubuntu)
       Status: New => Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2118912

Title:
  openssh-server unavailable after upgrade to 1:9.6p1-3ubuntu13.13

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssh/+bug/2118912/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to