Repository navigation
Wait for a pasted key on panel targets and prove it over SSH - #53
Merged
Merged
Conversation
A web-panel provider (Ploi) only prints where to paste the key, and its verify always fails, so rotate either aborted or, with --allow-unverified, committed before the key was pasted and broke SSH to that server until it was. At a terminal, rotate now shows the staged public key and where it goes, waits until it is pasted, then logs in with the staged key itself; only a working login counts as verified. A git host is never proven this way, since it refuses a shell even for a valid key. With no terminal nothing changes. A committed report now says where the old key still has to be removed by hand.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A hosting-panel target (
ploi,forge,cpanel) only accepts a pasted key, and before this PRrotatehandled it badly. The provider'sDeployjust printed "paste the key at …" and itsVerifyalways returned false, sorotateeither:--allow-unverified, committed before the key was pasted, so SSH to that server failed until it was (or untilrollback).Now, at a terminal
rotateshows the staged public key and where it goes, and waits.ssh -i <staged> -o IdentitiesOnly=yes … true).n, discards the staged key and leaves the old one active.What else changes
panelproviders are proven by logging in. A git host refuses a shell even for a valid key, sovcsweb-panel entries still need--allow-unverified.--allow-unverified.Tests
--allow-unverified; a failed proof doesn't commit and leaves the active key byte-identical; declining stops before any SSH; the report names where to remove the old key.Verified locally
go vetandmake e2epass.Docs:
docs/tools/rotate.md,docs/recipes/rotate-a-key.md, the feature catalog and the CHANGELOG ([Unreleased]→ Fixed).