Finding a pay-by-the-hour Ubuntu sysadmin
August 20, 2021 1:44 AM Subscribe
I'm having troubles with using github from Ubuntu and I'm getting to the point where I think paying for assistance might be the best option.
Github has recently stopped users authenticating with uid/pwd which has left me unable to use github in the way I normally would.
I've decided I need help because I've tried all the standard "this is how you fix your github/ssh problems". More inside.
I'd like someone's assistance to put my environment into a state where I can, once again, stop thinking about ssh with respect to Github. I'm really not sure how to do this given that by its nature I don't really want random people off the internet digging around on my machine so I think it's got to be me and the helper working together over chat/voice/video.
I have a feeling that whatever the issue is it's a little more than beginners level so I need someone who's further ahead than just having read all the blog posts that I have (difficult to asses that level I appreciate but ...).
I have looked at Metafilter Jobs but as far as I understand that's not really for this scale of job ... happy to be corrected on that if needs be.
So ... something a bit like Mechanical Turk but aimed at Ubuntu Sys Admin/Security types ... any suggestions ?
I'd like someone's assistance to put my environment into a state where I can, once again, stop thinking about ssh with respect to Github. I'm really not sure how to do this given that by its nature I don't really want random people off the internet digging around on my machine so I think it's got to be me and the helper working together over chat/voice/video.
I have a feeling that whatever the issue is it's a little more than beginners level so I need someone who's further ahead than just having read all the blog posts that I have (difficult to asses that level I appreciate but ...).
I have looked at Metafilter Jobs but as far as I understand that's not really for this scale of job ... happy to be corrected on that if needs be.
So ... something a bit like Mechanical Turk but aimed at Ubuntu Sys Admin/Security types ... any suggestions ?
Not really answering your question, but:
you may be able to get some help here, if your problem is relatively simple, and if you are able give a clear explanation of the steps you followed, what you expected to happen, what actually happened instead, and can share an excerpt of an error message for the symptom that you see when things don't work.
As long as you don't share the contents of your ssh private key with people [1] or other passwords or personally identifying information you may have), it should be pretty safe to share some diagnostic information.
How far through these ssh setup steps are you able to get? https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh
Do any of your symptoms match the common issues described in the troubleshooting guide? https://docs.github.com/en/github/authenticating-to-github/troubleshooting-ssh
Is your computer in some complex / unusual network environment? E.g. are you trying to make this work from inside a corporate office where corporate IT staff have blocked the ability for programs to connect over ssh?
[1] Do not share the contents of a file named ~/.ssh/id_rsa or ~/.ssh/id_ed25519 that contains text starting with the line -----BEGIN RSA PRIVATE KEY----- or similar. As a rule of thumb this private key file should never leave the machine you generate it on.
posted by are-coral-made at 2:25 AM on August 20, 2021 [5 favorites]
you may be able to get some help here, if your problem is relatively simple, and if you are able give a clear explanation of the steps you followed, what you expected to happen, what actually happened instead, and can share an excerpt of an error message for the symptom that you see when things don't work.
As long as you don't share the contents of your ssh private key with people [1] or other passwords or personally identifying information you may have), it should be pretty safe to share some diagnostic information.
How far through these ssh setup steps are you able to get? https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh
Do any of your symptoms match the common issues described in the troubleshooting guide? https://docs.github.com/en/github/authenticating-to-github/troubleshooting-ssh
Is your computer in some complex / unusual network environment? E.g. are you trying to make this work from inside a corporate office where corporate IT staff have blocked the ability for programs to connect over ssh?
[1] Do not share the contents of a file named ~/.ssh/id_rsa or ~/.ssh/id_ed25519 that contains text starting with the line -----BEGIN RSA PRIVATE KEY----- or similar. As a rule of thumb this private key file should never leave the machine you generate it on.
posted by are-coral-made at 2:25 AM on August 20, 2021 [5 favorites]
I'm with are-coral-made. Unless you have weird network / broken SSH this should be really simple. I just did it myself in like 4 minutes (good excuse to rotate credentials). I can think of a couple of things that might go odd/wrong (like having an old entry in ~/.ssh/known_hosts, or wrong file permissions). There has to be serious breakage on your machine or your network is messing up SSH for this not to be easy.
Copy the following into a file called 'foobar.rsa'...
Now....
Such is step 1: make sure you can SSH somewhere.
Step 2 is to create a pair of keys just for github.
Should be it. If SSH works, if public/private keys are in the right place, (if you don't have to delete old information from '~/.ssh/known_hosts'), if file permissions are secure, ...
Or your computer/network is possessed and hates github.
posted by zengargoyle at 5:29 AM on August 20, 2021 [3 favorites]
Copy the following into a file called 'foobar.rsa'...
-----BEGIN OPENSSH PRIVATE KEY----- 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 -----END OPENSSH PRIVATE KEY-----Do this...
chmod go-rwx foobar.rsaYou can get permission errors if other people have read/write/execute permissions for the secret key.
Now....
ssh -i foobar.rsa mefi@47.232.134.48If SSH works, you should see something like....
( ) (@@) ( ) (@) () @@ O @ O @ (@@@) ( ) (@@@@) ( ) ==== ________ ___________ _D _| |_______/ \__I_I_____===__|_________| |(_)--- | H\________/ | | =|___ ___| _________________ / | | H | | | | ||_| |_|| _| \__ | | | H |__--------------------| [___] | =| | ________|___H__/__|_____/[][]~\_______| | -| |/ | |-----------I_____I [][] [] D |=======|____|_____________________ __/ =| o |=-O=====O=====O=====O \ ____Y___________|__|_______________________ |/-=|___|= || || || |_____/~\___/ |_D__D__D_| |_D__D__ \_/ \__/ \__/ \__/ \__/ \_/ \_/ \_/ \_/ \There will be a ...
The authenticity of host '47.232.134.48 (47.232.134.48)' can't be established. ECDSA key fingerprint is SHA256:MbEsQdjXw+wlGVbFIlv1rnLzk+l7I/m8fmCvXmdY5tM. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '47.232.134.48' (ECDSA) to the list of known hosts.On the first connection. You'll eventually want to remove that (or just accumulate cruft)...
ssh-keygen -R 47.232.134.48 # Host 47.232.134.48 found: line 11 /home/REDACTED/.ssh/known_hosts updated. Original contents retained as /home/REDACTED/.ssh/known_hosts.oldNow you probably know if SSH works. I'm on cable, so the IP might change and it won't work anymore. But it does for now.
Such is step 1: make sure you can SSH somewhere.
Step 2 is to create a pair of keys just for github.
ssh-keygen -t rsa -b 4096 -C "REDACTED COMMENT" Generating public/private rsa key pair. Enter file in which to save the key (/home/zen/.ssh/id_rsa): /home/zen/.ssh/id_github_rsa Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/zen/.ssh/id_github_rsa. Your public key has been saved in /home/zen/.ssh/id_github_rsa.pub. ...Now, edit '.ssh/config' or create it.
Host github.com gist.github.com ForwardX11 no ForwardAgent no IdentityFile ~/.ssh/id_github_rsaThen go to githup.com and your profile / settings / ssh keys... delete the failed attempt(s) and add a new key. Give it a title "REDACTED COMMENT". Use 'xclip -i ~/.ssh/id_github_rsa.pub' or similar to cut-n-paste your *public* key into the big box and save.
Should be it. If SSH works, if public/private keys are in the right place, (if you don't have to delete old information from '~/.ssh/known_hosts'), if file permissions are secure, ...
Or your computer/network is possessed and hates github.
posted by zengargoyle at 5:29 AM on August 20, 2021 [3 favorites]
You can find someone on Upwork pretty quickly. Probably end up costing you between $50 and $150 plus an hour of your time finding the person and explaining what you want.
posted by goingonit at 7:21 AM on August 20, 2021
posted by goingonit at 7:21 AM on August 20, 2021
I'm with the earlier commenters: this is a straightforward process, and between all of us we should be able to help you to debug it if you can explain more specifically how it isn't working for you. This doesn't require any of us to have access to the actual contents of your keys.
Something which might be biting you is the URL that you're using for a particular repository. If you previously weren't using SSH authentication, you probably cloned your repositories using https URLs. Now you need the ssh URLs. You can change the URL for an existing repository with
posted by confluency at 9:34 AM on August 20, 2021 [2 favorites]
Something which might be biting you is the URL that you're using for a particular repository. If you previously weren't using SSH authentication, you probably cloned your repositories using https URLs. Now you need the ssh URLs. You can change the URL for an existing repository with
git remote set-url
, but I usually just edit .git/config
instead.posted by confluency at 9:34 AM on August 20, 2021 [2 favorites]
To follow up on confluency's comment, when you clone a repo you can choose whether you want to grab it via https or ssh. I believe github is phasing out https so using ssh is required.
zengargoyle has the best, most complete step-by-step here, but if you're still having trouble there are plenty ofnerds *nix users, devs, sysadmins, devops on AskMefi who can walk you through it.
posted by bendy at 7:59 PM on August 20, 2021
zengargoyle has the best, most complete step-by-step here, but if you're still having trouble there are plenty of
posted by bendy at 7:59 PM on August 20, 2021
Forgot to add: I do agree that this kind of thing is most effectively done over real-time chat, but logistics may be an issue because of time zones. :)
posted by confluency at 2:20 AM on August 21, 2021
posted by confluency at 2:20 AM on August 21, 2021
Response by poster: Thank you to all of you for your assistance, my github is now working !
Thank you to zengargoyle for the careful measured instructions and pointing out the significance of .ssh/config. The animation when I logged onto his server was really cool as well - choo-choo !
Thank you to confluency and bendy for pointing out the thing about https vs ssh , once I'd got it going a little bit I discovered that was indeed an issue for some of my repos and pointing that out helped.
In my excitement at seeing it work I tested my gitlab and bitbucket accounts only to find that of course they needed to be added to .git/config as well, once I did that they're working too.
I know this isn't how the green usually works but I was really set up to pay for this help so I took the $50 I was hoping might cover it and donated it to the Haiti Earthquake work of CARITAS.
Thanks again for all the suggestions and the effort put into the answers.
posted by southof40 at 4:58 AM on August 21, 2021 [5 favorites]
Thank you to zengargoyle for the careful measured instructions and pointing out the significance of .ssh/config. The animation when I logged onto his server was really cool as well - choo-choo !
Thank you to confluency and bendy for pointing out the thing about https vs ssh , once I'd got it going a little bit I discovered that was indeed an issue for some of my repos and pointing that out helped.
In my excitement at seeing it work I tested my gitlab and bitbucket accounts only to find that of course they needed to be added to .git/config as well, once I did that they're working too.
I know this isn't how the green usually works but I was really set up to pay for this help so I took the $50 I was hoping might cover it and donated it to the Haiti Earthquake work of CARITAS.
Thanks again for all the suggestions and the effort put into the answers.
posted by southof40 at 4:58 AM on August 21, 2021 [5 favorites]
As far as I can tell, you're the only one to take the bait and actually try my choo-choo.
Login shell '/usr/games/sl'.
In the Metafilter spirit-ish (I think)... It's a fundraising month so you could drop some $$ to Metafilter. Maybe even pick up a sockpuppet account...
Glad it worked out.
posted by zengargoyle at 5:16 AM on August 21, 2021
Login shell '/usr/games/sl'.
$ apt show sl Package: sl Version: 5.02-1 Priority: optional Section: games Maintainer: Markus FroschTeach you to type 'ls' correctly it will.Installed-Size: 60.4 kB Depends: libc6 (>= 2.2.5), libncurses6 (>= 6), libtinfo6 (>= 6) Homepage: https://github.com/mtoyoda/sl Tag: game::toys, interface::text-mode, role::program, uitoolkit::ncurses, use::entertaining Download-Size: 12.9 kB APT-Manual-Installed: yes APT-Sources: http://deb.debian.org/debian buster/main amd64 Packages Description: Correct you if you type `sl' by mistake Sl is a program that can display animations aimed to correct you if you type 'sl' by mistake. SL stands for Steam Locomotive.
In the Metafilter spirit-ish (I think)... It's a fundraising month so you could drop some $$ to Metafilter. Maybe even pick up a sockpuppet account...
Glad it worked out.
posted by zengargoyle at 5:16 AM on August 21, 2021
This thread is closed to new comments.
If you are getting hands on help (i.e. giving someone access) you are going to have to trust them. I think I would trust a mefites help more than a random help wanted board online.
posted by adventureloop at 1:53 AM on August 20, 2021 [1 favorite]