Commands.page Logo

How to Use aria2c with Self-Signed Certificate on Ubuntu

This guide explains how to configure aria2c on Ubuntu to handle downloads from servers using self-signed SSL certificates. You will learn the specific command-line flags required to bypass certificate verification errors when you trust the source. By following these steps, you can successfully retrieve files without encountering SSL handshake failures during the download process.

Understanding the SSL Error

When you attempt to download a file from a server with a self-signed certificate, aria2c validates the SSL certificate by default. Since the certificate is not signed by a trusted Certificate Authority, the validation fails, and the download stops. To proceed, you must explicitly tell aria2c to skip this verification step.

The Command to Bypass Verification

To download a file while ignoring the certificate error, use the --check-certificate=false option. Open your terminal on Ubuntu and run the following command:

aria2c --check-certificate=false https://example.com/file.zip

Replace https://example.com/file.zip with the actual URL of the file you wish to download. This flag disables the certificate check, allowing the connection to establish despite the self-signed status.

Security Considerations

Disabling certificate verification reduces security because it makes you vulnerable to man-in-the-middle attacks. Only use this method if you fully trust the server hosting the file. For public or unknown servers, it is safer to import the self-signed certificate into your system’s trust store instead of bypassing the check entirely.

Permanent Configuration Option

If you frequently download from a specific internal server with a self-signed certificate, you can add the setting to your aria2 configuration file. Create or edit the file at ~/.aria2/aria2.conf and add the following line:

check-certificate=false

This ensures all future downloads using aria2c on your Ubuntu system will ignore certificate errors without requiring additional command-line flags.