Online Safety - Image of Eye

Tips & Tools for online Anonymity.

Tips

Unfortunately the Internet is not what it used to be. Privacy and anonymity are huge concerns with the majority of Internet users these days. If it's not your ISP tracking you then it's Google, Facebook or Twitter. Literally any service, mobile app or website you use can and probably is spying on you. Everything you do online (or off in some cases) leaves a footprint, no exceptions!

But don't panic. I'm here to give you some basic tips and the tools you need to help you stay anonymous while accessing the Internet.

  • Install a VPN client and use it when you want to keep your internet activity private from your ISP.
  • Register yourself a ProtonMail email address. Free, encrypted, secure, anonymous email.
  • Consider using the Tor browser instead of your regular browser for added anonymity and privacy.
  • If you're tech savvy and fancy a challenge, give QubesOS a try. It's the operating system Edward (Ex CIA) Snowden recommends.
  • Use a fake name when registering with websites like this one and pick a username that isn't too obvious.
  • Trust nobody. Don't share personal information with others, no matter how nice or honest they seem.

You are never 100% anonymous on the Internet. You'll always leave some trace or clue somewhere for someone with the right resources and skills to follow. The best you can do is try and keep up with the latest privacy and anonymity technology.

Tools

ProtonVPN: You can download and use the service for free. Giving you a limited but very secure connection when needed. Use it when accessing public networks or checking your ProtonMail etc. A Virtual Private Network lets you connect to external websites and other cloud services via a secure (tunnelled) connection. Anyone trying to intercept the traffic between your computer and the destination server/service, will only see encrypted data.

ProtonMail: Simply put, it's email with encryption built-in. You can register and use it anonymously, which makes it a great choice for whistle blowers, freelance journalists and hacktivists alike. Your inbox, sent items, drafts folders etc are all encrypted and can only be accessed with your decryption key, meaning that even if someone hacked your account, without the encryption key, they will just see lots of encrypted text. The only drawback to encrypted email in my experience, is that both you and your recipient must be using an encrypted email service for it to be secure. Alternatives to ProtonMail are: Tutanota (Generous 1GB inbox, more than ProtonMails) and StartMail (No FREE accounts).

Tor: Tor offers you both the ability to browse the Surface Web and Deep Web anonymously, and even host your own hidden (website) service. The Surface Web is anything that can be indexed by regular search engines like Google. The Deep Web websites are those sites that can only be accessed if you know the server IP or private domain name (search engines are oblivious to their existence), Tor is also used to access .onion websites, the Darknet (slightly deeper and more hyped than the Deep Web). I highly recommend using Tor for all your browsing.

Qubes OS: Qubes is a Linux operating distro built with anonymity and privacy in mind. In short, Qubes OS can be configured to run apps in isolated areas of memory, called Qubes. You can even set up your email client to create single-use disposable Qube for opening attachments. Which means, isolating any potential security risks to that single Qube, firewalling it off from the rest of the system.

Other websites worth checking out:

https://www.privacytools.io/: Encryption against global mass surveillance.

Laptop Notepad Phone

My Favourite Websites and Software

Hosting, Domain Names


Cloudflare.com: Fast, secure CDN and much more. Get started for FREE.

Vultr.com: VPS Hosting, Dedicated Cloud, Block Storage and Bare Metal.

Crazydomains.co.uk: Cheap domain names.

Freenom.com: FREE domain name provider (paid services also available).

WordPress.org: Open-source content management system.

WinNMP: Nginx, MariaDB, Redis, PHP development stack for Windows.

WampServer: Apache, MySQL, PHP development stack for Windows.

Mail-in-a-Box: Easy-to-deploy email server, free and open-source.

Pleroma: Open-source federated alternative to Twitter.

PeerTube: Open-source federated alternative to YouTube.

Developing, Coding, Creative..


Getbootstrap.com: The worlds most popular HTML, CSS and JS library.

FontAwesome.io: Iconic font and CSS toolkit.

JQueryForm.com: Professional web form builder, mobile-friendly.

Oracle VM VirtualBox: Cross-platform virtualization software.

Visual Studio Code: Free open-source code editor. Lots of extensions.

Notepad ++: Free source code editor and notepad. Excellent features.

try.dot.net: Compile and run C# from your browser.

asciinema: Record and share your terminal sessions, the right way.

