I’m writing this article, because after an exhaustive search online, I didn’t find a viable solution to my scenario. Instead, I have to test and devise my own strategy, and in doing so, discovered what I think is a better and more robust setup than is currently available. Therefore, I wanted to share my setup in the hopes it will help others in similar situations.
What this solution achieves:
- Portability. This article will guide you through constructing your own portable version of Firefox that doesn’t require system integration and thus can run from a USB drive while traveling between different computers. I should note that if this is all you need, you could simply download the Mozilla FIrefox Portable Edition and be just fine, but you’ll miss out on some additional benefits.
- Multiple Versions. This method should theoretically work on any installer version from the current 55.0.3 back to 4.0, so you could create a library of Firefox versions for testing purposes. Furthermore, you don’t need to wait for the newest versions (or beta versions!) to be converted, since you’ll be doing it yourself. Therefore, your portable version can be more up-to-date than the current downloadable Portable Edition.
- Multiple Profiles. Profiles enable you to have different setting, extensions, bookmarks, cookies, histories, etc. with the same “installation.” The Portable Edition doesn’t include the Profile Manager, so you can’t use multiple profiles without an additional download. However, Mozilla’s own Profile Manager is automatically included in your personal portable edition when using the procedure in this article.
- Simultaneously Run Multiple Profiles and Versions. This is really what prompted me to devise this strategy, because I didn’t want to close down my main browser when running a different version or profile. Theoretically, you could change Portable Edition’s PortableFirefox.ini file so “AllowMultipleInstances=true,” but that doesn’t seem to be working with the latest versions of Firefox, at least not for me.
- Easy Duplication of Profiles. One of the benefits of multiple profiles is difference configurations, but there’s often many of the same extensions or tweaks you want on all profiles. For example, except for my “plain vanilla” testing version, I always like to have NoScript installed. Rather than reconfigure each profile separately, you can configure the base settings, duplicate them and make any varying changes from there.
- Updateable. Having the most up-to-date portable edition is useless if you can’t update it. Therefore, this system retains Firefox’s manual or automatic update feature to keep your browser up-to-date without affecting its portability or profiles.
The technically minded out there are probably already reeling at the possibilities. However, for the readers with less experience in Firefox, I wanted to present some specific uses of this setup, so you know what you could do:
- Travel with your own, familiar browser and settings. If you’re on the move a lot, you probably use more than one computer: maybe your own computer, a traveling laptop, your parent’s computer, a friend’s machine and the school’s computer lab unit. With this setup, you’ll have the same browser, settings, bookmarks and extensions that you’re used to using. You’ll even have the same cookies, so you don’t typically need to log in to sites that you’ve already configured to save your credentials. Just be careful to save online banking and such for trusted computers…just to be safe.
- Keep Google/Facebook/Apple separate from your browsing. I loathe the idea of companies tracking my every online move. There’s just no need for big corporations to have a profile on you (unless you really like targeted ads), so this setup allows you to stay logged in to those accounts in a separate profile and prevents your browsing history from being shared with the world.
- Foil device fingerprinting. In a previous article, I explained how deleting cookies and using Private Browsing isn’t enough to prevent being identified, because companies commonly use device fingerprinting to track you. Using multiple profiles and versions is a good step toward complicating that process and making you more difficult to track. It also means that supercookies are ineffective, assuming you use different profiles for certain websites.
- Stay logged in to multiple Gmail (or any email) accounts. This was another big goal of mine. Google recently changed their authentication method, so all of the good Gmail manager extensions collectively failed without the hope of recovering their previous functions. For someone with many Gmail accounts, that means continually logging out of and back in to various accounts. Truly a pain. With this set up, you can have a profile dedicated to each Gmail account and never have to log out. When you want to check any Gmail account, press a shortcut hot key and it opens. You can even have any number of accounts open at the same time and they won’t conflict.
- Keep all profiles and versions in an encrypted file container. For security when traveling, you really should keep anything important, especially your browser, opened email accounts and saved passwords, strongly encrypted. For this I highly recommend a VeraCrypt (or even the older TrueCrypt) file container protected by a strong passphrase. That way, all your browsers, settings, history and email can be securely locked down when not in use, so there’s no way others could physically snoop on you.
This procedure has two main steps, neither of which are especially complicated, as long as you follow the procedure to the letter. The first is constructing your own portable edition for Firefox. The second is setting up multiple profiles.
Constructing a Portable Firefox
- Make sure you get the offline installer from these links. The main Mozilla download page only offers the tiny (~240KB) online installer, which won’t work.
- Depending on your setup, that first link table might have an additional first column for Vista/XP, so be sure to check the column headers to ensure you get the correct version.
- For a portable edition, it’s better to get the 32-bit version because it’ll work on 32-bit or 64-bit systems. However, if you’re sure you’ll only need Firefox on a 64-bit system and you have more than 4GB of RAM, you might get slightly better performance (although some tests disagree) and possibly better security with the 64-bit version.
- Although you can make older versions portable, it’s better to use the latest version for your regular browser to improve security.
2. Download and install 7-Zip, if you don’t already have it.
Choose the version according to your system, 32-bit or 64-bit. If you’re unsure, you can use the 32-bit version on either system. 7-Zip is a great open-source program…one of the first programs I install on every fresh system of mine.
3. Right-click the Firefox offline installer you downloaded, point to 7-Zip and select Extract to “Firefox…”
This will extract the offline installer to your hard drive and effectively make it portable.
4. Move (and optionally rename) that newly created folder to wherever you want your portable version of Firefox to reside. Be sure to do this before continuing, or any created shortcuts won’t be able to find the program. I recommend moving the entire folder onto your flash drive now. Or better yet, move it to an encrypted VeraCrypt or TrueCrypt file container and always mount it to the save drive letter.
5. Double-click the folder Firefox…, and then core and locate the Firefox file.
In my example, it is located in C:\test\Firefox Setup 55.0.3\core\Firefox.exe. This is the file you’ll use to launch your portable version of Firefox, not the setup.exe file in the root folder (which will install Firefox instead…in fact, you can delete that setup.exe file if you want).
6. Repeat for however many versions of Firefox you want to make portable. Just keep in mind very old versions of Firefox (prior to 4.0, for example) might not work with this technique.
If all you want are self-made, portable editions of Firefox without setting up profiles, then you’re done! That’s all there is to it. However, to really reap the benefits of this setup, continue to make separate profiles in the next section.
Setting Up Multiple Firefox Profiles
- The Firefox… folder is one step back in the folder hierarchy and is the one created when you used 7-Zip to extract the offline installer. You might have renamed it, but in my example, I kept the default name “Firefox Setup 55.0.3.”
- If you don’t have the address bar visible, you can use the left folder tree. You can also right-click the file, select Create Shortcut and then cut/paste that shortcut to the above folder.
- Technically, the shortcut can be anywhere you want, but I find it neater to keep everything in the same folder and copy the shortcuts elsewhere if needed.
3. Append the Target string with the following text and click OK:
-no-remote –profile “main”
Such that the entire line reads something like this (my example):
“C:\test\Firefox Setup 55.0.3\core\firefox.exe” -no-remote -profile “main”
- The appended text should be outside the first set of quotation marks.
- Be sure to include a space after the original quotation-enclosed text and the appended text.
- By launching the shortcut, Firefox automatically creates the profile “main” and includes a “/core/main/” folder.
- In this example, I searched for and installed the NoScript extension, but you can make any changes you want.
- Only make changes and install extensions you want in other profiles; save the unique, fine-tuning of your main browser for later.
- Keep in mind that the more extensions you add and tweaks you perform, the more identifiable the browser becomes to device fingerprinting. Therefore, minimize the amount of extensions you use across all profiles if your goal is to counter device fingerprinting. For example, you might only add NoScript for now.
- Take some time to think what profiles you want and what you want to do with them. Start with the most barebones vanilla configuration and work your way up. For example, if you want an additional plain vanilla profile, don’t make any changes and continue the procedure. If you want a third profile to share more extensions with the main profile, you can later modify the main profile and use that as a base for the third profile. And so on and so forth. You’ll better see what I mean as you continue, so for now, start with the smallest amount of changes you want to have for the next profile.
6. Open the core folder again, select the main folder, click Copy and then click Paste.
Alternatively, select the main folder and press Ctrl-C, then Ctrl-V. This will duplicate the “main” folder and place it in the current “core” folder.
- Make certain the name of the folder exactly matches the name of the second profile you will be creating next. In this example, I’m going to create a new profile called “HowAgain.com”, so I renamed the folder the exact same thing: HowAgain.com
- Be sure to perform this step before creating and running a shortcut for the second profile.
- By copying and renaming this folder before creating the second profile, you’re assigning the previously configured settings and extensions to the new profile, even before it’s officially create it. Cool, huh?
- Anything you configured before is duplicated. If you later make further changes in the “main” profile and then create a third profile, all those changes will be copies as well, but only to these subsequent profiles, not this second one. That’s why you need to start with the most basic changes and work your way up. In the end, you’ll avoid duplicating much effort that way.
9. Rename the newly created Firefox – main – Copy shortcut to match whatever profile you want to create.
This is to help you identify the appropriate shortcuts. In my example, I’ll be renaming it to “Firefox – HowAgain.com.
11. Change the profile name in the Target text to match the second profile name (and the second profile folder you renamed earlier), and then click OK.
In my example, I changed “main” to “HowAgain.com”, such that the Target text is:
“C:\test\Firefox Setup 55.0.3\core\firefox.exe” -no-remote -profile “howagain.com”
At the risk of sounding like a broken record, make sure the profile name matches the profile folder you renamed earlier!
12. Double-click the shortcut to the second profile to launch the program and have Firefox officially create the profile.
Technically, it looks for the same-named folder and assigns it to the second profile. In doing so, it adopts all the settings from the main profile, because it’s a direct copy at this point. You’ll notice that the NoScript extension is already installed in this second profile, just like the main one.
13. Make any changes you need to this second profile without fear of altering the “main” profile. Likewise, you can make any changes to the “main” profile at this point without altering the second profile.
14. Repeat steps 5-13 for as many profiles as you need. Note that you can build upon any existing profile. If you want several profiles just like the second one, tweak the second profile to your liking and then duplicate that one instead of the “main” one. You can keep doing this, for example, to have several profiles, each with a few additional tweaks from the prior one.
Thank you for reading. I hope this article helps you out. It it does, I’d really appreciate you sharing a link to the article on Facebook or wherever. And as always, I welcome any comments or suggestions.