誤って `~/.ssh/` の所有権を盗んだユーザーに SSH アクセスを戻すにはどうすればよいでしょうか?

誤って `~/.ssh/` の所有権を盗んだユーザーに SSH アクセスを戻すにはどうすればよいでしょうか?

自宅からオフィスに Ubuntu 18.04 サーバーをセットアップし、2 人のユーザーadmin(sudoer) とpierre(sudoer 以外) を設定しました。サーバーのセットアップ中に、誤って の所有権を から に変更し/home/admin/.sshpierre:pierreログアウトadminしてしまいました。

現在、 への SSH アクセスはまだ可能ですpierreが、 からはロックアウトされていますadmin。実際、 に公開鍵を入れてサーバーにアクセスしていたのです~/.ssh/authorized_keysが、PasswordAuthenticationは無効になっています。

/home/admin/.sshからのの所有権を活用してpierre、 への SSH アクセスを回復することはできますかadmin? コロナウイルスの流行のため、オフィスに行って物理的にサーバーにアクセスすることはできません。

答え1

アカウントをロックした状態で作成していないadmin、または明示的にロックしていないこと、およびそのアカウントのパスワードがわかっていることを前提とします。

  1. として SSH でログインしますpierre
  2. adminアカウントのパスワードを使用してユーザーを切り替えますadmin
    管理者
  3. ~admin/.ssh邪魔にならないように名前を変更します(例) ~admin/.ssh-pierre
    mv -i ~/.ssh{,-ピエール}
  4. 新しい~admin/.ssh所有者を作成しますadmin
    インストール -d -m 0700 ~/.ssh
  5. 関連するファイルを から に慎重に移動して~admin/.ssh-pierre/*~admin/.ssh/Pierre という人物がそこにさらに罠を仕掛けていないことを確認します。
  6. ~admin/.ssh-pierre/好みに応じて取り除いてください。
    rmdir ~/.ssh-pierre
  7. このセッションからログアウトする前に、 への 2 回目の SSH ログインをテストしますadmin

関連情報