Install RuTorrent with Docker on Rapsberry Pi

1. Flash Raspbian Lite

2. Run the following commands (through serial, SSH, or directly)

#install docker
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh

#don't need sudo to run future docker commands
#make sure to log out and back in after this!
sudo usermod -aG docker pi

#make directories
mkdir -p ~/rutorrent/conf
mkdir -p ~/rutorrent/downloads

#make a container: https://hub.docker.com/r/lsioarmhf/rutorrent/
docker create --name=rutorrent \
-v ~/rutorrent/conf:/config \
-v ~/rutorrent/downloads:/downloads \
-e PGID=`id -g` -e PUID=`id -u` \
-e TZ=America/Vancouver \
-p 80:80 -p 5000:5000 \
-p 51413:51413 -p 6881:6881/udp \
--restart unless-stopped \
lsioarmhf/rutorrent

#run the container
docker start rutorrent

Install Syncthing on Raspberry Pi Tutorial

1. Flash Raspbian Lite

2. Run the following commands (through serial, SSH, or directly)

# Add the release PGP keys:
curl -s https://syncthing.net/release-key.txt | sudo apt-key add -

# Add the "stable" channel to your APT sources:
echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

# Update and install syncthing:
sudo apt-get update
sudo apt-get install syncthing

sudo systemctl enable syncthing@pi.service
sudo systemctl start syncthing@pi.service

#make accessible over the network by replacing 127.0.0.1 to 0.0.0.0
sudo sed -i "s/127\.0\.0\.1/0.0.0.0/g" ~/.config/syncthing/config.xml

Install mitmproxy on Ubuntu 16.04 and Linux Mint 18

A simple tutorial to help install mitmproxy for debugging web applications on Linux Mint 18 / Ubuntu 16.04).

Install python 2.7 dev first (needed to avoid the error below):
$ sudo apt-get install python-dev

Now install mitmproxy
$ sudo pip install mitmproxy

Example usage with Ruby on Rails
Assuming we ran “rails server” on the default port of 3000, we can run mitmproxy on port 3001.
$ mitmproxy -p 3001 -R http://localhost:3000/

mitmproxy_request

mitmproxy_main

Error that would appear without installing python-dev:
creating build/temp.linux-x86_64-2.7/ext
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c ext/_yaml.c -o build/temp.linux-x86_64-2.7/ext/_yaml.o
ext/_yaml.c:4:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-t2Ejye/PyYAML/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-b7aU7h-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-t2Ejye/PyYAML/

Easy OpenVPN Setup Script for Debian Based OpenVZ VPS

What is OpenVPN?

OpenVPN is a reliable and well tested VPN solution that is able to run over a single port, supports compression, tunnels over NAT, and is very secure.

What does this script do?

This script will automatically install, configure, and add users to OpenVPN all in under 5 minutes, even with minimal Linux skills. The port forwarding, server configuration, and authentication setup is all taken care of for you.

Features

  • Automatic .ovpn file generation with inline certificates in a single file
  • Google DNS servers
  • Port 53 captive portal bypass server option

Continue reading

Moving my scripts over to Github

A mini news flash here, I’ve created a Github account that will be hosting all my scripts.

The first to be moved over is my automated PPTP setup script, now called ezpptp.

The LNMP (Nginx, PHP, MySQL) script has been depreciated in favor of Xeoncross’s lowendscript that I’ve contributed some patches to.

My OpenVPN setup script will soon be joining the other bunch in the near future.

Hopefully with the scripts now being hosted on Github, I’ll see some patches and commits to make them even better 😀

PPTP Debian/Ubuntu OpenVZ Setup Script

What is PPTP?

PPTP is short for Point-to-Point Tunneling Protocol, a technology for creating Virtual Private Networks (VPNs) quickly. Support is built-in to many operating systems natively, without needing an additional client, unlike OpenVPN.

What does this script do?

This script will automatically PPTP/PoPToP on your OpenVZ VPS in a few of minutes. Port forwarding, server configuration, and authentication setup is all taken care of for you.

What if I want to do it myself?

A manual installation guide is available here for those of you who want to get down and dirty: http://www.putdispenserhere.com/pptp-vpn-setup-guide-for-a-debian-openvz-vps/

How do I install it?

1. Enable PPP and make sure that your VPS has its PPP module working.

Enable PPP in SolusVM

To check, run the following command:

cat /dev/ppp

If your VPS returns this message, then your PPP module is set correctly:

cat: /dev/ppp: No such device or address

If not, then you need to enable it in SolusVM (or disable and re-enable it).

2. Copy and paste these lines into your SSH client of choice:

wget https://raw.github.com/cwaffles/ezpptp/master/ezpptp.sh
chmod +x ezpptp.sh && ./ezpptp.sh

Continue reading