scttnlsn/dandelion

Asking for password on non-sudo SSH user

Closed this issue · 1 comments

As a followup to #176, here's the problem I've been having for I think forever, but it's related to my new hosting stack.

The problem is that when trying to do any Dandelion command, even simply status, I'm being prompted for a password that doesn't exist because I use SSH keys.

I use SpinupWP to manage my websites. They manage the Ubuntu 22.04 server backend stuff and create separate non-sudo users for every site. Those site users log into the site's home folder one level above the WordPress installation (or whatever files are running the site.

Here's an example of my dandelion.yml:

adapter: sftp
host: site1.com
username: user1
path: files/wp-content/plugins/my-plugin/
port: 22

exclude:
  - .gitignore
  - dandelion.yml
  - staging.yml

When I run a command, I'm presented with the prompt user1@site1.com's password:, but I have no password for that user!

--log=debug doesn't give anything extra.

I can run ssh user1@site1.com with no problem and it authenticates using my SSH key. I can also use Transmit on macOS to SFTP into the server with the same username, destination, and using my SSH key.

My only guess is that maybe Dandelion is trying to do something that my user doesn't have access to do.

I could use Dandelion just fine on my old CentOS server that was logging in through the root user. But that's not my preferred stack now.

Any help?

Thanks in advance!

I FOUND THE SOLUTION!

It wasn't a Dandelion problem after all, it was a SpinupWP problem. And here's the solution I found:

  1. Log into my server with a sudo user.
  2. Edit /etc/ssh/sshd_config.
  3. Add PubkeyAcceptedAlgorithms +ssh-rsa and save.
  4. Restart sshd with sudo systemctl restart sshd

And now Dandelion works again on SpinupWP!