Here lies several ways to communicate through different networks.
- BROWSER
1.1. GNU ICECAT
1.2. ADDONS
1.3. ABOUT CONFIG - E-MAIL
2.1. E-MAIL STORAGE FORMATS
2.2. MUTTRC - USENET
- I2P
4.1. INSTALLATION
4.2. I2PD
4.3. REMOTE ACCESS
4.4. BASIC COMMANDS
4.5. BROWSING I2P EEPSITES
4.6. YOUR OWN EEPSITE
4.7. IRC
4.8. TORRENTS
4.8.1 DOWNLOADING
4.8.2 CREATING
4.8.3 CONFIGURATION
- Download from http://ftpmirror.gnu.org/gnuzilla/
- Unpack the tarball
- As ROOT, copy and rename the folder as /opt/icecat
- ln -s /opt/icecat/icecat /usr/bin/icecat
These addons worked excellent to cover any fingerprinting, until Mozilla decided to break things since Firefox 52.
- (Cross-)Site Request, Anti-XSS, Trackers, Referer, Cookies: uMatrix
- Security Settings: Privacy Settings
- User-Agent: Random Agent Spoofer, User-Agent JS Fixer
- Plugin Enumeration: Disable plugin enum (see Mechazawa's script, and install with greasemonkey)
- Content Delivery Blocker: Decentraleyes
- URI Leak: No Resource URI Leak
- Canvas-Fingerprinting: Canvas Defender
- SSL (strict HTTPS): HTTPS by default
- URL Deobfuscator: Pure URL
- Google Redirection: Google search link fix
These tips prevent overflow your root directory or getting constantly write and delete to try and kill your drive.
- Go to about:config
- Put a 0 to everything that can write to the disk.
- Limit ram memory and also turn off syncing ect.
- Make it read only.
- If you need to save things have a seperate chroot with a seperate physical drive and make that your downloads folder.
TODO:
- Set cock.li
- Configure mutt
- Create account.
- Set mutiple accounts
- Send mail
- Send attachment
- To cancel an action in mutt hit CTRL+g
- Use notmuch
- set i2p-bote
- MAILDIR = several files
- MBOX = one file for everything
Example config with cock.li and gmail. Not quite complete but can work if tweaked.
#---------------------------------------
# ~/.mutt/muttrc settings mutt 1.5.20
#---------------------------------------
#
#---------------------------------------
# One-Time Previous Steps
#---------------------------------------
# Generate keys with proper user
# $ gpg --gen-key
#
# Make proper directory with file:
# $ mkdir ~/.mutt && touch ~/.mutt/.passwd
#
# Put the following inside ~/.mutt/.passwd:
# set cock_pass="password"
# set gmail_pass="password"
#
# Encrypt with proper user:
# $ gpg -r USER1 -e ~/.mutt/.passwd
# $ shred ~/.mutt/.passwd
# $ rm -f ~/.mutt/.passwd
#
#---------------------------------------
# Process the password file first (the "|" pipes to Mutt)
#---------------------------------------
#source "gpg -d ~/.mutt/.passwd.gpg |"
#
#---------------------------------------
# Account Hooks
#---------------------------------------
account-hook . 'unset imap_user imap_pass' # unset first!
account-hook 'imaps://mail.cock.li:993/' "\
set [email protected] imap_pass=`cat ~/.mutt/.cock ` " # imap_pass=$my_cock_pass "
#account-hook 'imaps://[email protected]/' "\
# set imap_user=USER2 imap_pass=$my_gmail_pass "
#
#----------------------------------------
# Folders, mailboxes and folder hooks
#----------------------------------------
#
# Setup for USER1:
#----------------------------------------
set folder = imaps://mail.cock.li:993/
mailboxes =Inbox =Sent =Junk =Trash
folder-hook 'imaps://mail.cock.li:993' " \
set folder=imaps://mail.cock.li:993/ \
record=+Sent \
smtp_url=smtps://[email protected]:465 \
signature=~/.mutt/USER1.sig \
from='USER1 <[email protected]> ' \
realname='USER1' "
#
#----------------------------------------
# Setup for USER2:
#----------------------------------------
#set folder="imaps://[email protected]/"
#mailboxes =INBOX =[Gmail]/Drafts =[Gmail]/'Sent Mail' =[Gmail]/Spam
#folder-hook 'imaps://[email protected]' " \
# set folder=imaps://[email protected]/ \
# postponed=+[Gmail]/Drafts \
# record=+[Gmail]/'Sent Mail' \
# smtp_url=smtps://[email protected] \
# smtp_pass=$my_gmail_pass \
# signature=~/.mutt/USER2.sig \
# from='USER2 <[email protected]> ' \
# realname='USER2' "
#
#----------------------------------------
# Macros to make life easier
#----------------------------------------
macro index <esc>1 "y1<return><return>" # ESC+1 takes to first INBOX
#macro index <esc>2 "y5<return><return>" # ESC+2 takes to the second
#
#---------------------------------------
# Mail-check preferences
#---------------------------------------
set timeout=60 #Check for mail every minute
set mail_check=5
#
#---------------------------------------
# Set preferred editor
#---------------------------------------
set editor='vim + -c "set textwidth=72" -c "set wrap" -c "set nocp" -c "?^$"'
# EOF
The software used is slrn ( with slrnpull and + slrnface).
-
- Create slrn.rc:
set username "desired_username"
set hostname "desired_hostname.invalid"
set replyto "some_name <[email protected]>"
charset display utf8
charset outgoing utf8
setkey group "set_prefix_argument(4); () = select_group();" " "
-
- Set $NNTPSERVER to usenet provider (set in config file):
NNTPSERVER='server_name' && export NNTPSERVER
- Set $NNTPSERVER to usenet provider (set in config file):
-
- Set $EDITOR to preferred text editor (set in slrn.rc file):
set editor_command "vim '+set tw=72' +%d '%s'"
- Set $EDITOR to preferred text editor (set in slrn.rc file):
-
- Create .jnewsrc
touch .jnewsrc
- Create .jnewsrc
-
- Create configuration
slrn --create
- Create configuration
-
- Download a list of newsgroups
slrn -d
- Download a list of newsgroups
I2P is a darknet like Tor but with more services like e-mail, IRC, torrents, and others. Once you install it you can configure it by its web interface at http://localhost:7657/home.
-
Make directory that will contain I2P
mkdir ~/.i2p
-
Go to directory
cd ~/.i2p
-
Download (replace with the newest version)
wget -c https://download.i2p2.de/releases/<VERSION>/i2pinstall_<VERSION>.jar
-
Run the installer (and select options like the current path)
java -jar i2pinstall_<VERSION>.jar -console
To uninstall simply delete the directory.
I2PD is a version of I2P based on C++ instead of Java. Currently with limited support (no torrents). Therefore is OPTIONAL and its funtion is separated from the rest of the guide.
- Dependencies:
libboost
cmake
make
- Download.
git clone https://github.com/PurpleI2P/i2pd.git
- Go to directory.
cd i2pd/build
- Build.
cmake
make
- Install
mkdir $HOME/.i2pd
cp i2pd $HOME/.i2pd
cp -R contrib/certificates $HOME/.i2pd
cp contrib/i2pd.conf $HOME/.i2pd
cd $HOME/.i2pd
ulimit -n 4096 # optional file limit
- To run:
cd $HOME/.i2pd
./i2pd --datadir .
- To stop:
kill -INT $( cat /var/run/i2pd/i2pd.pid )
To access your I2P router from another computer.
- On ~/.i2p/clients.config replace
clientApp.0.args=7657 ::1,127.0.0.1 ./webapps/
- with
clientApp.0.args=7657 ::1,127.0.0.1,<REMOTE_IP> ./webapps/
- where <REMOTE_IP> is the IP of the computer running I2P.
- Restart I2P.
-
See status
~/.i2p/i2prouter status
-
Start
~/.i2p/i2prouter start
-
Stop
~/.i2p/i2prouter stop
-
Stop nicely
~/.i2p/i2prouter graceful
-
NOTE: In case you get an error, instead of all the above commands, you'll be able to start I2P using the next:
~/.i2p/runplain.sh
You can stop the program from inside the web interface.
Configuration to browse I2P eepsites. To be used with GNU IceCat. Make sure your list of peers is seeded on the web interface configuration page. Address Book is a list of eepsites.
OPTION A
- Go to "Preferences -> Advanced -> Network -> Connection (Settings)".
- Check "Manual proxy configuration".
- Fill with the address:
127.0.0.1 and port 4444 for HTTP
127.0.0.1 and port 4445 for HTTPS
127.0.0.1 and port 4444 for FTP
- In the "No proxy for" add:
localhost, 127.0.0.1
- Mark "Proxy DNS when using SOCKS".
OPTION B
- Download FoxyProxy.
- Click on the FoxyProxy icon.
- Click on "Add New Proxy".
- On the "General" tab add I2P as the name.
- Go to "Proxy Details" tab.
- In "Host or IP Address" field add 127.0.0.1.
- In the "Port" field 4444.
- Click on the "URL Patterns" tab.
- In the "Pattern Name" field add as I2P.
- In the "URL pattern" field enter *.i2p*.
- Click "OK".
- Right click on the FoxyProxy icon.
- Select "Use proxies baed on their predefined patterns".
-
Your own eepsite is already active but invisible, the directory is located at:
~/.i2p/eepsite/docroot/
-
The I2P Tunnel Manager contains the setting of your eepsite.
-
Add the I2P network
/server add -network i2p localhost 6668
-
Connect
/connect i2p
-
Save configuration
/save
-
From now on, to connect simply type
/connect i2p
Normal torrents and i2p torrents are used with different clients. Can't use a regular torrent from a normal tracker.
- Visit a tracker like http://tracker2.postman.i2p and search for the torrent.
OPTION A:
- Place your mouse cursor over the magnet icon, right click to disply the menu and click “Copy Link Location".
- Go to i2psnark in browser (http://localhost:7657/i2psnark/).
- Paste the magnet URL on the field "From URL"
- Start the torrent.
OPTION B:
- Download the .torrent file.
- Move torrent file it to destination ~/.i2p/i2psnark/.
- Go to i2psnark in browser or refresh page (http://localhost:7657/i2psnark/).
- Start the torrent
- Place data in i2psnark directory.
mv <TORRENT_DATA> ~/.i2p/i2psnark/
- Go to i2psnark in browser or refresh page (http://localhost:7657/i2psnark/).
- Fill in the fields.
Data to seed: ~/.i2p/i2psnark/<TORRENT_DATA>
Tracker: <SELECT_TRACKER>
- Create torrent by clicking on "Create Torrent".
- Start the torrent.
To automatically start torrents once they are added:
- Go to “Configuration”.
- Select “Auto start”.
- Select “Save configuration”.
To change more settings, like download destination for example:
- Edit configuration file.
vi ~/.i2p/i2psnark.config.d/i2psnark.config
- Change field ("i2psnark.dir").
i2psnark.dir=<DOWNLOAD_DIRECTORY>