Videos
How do I download the Proxmox self-signed SSL certificate so I can install it on my client machines?
How to download the ssl certificates? - Squarespace products - Squarespace Forum
How to download the SSL certificate (and the whole chain until the root) of a web site - Stack Overflow
Where to get free SSL certificates?
The documentation says it's in a special filesystem not directly accessible.
TL;DR
For everything to work and not only your browser, you need to add that CA certificate to the system's trusted CA repository.
In ubuntu:
- Go to /usr/local/share/ca-certificates/
- Create a new folder, i.e. "sudo mkdir school"
- Copy the .crt file into the school folder
- Make sure the permissions are OK (755 for the folder, 644 for the file)
- Run "sudo update-ca-certificates"
- Restart your browser
Why
Let me explain what is going on also, so the other posters see why they don't need any certificate to use Github over HTTPS.
What is going on there is that your school is intercepting all the SSL communications, probably in order to monitor them.
To do that, what they do is in essence a "man in the middle" attack, and because of that, your browser complains rightfully that it is not being able to verify github's certificate. Your school proxy is taking out github's cert and instead providing its own cert.
When your browser tries to verify the school's provided cert against the CA that signed github's cert, it rightfully fails.
So, for the SSL connection to work in the school, you need to consciously accept that "MITM" attack. And you do that by adding the school's CA certificate as a trusted one.
When you trust that school CA, your verification of the fake github cert will work, since the fake github cert will be verified by the school CA.
Be aware that SSL connection is not safe anymore since your school administrator will be able to intercept all your encrypted connections.
The ca-certificates package has the instructions in its README.Debian:
If you want to install local certificate authorities to be implicitly trusted, please put the certificate files as single files ending with
.crtinto/usr/local/share/ca-certificates/and re-runupdate-ca-certificates.
Note that it mentions a directory different from the other answers here:
/usr/local/share/ca-certificates/
After copying into /usr/local/share/ca-certificates/ you can then update the cert's permissions and run sudo update-ca-certificates as mentioned in Telegraphers answer. You will see in the output that the cert was added.
If you have access to OpenSSL, try
openssl s_client -connect {HOSTNAME}:{PORT} -showcerts
replacing {HOSTNAME} and {PORT} with whatever your values are.
A quick method to get the certificate pulled and downloaded would be to run the following command which pipes the output from the -showcerts to the x509 ssl command which just strips everything extraneous off. For example:
openssl s_client -showcerts -connect server.edu:443 </dev/null 2>/dev/null|openssl x509 -outform PEM >mycertfile.pem
To use the certificate, with wget,
wget https://server.edu:443/somepage --ca-certificate=mycertfile.pem