First off, I'm going to preface this by saying it's (mostly) safe to run a Monero wallet on a non-tails OS, because Monero is created with privacy in mind for every aspect of it's design. The transactions are encrypted so that only the sender knows who sent it, how much it was, and to whom it was sent. The Monero network protocals hide and encrypt everything they posssibly can, including what information you are really getting from the network, so no one can see what data of the blockchain your wallet is really working with. Once project Kovri is finished, we will even be able to connect to the Monero network using i2p (another alternative network like tor), which will hide IP addresses and make sure no metadata is leaking when we connect to another computer.
Secondly, please take some time to read up on how Monero works. A couple hours of reading and maybe another half hour of messing around with the wallet a little bit goes a long way in being more comfortable and safe with your Monero use.
A Monero Introduction for Beginners - Expects user to be technology-literate, but explains the basics of Monero and how it differs from Bitcoin. It explains how Monero is private, how stealth addresses work, and what Kovri is. (15 minute read)
"That's all great, but I just want to use Monero on TAILS so that I don't need two computers and it's more convienent"
Fine, here are the actual steps:
Statements within the "<" and ">" will need to be replaced with the proper statement.
- Be running TAILS - properly, on a USB drive
- Download the wallet from the offical Monero site at: https://getmonero.org/downloads/#linux
Check the SHA256 hash of the downloaded file against the one listed on the site. If it doesn't match, DO NOT USE THAT FILE, it was altered somehow
amnesia@amnesia:~/Persistent/Tor Browser$ sha256sum <name-of-download>.tar.bz2
Extract the file and place it somewhere in your /home/amnesia/Persistent/ directory or it's subfolders, otherwise it will be wiped when TAILS shuts down
amnesia@amnesia:~/Persistent/Tor Browser$ tar -xf <name-of-download>.tar.bz2
amnesia@amnesia:~/Persistent/Tor Browser$ mv <name-of-extracted-folder> ../
amnesia@amnesia:~/Persistent/Tor Browser$ cd ..
amnesia@amnesia:~/Persistent$ cd <name-of-extracted-folder>
5.(cli) This is where you make your decision on what you want to do. Do you want to download the blockchain (currently ~27GB total) to run your own node, or connect remotely to an already running node? Most of you will want to remotely connect to another node, as tor is slow af to download large files and USB drives tend to be a little small. You can find a node to connect to here: https://moneroworld.com/#nodes
amnesia@amnesia:~/Persistent/<name-of-extracted-folder>$ torsocks ./monero-wallet-cli --daemon-host <address-of-daemon>.onion
5a. You will need to select a working and updated onion address to use for the daemon, as TAILS forces all connections through tor for security (also why it should be run with torsocks). If the port of the daemon you are connecting to is NOT 18081, you will need to include it as part of the address (<address-of-daemon>.onion:<port>), otherwise you can leave it out. At the time of writing, there is only one working onion-routed daemon listed; xmrag***. Please donate to whoever it is that is running the daemon, because otherwise this would be a lot harder to do (their wallet is listed on the page at that address)
5.(GUI) If you wish to use the GUI wallet, only this step is different and you need to run the following command instead:
amnesia@amnesia:~/Persistent/<name-of-extracted-folder>$ torsocks ./monero-wallet-qt
or if that does not work:
amnesia@amnesia:~/Persistent/<name-of-extracted-folder>$ torsocks ./monero-wallet-gui
Then, click on "Use custom settings" in the daemon startup popup and then in the GUI under Settings, enter the address and port of the daemon where it says "localhost" and "18081", then click connect.
If you want to restore a wallet you have already created, add the flag "--restore-deterministic-wallet" to the end of the last command. You will be asked for the 25-word seed you should have written down or memorized. This goes for both GUI and cli wallets.
Give the wallet a few minutes to sync, then your wallet should be functional and ready to use.
I would recommend creating a script with the following contents to start the wallet (do NOT include --restore-deterministic-wallet):
torsocks ./monero-wallet-cli --daemon-host <address-of-daemon>.onion
Then make it executeable
amnesia@amnesia:~/Persistent/<name-of-extracted-folder>$ chmod +x <name-of-script>.sh
now you can run it by typing ./<name-of-script>.sh into the command line.
Another suggestion for increased anonymity, use integrated payment addresses with payment IDs as a vendor to keep track of orders. Monero doesn't tell you what address the money comes from whe you recieve it, so it can get confusing if you have many payments coming in that aren't unique amounts.
To do this in the GUI, click on Recieve, then click the "Generate" button to have your wallet randomly generate an integrated payment address and transaction ID (which you give both to buyer).
To do this in the cli, simply run the following command in the wallet: integrated_address
Many more good tutorials on using Monero here: www.monero.how
EDIT 1 Can't believe I forgot to point everyone towards /r/monero . They actually realize the DNM and embrace it as it is the perfect application of the currency. They are a great resource in learning how to use it super privately, because it is the crypto for the people who really like privacy.
EDIT 2 Fixed things a little
TFW it's OP running it.