Cliget for Firefox: Download protected files
Cliget is an add-on for the Firefox web browser that improves the downloading of protected files on remote machines you have control over.
The main idea behind the extension for Firefox is to grab all important download parameters to turn them into a wget, curl or aria2 command.
Maybe you have experienced the following situation before: you checked your web email account, say Gmail, and found an attachment in one of the emails that you want to load on another system (a server for instance or another computer).
Your two main options at this point are to download the attachment to the computer you are using to transfer it to the remote system afterwards, or to access the remote system, sign in to your email account there, to download the attachment this way.
Both work, but sometimes, you may not want to sign in to your email account on the secondary system or cannot transfer the data at this point to it as well.
With this addon you can download email attachments, purchased software/media, source code from a private repository to a remote server without having to download the files locally first.
Enter cliget for Firefox. The browser extension adds curl, wget or aria2 (or multiple of those) command to Firefox's download dialog that you can copy to run it on another machine or using another program without having to authenticate yourself first (think Google Drive or Dropbox downloads, email attachments, or any other protected download that requires authentication).
The command includes sensitive information like cookie and header information.Make sure you keep the data safe as anyone with access to it may download the file.
Take a look at the following example command which will download the 64-bit version of the Vivaldi web browser for Windows to the system the command is executed on.
curl --header 'Host: download.vivaldi.com' --header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0' --header 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' --header 'Accept-Language: en-US,de-DE;q=0.7,en;q=0.3' --header 'Referer: https://vivaldi.com/download/' --header 'Cookie: __cfduid=xxxxxx; cf_clearance=xxxxxxx' --header 'Connection: keep-alive' 'https://download.vivaldi.com/stable/Vivaldi.1.0.435.40.x64.exe' -o 'Vivaldi.1.0.435.40.x64.exe' -L
Windows users need to download cURL, Wget or aria2 before they can make use of the functionality.
To sum it up:
- Download the file as usually in Firefox after installing cliget in the browser.
- Copy the command, and execute it on the machine you want to download the file to.
You can enable Wget and aria2 in the preferences, and disable cURL there as well. Any combination works and cliget will display the commands to you when you initiate downloads so that you can copy them easily.
You may add extra options to the commands if you require to do so, and may enable the "double quotation marks" option that is necessary if you want to run the commands on Windows machines.
The cliget extension for the Firefox web browser is a specialized browser add-on. It is rated highly by its users (five star rating) and worked well during tests.
This is a terrific idea and would have really filled the gap at those times for me. Hope it comes to Chrome/Safari at some point though, as I’m not using Firefox.
I like this extension!
PS: If you get an error saying “curl: (3) [globbing] bad range in column XYZ”
don’t forget to escape special chars in the download URL.
Is there are similar addon for Chrome users?
I’m not aware of any.
FYI: This is a build-in feature in both Firefox & Chrome. I.e: Devtools -> Network tab -> right-click any url -> click “Copy as cURL”
yes there is actually it is called kojiki the link is below
Security Flaws incoming…
I was thinking the same thing but it’s the same old story… security vs convenience. Then again, I’m old school and write DASH scripts whenever possible because… POSIX!!! ;-)
Is this possible to have longer list of links remembered? For now there is only 10 links. Sometimes we need more…