Add pfaffman's keys to your ssh authorized_keys

tl;dr

Paste this one line into your server console

ssh-import-id-gh pfaffman

and send me the user you log in as (usually root or ubuntu) and your IP address or hostname.

If you need to open an ssh port for me to connect, my IP address is 154.9.154.67.

Longer version with more details

If you have installed Discourse yourself and want to give me access to your server, here’s what to do.

First, you will need to connect to a shell on your server via ssh or the Digital Ocean console or something similar. If you have ever typed something like cd /var/discourse;./launcher rebuild app, you need to do whatever you do to get there. Then you’ll paste (or even type!) the command below.

Simple case using something like Ubuntu on Digital Ocean with username root or ubuntu

If you are using Ubuntu, you should be able to log in via SSH, or connect via the Digital Ocean console and paste in this command:

 ssh-import-id-gh pfaffman

You should see a few lines of text that ends with something like “SSH keys [Authorized]

That’s the best way, as it will see that authorized_keys is created with the correct permissions.

That should do it, but if you got something that looked like an error, you may need to keep going.

If you’re not using a recent version of Ubuntu

If that fails for some reason, this should work:

curl https://github.com/pfaffman.keys >> ~/.ssh/authorized_keys

If that fails, then your .ssh directgory doesn’t exist. An easy way to fix that is to create your own key with

ssh-keygen

and hit return a few times. That will generate a key (which I don’t need) and also see that ~/.ssh is created with the correct permissions. Then go back and use the curl command above.

If your username is not root or ubuntu I need the username

After you have added my key, all I need to know is the hostname (or IP address) and the username. I’ll try root, and ubuntu if you don’t give me one.

sudo access is also required

For most setups, the user that you use (e.g., root or ubuntu) has super user privileges, but if you add a user just for me, please see that the user can use sudo without a password. You can do that like this:

sudo su -c 'echo =username=        ALL = NOPASSWD: ALL > /etc/sudoers.d/=username=' root

If the user you created was not pfaffman, please substitute accordingly.

If you use Cloudflare, reverse proxy, or a load balancer

If you are using Cloudflare or something else that makes your forum’s domain name not be the same as the name/IP address to use for ssh access, I will need that IP address or hostname for the virtual machine.

If you want to limit ssh access, Literate Computing will be connecting from 154.9.154.67.

1 Like