Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.devel.testing > #1475
| From | Colin Watson <cjwatson@debian.org> |
|---|---|
| Newsgroups | linux.debian.bugs.dist, linux.debian.devel.release, linux.debian.devel.testing |
| Subject | Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie |
| Date | 2025-07-24 17:00 +0200 |
| Message-ID | <Lc5Al-2lhc-3@gated-at.bofh.it> (permalink) |
| References | <Lbuhr-1VGi-3@gated-at.bofh.it> <Lbuhr-1VGi-3@gated-at.bofh.it> <Lc3fb-2jKS-1@gated-at.bofh.it> <Lbuhr-1VGi-3@gated-at.bofh.it> <Lc3fb-2jKS-1@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Cross-posted to 3 groups.
[Multipart message — attachments visible in raw view] - view raw
Control: affects -1 openssh-server [TL;DR: I think it may not be possible to properly solve this without a bookworm update as well as a change to trixie.] On Thu, Jul 24, 2025 at 01:19:40PM +0100, Colin Watson wrote: >On Tue, Jul 22, 2025 at 07:42:07PM +0200, Manfred Stock wrote: >>Further Comments/Problems: I've upgraded several Bookworm systems to >>Trixie so far, which went pretty smooth. But there's one thing I keep >>noticing, and which I observed a bit more closely while upgrading the >>system I'm sending this report from: Starting at roughly the time when >>dpkg says something like >> >> Unpacking openssh-server (1:10.0p1-5) over (1:9.2p1-2+deb12u6) ... >> >>I'm not able anymore to open new SSH connections to the system I'm >>upgrading. The SSH daemon is still running, and the existing connections >>also still work, but new connections fail with >> >> kex_exchange_identification: read: Connection reset by peer >> Connection reset by fd... port 22 >> >>on the client. [...] >Thanks for the report. This will be due to the split of sshd-session >from the main sshd binary; the old sshd re-executed itself with >different arguments, but the new sshd executes sshd-session instead >and has removed support for the parameters that it used to rely on >during re-execution. > >I'll have to set up a suitable environment to test this, but my best >idea for now is to have openssh-server.preinst take a copy of the old >sshd binary before dpkg unpacks the new files, and patch sshd to >re-exec that copy if it exists and it receives the -R option. The >postinst can then remove the copy after it's restarted the new sshd. This approach failed in my first test. To control the order of operations, I just ran "dpkg --unpack" on the new .deb, and then the new /usr/sbin/sshd failed before it got as far as re-execing the temporary copy because it needed a newer libc. apt might not do that in normal situations, but we clearly want to avoid this. My next approach was to try a temporary diversion of /usr/sbin/sshd. This works, although it involves a slightly odd invocation for openssh-server to be able to divert one of its own files. See the "openssh_10.0p1-6.debdiff" attachment. Would the release team accept something like this for trixie? However, this isn't the whole story. Once the new libssl3t64 is unpacked, new connections fail with "OpenSSL version mismatch. Built against 30000100, you have 30500010". This part of the problem can't be fixed by a change in trixie, because the problem is that the _old_ sshd, before restarting, fails to tolerate newer minor versions of OpenSSL. This was fixed upstream in OpenSSH 9.4, and if I'd noticed previously that this would be an upgrade problem I'd already have included it in a bookworm update. So, I think we also need to fix that in bookworm. See the "openssh_9.2p1-2+deb12u7.debdiff" attachment (for brevity I've pruned some noise from git-dpm that just updates some commit IDs in patches). Timing-wise, this is tricky. IMO we really need to get this out before trixie releases to minimize the chance of users running into this if they rush to upgrade. Would the security team be willing to consider pushing this out via -security? Failing that, we'd have to wait until the next point release of bookworm, which I think would be unfortunate given that the consequences of sshd being broken between unpack and configure can include a failed remote upgrade with no way to access the system (if you forget to maintain a separate ssh connection, or if your network connection is interrupted). Thanks, -- Colin Watson (he/him) [cjwatson@debian.org]
Back to linux.debian.devel.testing | Previous | Next — Previous in thread | Next in thread | Find similar
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Manfred Stock <m-debian@nfred.ch> - 2025-07-23 01:10 +0200
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Colin Watson <cjwatson@debian.org> - 2025-07-24 14:30 +0200
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Colin Watson <cjwatson@debian.org> - 2025-07-24 17:00 +0200
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Salvatore Bonaccorso <carnil@debian.org> - 2025-07-24 18:50 +0200
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Colin Watson <cjwatson@debian.org> - 2025-07-24 22:40 +0200
Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie Jonathan Wiltshire <jmw@debian.org> - 2025-07-26 21:50 +0200
Processed: Re: Bug#1109742: upgrade-reports: No new SSH connections possible during large part of upgrade to Debian Trixie "Debian Bug Tracking System" <owner@bugs.debian.org> - 2025-07-24 17:00 +0200
csiph-web