Gitlab: Open-source alternative to Github.

Pro Git: Free e-book. Everything you need to learn Git.

Google.ai: Learn with Google AI.

GIMP: Open-source image editor.

Inkscape.org: Professional vector graphics editor.

OpenShot.org: Award winning open-source video editor.

Blender.org: Open-source 3D creation suite.

Godot Engine: MIT Licensed game development engine.

OpenToonz: Open-source animation production software.

Audacity: Open-source cross-platform audio software.

Online Security and Anonymity


1dot1dot1dot1: FREE Anonymous DNS. Fast, private and secure.

haveibeenpwned.com: Get notified if your password is pwned.

TorProject.org: Improve your privacy and security online.

Startpage.com: The worlds most private search engine.

ProtonMail.com: Secure email based in Switzerland.

ProtonVPN.com: Secure and Free to Premium VPN Service.

Qubes-OS.org: A security-oriented operating system (OS).

Letsencrypt.org: Free SSL/TLS certificates. See also: Certbot.

Bitwarden.com: FREE Open Source Password Manager.

Signal: Secure, private open-source alternative to WhatsApp.

File Sharing and Online Storage


Mega.nz: 50 GB free. Secure storage and messaging.

OnionShare.org: Securely and anonymously share files.

FireFox Send: Share files up to 2.5GB. Simple and Private.

Software Apps and Tools (General)


FreeFileSync.org: Open source file synchronisation.

Rufus.ie: Create bootable USB drives the easy way.

Piriform.com: The home of CCleaner, Speccy, Defraggler and Recuva.

PuTTY: SSH client for Windows. See also: Win10 OpenSSH.

FileZilla: Free FTP client with plenty of features.

LibreOffice: Free office suite (open source alternative to MS Office).

Mozilla Thunderbird: Customisable feature rich email client.

VLC Media Player: Open source cross-platform multimedia player.

Other...


nomoreransom.org: The no more ransomware project.

GameServerManagers.com: Linux Game Servers Management made easy.

GiffGaff.com: Get free calls and texts to your mates on GiffGaff.

Crontab Generator: A great tool for generating crontab values.

BASH

Linux Command Cheatsheet

Keyboard Shortcuts:

Ctrl + alt + t #Opens a new terminal window.
Ctrl + c #Halts the current command.
Ctrl + d #Log out of session. Same as typing exit
Ctrl + w #Delete one word on the current line.
Ctrl + u #Delete the entire line.
!! #Repeat previous command.


Process Management:

ps #Display active processes.
top #Display all running processes.
kill pid #Kills process id pid
killall proc #Kills all processes named proc


System Information:

man command #Shows the manual page for command.
date #Show current date and time.
uptime #Shows the current system uptime.
whoami #Who are you logged in as.
uname -a #Display kernal information.
lsb_release -a #Display Linux version
df #Show disk usage.
du #Show directory space usage.
free #Shows memory and swap usage.
whereis appname #Lists possible locations for appname
which app #Displays which app will be run by default.
cat /proc/cpuinfo #CPU information.
cat /proc/meminfo #Memory information.


Network Related:

ping client #Pings server client cancelled.
whois domain #Gets the whois record for domain.
dig domain #Returns DNS record for domain.
nslookup domain #Same as dig
tracepath domain/ip #Lists hops to domain/ip
traceroute domain/ip #Same as tracepath
wget http://url/file #Downloads file.
wget -c http://url/file #Continue a stopped download.


TCPDUMP:

tcpdump -i eth0 #Sniff packets on Ethernet port.

tcpdump switches:
i (Lower Case I) #Interface to sniff.
n #Shows IP and ports instead of hostname.
v #Verbose, could be used up to 3 times.
w file #Sends captured packets to file.

tcpdump expressions:
dst #Traffic destination, could be combined with port or net.
src #Traffic origin, could be combined with port or net.
port (number) #Specific port for packet capture.
portrange #Range of ports to sniff
net #Network to sniff
and #To concatenate (src 10.10.10.10 and dst 10.10.10.11)
or #Record, If either conditions are met (dst port 80 or dst port 443)


FTP:

ftp ftp.server.com #Opens an FTP connection to ftp.server.com
put #Upload a file.
mput #Upload several files (interactive by default).
get #Download a file.
mget #Download several files (interactive by default).
prompt #Disable the interactive option of mput/mget.
cd #Move to a directory.


Permissions:

chmod 744 file #Read, write and execute for all.
chmod 755 file #Owner rwx, group and world rx only.
chmod 744 -R /folder #Change all files and folder permissions recursively.
chown -R username:group /folder #Sets owner and group for this folder.

Learn more about Linux file permissions in this article.


Input and Output:

cmd1 | cmd2 #Use the result of cmd1 as input for cmd2 (PIPE).
echo hello > file #Save output to file (Will overwrite if file exists).
echo goodbye >> file #Append output to file
cmd1 < file #Return file contents as input for cmd1
cmd1 & #Execute cmd1 in the background.
cmd1 && cmd2 #Execute if both cmd1 AND cmd2 return true.
cmd1 || cmd2 #Execute cmd2 only if cmd1 returns false (nonzero).


SSH:

ssh-keygen -t rsa -b 4096 #Generate key pairs for user.
ssh [email protected] #Connect to server as user
ssh -p (port) [email protected] #Connect to server on port as user
ssh-copy-id [email protected] #Add your key to server


SCP:

scp file [email protected]:/path/file #Copy local file to remote server.
scp [email protected]:/path/file . #Copy file from server to local host.
scp -r /path/dir/ [email protected]:/dir/ #Copy local dir to remote server.
scp -r [email protected]:/dir/ . #Copy dir from remote server to local host.


Compression:

tar cf file.tar files #Create a tar file named file.tar containing files
tar xf file.tar #Extract the files from file.tar
tar czf file.tar.gz files #Creates a tar file with Gzip compression.
tar xzf file.tar.gz #Extract a tar file using Gzip.
gzip file #Compresses file and renames it file.gz
gzip -d file.gz #Decompresses file.gz back to file


User Management:

adduser user #Simplest way to add a user with prompts.
useradd -d /home/user -m user #Add a user without prompts.
passwd user #Set password for user.

Additional options for useradd:
-a #append
-m #Create home folder
-d #Path to home folder
-s #Shell for the user
-c #Comments for the user
-U #Create group with user
-G #Specify other groups for the user
-e (expiry date) #Date format YYYY-MM-DD
chage -M (days) user #Set password expiration for that user

Learn more about user management in this article.


File and Directory Commands:

ls -al #Formatted directory listing, including hidden files.
pwd #Shows the current directory you\'re in.
cd - #Switch to previous directory.
cd ~ #Changes to your home directory.
mkdir dir #Creates a directory called dir
rm -r dir #Deletes the directory called dir
rm file #Deletes file
rm -f file #Force removes file
rm -rf dir #Force delete directory dir
cp -r dir1 dir2 #Copy dir1 to dir2 , creates dir2 if necessary.
cp file1 file2 #Copy file1 to file2
mv file1 file2 #Rename file1 to file2. Or move file1 into file2 if directory.
touch file #Creates or updates file
more file #Print file contents to screen.
head file #Print first 10 lines of file to screen.
tail file #Print the last 10 lines of file to screen.
tail +0f file #Display file contents live


Searching:

grep pattern files #Search files for pattern.
grep -r pattern dir #Recursively search for pattern in dir.
locate file #Search for all instances of file


VIM:

i #Insert mode
esc #Exit back to normal mode
: (Colon) #Command mode

Command mode:
q #Exit (warns if changes made without saving).
q! #Exit without saving changes.
w #Save current changes and continue.
x #Save changes and exit.
/pattern #Search for text pattern
UP ARROW (key) #Shows last command used, same as bash.
split #Divides the screen

Normal mode:
n #Cycles through each instance of search pattern (top to bottom).
d #Delete and copy the line.
x #Delete what is under the cursor.
p (lower case) #Paste after cursor.
P (upper case) #Paste before cursor.
u #Undo last action or command.
ctrl+r #Redo last action or command.
h #Move cursor left.
j #Move cursor down.
k #Move cursor up.
l (Lower case L) #Move cursor right.
0 (Zero) #Jump to first character of the line.
^ (Circumflex) #Jump to first non white character of the line.
$ #Jump to last character of the line.


Installation:

Install from source files:
./configure
make
make install

dpkg -i package.deb #Install from Debian package
rpm -Uvh package.rpm #Install from RPM package